A distributed computing environment includes a client platform, plurality
server platforms, plural applications distributed amongst the plural
server platforms, a messaging system, a plurality of data files and a
load balancing and failover software application. Maintained in the data
file for each application is a list of each instance of the application,
where it resides and a pre-determined time span assigned thereto. The
time spans maintained in the data file are arranged in a self-repeating
sequence, collectively comprise a first unit of time and respectively
encompass a contiguous range of values for a second unit of time. For
each message to be delivered to a distributed application, the load
balancing and failover software application selects the server platform
to receive the message. The load balancing and failover software
application then determines if the selected server platform has failed
and, if so, selects a substitute server platform.