Application performance has always been one of the pain points when developing with Drupal, and there are many reasons for this. For example, PHP is not the fastest language out there. Many beginner Drupal developers fall prey to the multitude of modules available and go a bit overboard with enabling more than needed. And indeed, the Drupal architecture is simply not the most performant. In its defense though, a very complex architecture that does a lot out of the box will have some speed trade-offs.
One critical component in this game, however, is caching. For those of you not familiar with this term, caching is the application strategy of storing copies of processed code (or anything that results from it) in view of delivering it to the user more quickly when requested subsequent times. For example, when you go to a website, your browser will most likely cache (store...