nginx
Caching Made Easy Part 2: Pass The Stack
Part I of our Memcached Series explored the concept of using memcached to cache entire pages. In Part II we further increase the responsiveness of your application by finding and removing unnecessary steps. By caching in memcached we are already bypassing an unholy amount of database queries and foreach() loops, not to mention all the unnecessary application logic to decide if a user can view the page or not.