摘要: 本文总结了构建流行的Rails应用程序的一些基本功能元素,这些元素在构建Posterous时通过艰难的方式学习得到。主要内容包括:使用S3进行静态存储、HTTP缓存控制、全文搜索引擎(如Sphinx或Solr)、选择合适的存储引擎(如InnoDB)、使用query_reviewer和New Relic优化数据库查询、引入Memcache提高性能、使用mongrel proctitle监控长时间运行的请求、使用Workling或Delayed Job处理离线任务队列、监控网站运行状态和资源使用情况、阅读源代码并更新插件以及注意避免使用过时的代码和插件。
讨论: 该内容主要围绕Web开发中的性能优化和最佳实践展开。作者们讨论了使用Sphinx和Solr/Lucene进行全文搜索的优缺点,强调了数据库优化在性能提升中的重要性,并提到了如何通过索引、内存优化和缓存来提高数据库性能。同时,讨论了Rails框架的可扩展性问题,指出数据库是影响网站可扩展性的关键因素,并建议使用master/slave、memcached和分片等技术来解决问题。此外,还提到了使用HAProxy作为负载均衡器的重要性,以及HTTP缓存控制、网页加载优化等Web性能提升的策略。
原文标题:Building and Scaling a Startup on Rails: Things We Learned the Hard Way (by Posterous S08)
原文链接:http://axonflux.com/building-and-scaling-a-startup
讨论链接:https://news.ycombinator.com/item?id=491004