//
sign in
Profile
by @danabra.mov
Profile
by @dansshadow.bsky.social
Profile
by @jimpick.com
AviHandle
by @danabra.mov
AviHandle
by @dansshadow.bsky.social
AviHandle
by @katherine.computer
EventsList
by @katherine.computer
ProfileHeader
by @dansshadow.bsky.social
ProfileHeader
by @danabra.mov
ProfileMedia
by @danabra.mov
ProfilePlays
by @danabra.mov
ProfilePosts
by @danabra.mov
ProfilePosts
by @dansshadow.bsky.social
ProfileReplies
by @danabra.mov
Record
by @atsui.org
Skircle
by @danabra.mov
StreamPlacePlaylist
by @katherine.computer
+ new component
Profile
Loading...







Loading...
Performance: when your app *IS* fully Ractor-shareable, on AWS (Ruby 4.0 + YJIT) vs a Puma fork cluster: • ~15× less RAM — 80 MB vs 1,256 MB • +32% on pure CPU • 1.5–2× on I/O-light routes
3d
Yaroslav Markin
Ractors are experimental in Ruby 4.0, and so is Kino. This is software for experimenters, but one can dream of Ractor support in Rails. github.com/yaroslav/kino
3d
Instead of forking a process per core (a full app copy each), Kino runs your Rack app on every core in one small process. Rust (tokio/hyper) owns the network; parallel Ractors run your Ruby.
3d
Rails can't run on Ractors though, blocked upstream. Rails holds global mutable state a non-main Ractor can't touch → Ractor::IsolationError. Most gems aren't Ractor-safe yet either.
So is Kino useless for Rails? Well, Rails runs on Kino today in :threaded mode — parallel for I/O, GVL-serialized for CPU; you just don't get the numbers above.
3d
Kino also ships `kino --check` to find Ractor incompatibilities for you.
Rubyists who experiment with Ractors, put them to work! Meet Kino, an experimental performant Ractor web server (with a threading fallback). github.com/yaroslav/kino Note that Ractors are experimental, and so is this server. Rails cannot run on Ractors yet, but it will, sometime in the future. 🧵
Yaroslav Markin
3d
3d
3d
I am finally a Ruby contributor, I guess. In the next version, Array#join—most of the time—would work up to 2.5x faster. github.com/ruby/ruby/pu...
Yaroslav Markin
Yaroslav Markin
7d