Scaling Rails on App Engine with JRuby and Duby
Location: Room 307 - 308 Audience level: Novice
Once we were able to get Rails 2.3.5 running on App Engine, developers started deploying real apps. Bundler was critical, but we also had other developer contributions, and now we have several integration gems that allow rails to function with multiple ORMs on App Engine. We can now generate ActiveRecord scaffolding that works unaltered with DataMapper models. Seasoned Rails developers should feel right at home, even if they’ve never used DataMapper before.
Developers are concerned about their favorite gems and plugins, many with native extensions, working on JRuby. We now have critical gems like redcloth and mechanize (with hpricot) working just fine. Spin-up time has been the main show-stopper in the past, but this is less of an issue now.
Duby has matured recently, and can provide unprecedented performance, by compiling ruby-like code directly to Java bitecode. With JRuby, developers benefit from all the meta-programming power of Ruby, and get portability and performance of Java. The JRuby development environment for Google App Engine runs inside a servlet container, which gives you full access to all the Java APIs. Deploying your app to production couldn’t be easier. No need to provision hardware, new app instances spin up on demand, so you avoid paying for servers that sit idle.
David Masover was once employed by ScribeStorm, later renamed to 3mix, on everything from HD-DVD to a Rails-powered Web 2.0 social media phenomenon… that might have been. More recently, he is an undergrad at Iowa State University, stealing time on weekends to work on exciting Ruby projects like dm-appengine and other attempts to advance the state of the art.
John Woodell is a web developer at Google, and a Ruby enthusiast. He started developing web pages in the early ‘90s, and spent over a decade hacking together sites in Perl, Java and PHP. John discovered RubyOnRails in 2005 and has been a dedicated Rubyist ever since. He maintains the App Engine APIs for JRuby and contributes to related projects. John manages the JRuby on App Engine blog and tweets as johnwoodell.
Comments on this page are now closed.