Ruby社区应该去Rails化了
最近半年关于Ruby编程语言最负面的两条新闻莫过于2012年10月的报导:Linkedin从ruby迁移到node.js,30台服务器减到3台,以及2013年3月的报导:Iron.io从ruby迁移到Go,30台服务器减到2台
node.js和Go都是最近两年服务器端高并发编程的热门语言,Linkedin和Iron.io抛弃Ruby迁移之后,都获得10倍以上的系统性能提升,效果非常好。当然这两篇新闻报导引发的争议也非常大,最大的争议在于:原有Ruby编写的应用是随着业务经过长时间代码演化而成的,代码可维护性和架构都已经存在严重的问题,即使沿用Ruby on rails重写,也会获得巨大的性能提升,非编程语言迁移之功。
诚然,继续沿用Ruby on rails重写或者重构应用,性能可能会有一两倍的提升,但无法弥合10倍以上的性能差距,难道说ruby真的如此不堪吗?注定要被node.js或者Go所取代吗?
JGW Maxwell在2011年底做了一个Ruby Web框架的并发处理能力测试,还做了node.js的对比测试。用250个并发去做压力测试,后端使用MongoDB数据库,总共跑完10万个请求,测试结果如下: