Lynch Consulting has an interesting project going on: a centralized caching solution for ColdFusion servers using the open-source project memcached. It, along with the comments that follow the article, provide a good discussion of the pros and cons of using a centralized server in multi-server environments.
The pros of using a central caching server?
- A centralized solution provides centralized control, allowing you to clear a single item from the cache or flush the entire cache quickly.
- Easier updating. Your changes hit all of your servers at once.
- Reduced memory and disk space requirements for web servers, less wasted resources.
The pros of using a distributed system? (e.g. each server caches it's own content)
- Distributed systems provide better scalability.
- No single point of failure.
- Localized caches provides better performance.
And the cons of the distributed approach?
- Higher resource requirements for servers.
- Tricker to synchronize updates and changes.
- Can cause you to be conservative in cache timeout periods.
All in all, there's a lot to consider before implementing either one. But this project is definitely worth tracking.
I also think the idea of specialized application servers for ColdFusion has merit. In fact, I can think of two or three right now. How about you?
Comments