Twitter 从Ruby的Rails移植到Java
Ruby成熟应用曾经以Twitter为骄傲,Twitter曾经一度前台使用Ruby,后台使用Java,可随着系统规模扩展,Twitter决定放弃RoR,早在2008到2009年,他们就开始将后台消息系统从Ruby移植到Scala(被认为一种Java平台),现在是时候将他们的前台也移植到Java了。
他们已经建立了一个可伸缩平台叫Blender,是使用Java NIO,基于Netty,可以非常有效地处理很繁重的访问负载,使用基于Java的Lucene搜索引擎替代MySQL,创建一个后台并行执行服务引擎,这些做完以后,在搜索上有3倍延迟提高,每台机器处理能力可以扩展到10倍或更多请求。
这是一个悄悄行动,是否意味着Java比Rails是一个更好的平台,特别是对于可伸缩性要求比较高的情况?即使这样,在简单场景,RoR要比Java来得轻量性能好。
Twitter已经雇佣25名新雇员,Java代码实践下来要比Ruby代码更加易于维护,或者这个时候他们真的开始更多考虑系统的可维护性,当然RoR对于小系统小开发队伍,还是无懈可击的冠军。
Twitter moves from Rails to Java | Ganesh
[该贴被admin于2011-04-14 15:43修改过]