Para aprender hay que leer (y practicar lo leído), eso está claro. Por ello siempre es interesante ver artículos que comentan las arquitecturas de sistemas grandes y populares. Como este, donde comentan la arquitectura de LinkedIn.
Para empezar destaco el uso de Java como lenguaje de desarrollo. Mucha gente pone en duda que Java sea adecuado para estos proyectos, y usan (normalmente) php. Supongo que LinkedIn es la muestra de que Java es totalmente usable.
También a destacar la separación de los diferentes servicios, que funcionan de forma totalmente independiente (escalan también de forma independiente) y la red de nodos en memoria, donde las operaciones relativas a la red social se pueden ejecutar de forma más eficiente que si lo hiciéramos sobre la base de datos (como comentan aquí). Usan “Copy-on-Write” para evitar problemas de commit.
Sobre las herramientas, el uso de HTMLUnit y EasyMock son fundamentales debido a su metodología “Test Driven”, donde los tests unitarios se convierten en parte fundamental del proceso de desarrollo.
2 Responses
Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.
easymock es increible para unit testing, te olvidas de todo lo que no te interesa probar, como conexiones con BD’s, contenedores… tienes un test funcional ejecutado en milésimas!
Si, EasyMock es muy util, especialmente can la extension para clases… !Y HtmlUnit es genial!