Slides from my talk at RubyConf India 2012. This is a case in point for a highly productive & scalable enterprise application development platform with JRuby on Rails.
When we started to architect an enterprise micro-blogging solution as part of the internal collaboration platform for a large customer (henceforth referred by dummy name 'CustCollab'), the next immediate question was “Which web application development framework to use?”. Simplicity, productivity, ability to deliver high quality of service (QoS), especially performance & scalability, & alignment with CustCollab's technology stack were our top criteria for framework selection. After considerable research on state-of-the-art, we zeroed in on 2 frameworks – 1) “Ruby on Rails” (RoR) for its super simplicity & productivity & 2) “Java Enterprise Edition” (JEE) for its obvious “enterprise” class, high QoS & greater alignment with CustCollab's technology stack. But we just couldn't rule out either one, since each framework had been proven to deliver qualities not so proven in the other framework. Naturally, we started dreaming of a framework which can deliver best of both worlds! And in reality, there lived such a framework – 'JRuby on Rails'!
In this talk I will focus more on our experience of how JRuby, & hence JRoR, has done a fantastic job of delivering best of RoR & JEE worlds to an enterprise application w.r.t multiple 'quality of service' attributes like scalability (parallel processing, Garbage Collection, compilation, caching, advanced database connection pooling etc.), productivity, extensibility, security (especially CSRF), session management, reusability, total cost of ownership (alignment with existing/preferred technology stack) etc.
With the help of the real world 'CustCollab Micro-blogging' case in point, this presentation demonstrates how the distant, isolated worlds of RoR & JEE can synergize with the help of the JRuby bridge to result in a highly productive & scalable enterprise application development platform.
I hope it encourages others to adapt JRuby, & hence Ruby, in the enterprise. After all, as promised by the JRuby dev. team, the JRuby improvisation is well capable of delivering the best of both Java & Ruby worlds, & hence deserves greater attention in the enterprise world!