在ruby on rails(http://www.maiziedu.com/course/ruby-px/)中,很多rails程序员会经常忘记考虑性能问题,这会导致网站速度下降,内存占用剧增,Apache频频重启,所以这时就需要进行rails性能优化。具体的优化内容如下:
1,使用Unicorn或者Thin服务器替代默认的webrick。
2,静态资源压缩合并,放到云存储上。
3,同时可以使用rails的Turbolinks,使用js替换title和body,但也带来了js逻辑的变化。
4,Active Record Associations预加载,includes或者preload,避免n+1问题
5,缓存。页面缓存、方法缓存以及俄罗斯套娃。
一,前端优化
1,asset pipeline:合并压缩静态文件
2,Turbolinks:利用浏览器的PushState和ajax,得到响应时替换掉body和title元素。这样不需要重新加载执行css文件和js文件,同时也增加了页面的复杂度。
3,静态文件镜像存储:将静态文件存储在第三方中,比如七牛之类的云存储,利用第三方的速度优势,同时也减少了自己服务器的压力。
4,增加并发请求数:多域名加速访问,以及减少携带不必要的cookie。
二,服务器优化。
1,替换默认的webrick。