Garry Tan, cofounder of Posterous, lists 12 lessons for scaling that apply to more than just Rails.
Use cloud storage for static files.
Use HTTP Cache Control to tell the browser what it can cache.
Use Sphinx for text search.
Use InnoDB for more crash resistant and faster writes.
Don't use textbook Rails ActiveRecord objects. Use New Relic to find exactly what is slow in your system.
Use memcache later so you find your database bottlenecks now.
Use mongrel proctitle to find your slow queries. You are only as fast as your slowest queries.
Use asynchronous job queuing to do work in parallel.
Use monitoring so you'll know when your site went down and why.
Learn by reading the source code, fixing problems, and submitting them back to the community.
Use new plugins. Old plugins can't be trusted.
Use new information. Old information can't be trusted.
Use HTTP Cache Control to tell the browser what it can cache.
Use Sphinx for text search.
Use InnoDB for more crash resistant and faster writes.
Don't use textbook Rails ActiveRecord objects. Use New Relic to find exactly what is slow in your system.
Use memcache later so you find your database bottlenecks now.
Use mongrel proctitle to find your slow queries. You are only as fast as your slowest queries.
Use asynchronous job queuing to do work in parallel.
Use monitoring so you'll know when your site went down and why.
Learn by reading the source code, fixing problems, and submitting them back to the community.
Use new plugins. Old plugins can't be trusted.
Use new information. Old information can't be trusted.