Since the documentation about the 4.5 clustering and caching configuration is on the thin side I thought I'll post these here in case someone has more info about the subject.
The documentation pretty much says this: You must run a cache server on a separate machine and connect all cluster nodes to it. There isn't really any further explanation why this is the way to go. It is also possible to create a cluster of cache servers (just specify multiple servers in CACHE_ADDRESSES) but there is no information about the pros and cons of running such configuration.
So why does the cache server need to run on its own separate system ? Presumably this has something to do with CPU usage but with modern multi-core processors I would think network latency between two systems becomes a bigger performance issue than CPU contention. Or are there other reasons why the cache server should be separate from the application servers ?
Apart from the benefit of fault tolerance when running a cluster of cache servers are there other factors that count on the decision whether to run just one or multiple cache servers ? How does the number of cache servers affect things ? The docs mention that you should run either one or three caches but I miss the reasoning behind those numbers.
Think of a scenario where we have been running ClearSpace (2.5) and SBS (4.0) quite happily in a configuration with 2 identical application servers configured as a cluster. With 4.5 do we now need to add a third system just to run the cache or would it be just fine to run the cache servers on the existing application servers while still keeping the configuration of those identical for redundancy purposes ?