Using JRuby: What, When, How, and Why
summary
JRuby 9.4 brings Ruby 3.1 compatibility and runs on Java 17 with JIT, GC and parallel threads showing real gains: Railsbench and a MySQL blog both run about 2x the throughput of CRuby 3.1 with YJIT, select/update queries hit ~2–2.5x, and memory can drop from ~1.4GB to ~950MB by forcing a 300MB JVM heap. Works with ActiveRecord JDBC adapter, Puma, VisualVM for monitoring, but lacks forking and the fiber IO scheduling API and requires JVM tooling and tuning.
AI-written summary · about
chapters (21)
- 0:00Intro
- 0:35Thank You Yarden!
- 1:28Cheers to Tom Enebo
- 1:55What is JRuby?
- 4:06Ruby Compatibility
- 5:08Why Ruby on JVM?
- 6:33JVM Tools and GC
- 7:58JRuby Install
- 9:20JRuby on Rails?
- 12:16activerecord-jdbc-adapter
- 13:03What Matters to You?
- 17:35Memory Footprint
- 20:06Warmup Over Time
- 21:42Benchmarks Lie
- 22:04End-to-end Rails Blog
- 25:33ActiveRecord Performance
- 26:10Select Performance
- 26:27Update Performance
- 26:53True Story
- 28:08JRuby Future
- 29:38JRuby on Rails Future
related talks
29mScaling Ruby with JRuby
41mRuby on the Modern JVM with JRuby
30mScaling Rails with JRuby in 2022
31mExpand your Ruby Potential with JRuby
39mJRuby: What Why How ... Do it Now!
39mJRuby on Rails: From Zero to Scale
55mJRuby in 2018: Building, Deploying, and Scaling Your Apps
47mJRuby: What, Why, How... Try It Now
