The Celluloid Ecosystem
summary
Celluloid is a concurrent-object framework for Ruby that offers synchronous calls, async do syntax and Futures, automatic pools (one actor per CPU by default), and built-in supervisors for fault tolerance; pools scale to cores and supervisors restart crashed actors. The ecosystem includes DCell/Diesel (distributed via ZeroMQ and ffi-rzmq), which currently ships as a pre-release and requires Zookeeper for node registry while linking is not yet implemented, Celluloid::IO for evented sockets, and Reel, a WebSocket-capable server that demos a time-push and beats Goliath on latency though Thin and Node remain faster.
AI-written summary · about
chapters (8)
- 0:00Introduction to Celluloid
- 4:20The Actor Model and Objects
- 9:13Using Celluloid
- 13:27Pools and Fault Tolerance
- 15:59Diesel: Distributed Celluloid
- 27:54Celluloid IO
- 36:06Reel Web Server
- 43:53Future Projects and Q&A
related talks
31mThree Mini-talks
38mScaling Ruby with Actors, or How I Learned to Stop Worrying and Love Threads
39mConcurrent Systems in Ruby
35mConcurrency in Ruby: Threads, Fibers and Ractors Demystified
42mBuilding Bulletproof Concurrent Applications on the JVM
28mCome Discuss Ractors and Concurrency with 'The Dude'!
20mSubprocesses, Threads and Fibers
38mModeling concurrency in Ruby and beyond
