Login Barrapunto
Twitter sigue migrando sistemas de Ruby a Java
reidrac nos cuenta «A principio de este mes Twitter anunciaba mejoras en su sistema de búsquedas, pasando de MySQL a Lucene y de Ruby on Rails a Java con Netty.En su anuncio explican las limitaciones que tenía su servicio en RoR, y cómo el uso de Netty les ha permitido mejorar los resultados y estar más preparados para introducir nuevas funcionalidades. Twitter ya abandonó Ruby en el backend para usar Scala (un lenguaje que corre en la JVM y es compatible con otros programas en Java), aunque por aquel entonces hablaban de "complementar Ruby con Scala", así que esto se puede ver como un paso más en su abandono de Ruby.No sé si se trata de mala publicidad para RoR (igual que Twitter era positivo cuando era un caso de éxito), o simplemente el equipo de desarollo de Twitter ha cambiado en el tiempo y ahora su experiencia está más con Java».

antes de crucificar a Rails
(Puntos:1)( http://leandro.org/ | Última bitácora: Viernes, 14 Julio de 2006, 10:26h )
Re:antes de crucificar a Rails
(Puntos:4, Interesante)( Última bitácora: Martes, 18 Diciembre de 2007, 16:58h )
de toda la vida la mejor solución es la mejor adaptada. nada sorprendente en esto.
el cambio no lo veo como una deficiencia en Rails, sino como que simplemente han hecho su trabajo y ahora tienen algo más adecuado y menos genérico.
Dave, this conversation can serve no purpose anymore. Goodbye.
Es un cambio de arquitectura
(Puntos:1, Inspirado)No creo que RoR tenga deficiencias
(Puntos:2)( http://guslibu.awardspace.com/ | Última bitácora: Viernes, 18 Marzo de 2011, 08:29h )
Re:Me parece normal
(Puntos:1)( http://barrapunto.com/ | Última bitácora: Viernes, 08 Abril de 2011, 12:00h )
Por otro lado, tambien tienes Solr, que, dicho rapido y mal, es un wrapper alrededor de Lucene para servir peticiones por http con su respectivo gem en ruby (solr-ruby) y sirve en diferentes formatos (xml, json, php y hasta en ruby [apache.org]).
Tampoco has tenido en cuenta de que el cambio a java introduce un monton de riesgos (donde estan los seguidores de Joel diciendo eso de "no lo reescribas!"), estan re-escribiendo esa parte de la aplicacion desde cero y eso puede causar un monton de problemas inesperados (nuevos bugs, reaparicion de bugs antiguos que se solucionaron en su momento...). Supongo (porque seria de locos pensar lo contrario) que cuando se plantearon pasar a java lo hicieron con mucho cuidado y pensandoselo muy mucho. Quiero pensar que la gente capaz de diseniar algo que soporte ese nivel de carga tambien sera consciente de esos riesgos y lo planeara al detalle.
En resumen, hay *algo* en ruby que hace que no cumpla sus expectativas/necesidades (sea rendimiento del parser/maquina virtual/lo que usen, facilidad para implementar las modificaciones, soporte de librerias... lo que sea, no conozco tanto ruby RoR como para saber que pudiera ser) pero por los resultados que comentan, java si que les ha servido (como muchos otros lenguajes, seguramente).
PD: Tambien hay ports de Lucene a C y a otros lenguajes, asi que me hace pensar que la opcion de java tambien esta bien meditada.
Dale fuego a un hombre y estara caliente un dia, prendele fuego y estara caliente el resto de su vida.