[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [SAGE] number of eggs in a basket
David Parter wrote:
> I am not sure why you think that
> "distributing the services to several machines seems to complicate
> things and increase the likeliness of one of the services failing."
> [...]
> 2) the basic server platform is unstable, and the OS crashes and/or
> hardware failures are likely, so with more than one server, there is
> an increased likelyhood of crashes
Any system goes down from time to time, whether planned or not,
due to hardware/software/power upgrades/failures/etc. If you
distribute 10 services across 10 servers instead of one, it is 10
times more likely that some sort of hardware or system software
problem will take out a service. The clients will therefore see
more outages overall. Of course, with modern computers, that
probability for a single system is very small; but it may go
from negligible to measurable when multiplied by 10 or more.
The trick is to lessen the impact of such service outages. The
balancing point may be whether the service is a critical one
(i.e. if it's down, the clients are dead in the water too). If you
have more than one such service, putting them all on a single
more reliable server may make sense, to minimize the number of
critical failures. You can then distribute the less critical ones
on separate systems for management flexibility.
Interdependencies can actually be reduced by separating services.
E.g. if you have two service packages that depend on some other
utility (shall we say, perl), and upgrading one service requires
upgrading the utility, then putting both services on the same
server may force you to upgrade them in tandem - something that is
usually preferable to avoid if it isn't fundamentally necessary.
There are any number of valid shades of grey in the answers to
this question of centralized vs decentralized services, and they
evolve because they depend on many factors.
Ruth Milner