4 ms·
https://github.com/socketry/async-http https://github.com/socketry/async-http is just a new client library. PostRank, Zynga, CloudFoundry were all running async
by jashmatthews 6y ago
https://github.com/socketry/async-http https://github.com/socketry/async-http is just a new client library. PostRank, Zynga, CloudFoundry were all running async IO in production on Ruby ~10 years ago. CRuby support for non-blocking IO dates back to the mid 2000s. https://github.com/eventmachine/eventmachine https://github.com/eventmachine/eventmachine actually dates back even further
If you're using Unicorn then you've already got Raindrops which gives you a really simple way to do shared metrics across forked processes like in-flight requests to another service or how many of your Unicorns are busy.
- throwdbaaway 6y agoEventMachine has been losing steam for awhile now, which is why I brought up Async as the new hotness. I don't think it is fair to classify async-http as "just a new client library". As of now, in the ruby ecosystem, the Async framework is the only player in town. From my perspective, it still looks pretty much unproven, but perhaps we just live inside different bubbles. It kinda feel like we are talking past each other here. I would just like to clarify that I inherited all these different ruby apps, and I don't have the magical ability to go back in time and say "Hey, perhaps we should use an async framework from the beginning" or "Dude, enough with the monkey-patching". And even if I do, those could be bad advice, as the ruby apps are making money in production. Anyway, thanks for the suggestion to share metrics across processes. That will definitely help with the circuit breaker decision making in my case.