Asynchronous and Non-Blocking IO with JRuby
summary
Claims JRuby can run true asynchronous non-blocking IO on the JVM using Ratpack on Netty and cut server footprint while increasing throughput; Apple runs 400,000 Netty instances (2015) handling tens of millions req/s and tens of petabytes/day. Demonstrations include a synthetic eBay search app that contrasts blocking, async-serial, and async + parallel promises with measurable latency drops, and a Books app that merges a local DB and ISBNdb using RxJava observables plus Hystrix for caching/fault tolerance. Examples run as JRuby apps, are on GitHub and deployable to Heroku, but require more code and careful concurrency handling.
AI-written summary · about
chapters (11)
- 0:00Intro
- 0:38Overview
- 7:34Example Application
- 9:52Asynchronous Application
- 14:04Demo
- 19:13Books Example
- 20:38Tools
- 21:41Observables
- 22:42Sample Application
- 29:51Other Methods
- 32:11Drawbacks
related talks
23mAsync Ruby
30mRack based web apps with JRuby and TorqueBox
55mJRuby in 2018: Building, Deploying, and Scaling Your Apps
31mExpand your Ruby Potential with JRuby
39mJRuby: Insights from Six Years in Production
47mHigh Performance Ruby
25mWhy I like JRuby (and you should too)
40mJRuby 2018: Real World Performance
