bensheldon / good_job

Multithreaded, Postgres-based, Active Job backend for Ruby on Rails.
https://goodjob-demo.herokuapp.com/
MIT License
2.7k stars 202 forks source link

Consider new Ruby 3.0 Fiber Scheduler #494

Open ollym opened 2 years ago

ollym commented 2 years ago

Now that https://github.com/ged/ruby-pg/pull/397 is merged, would be good to investigate adding full compatibility to Fiber.scheduler for Good Job also instead of using threads.

Obviously would require Ruby 3.0, and I don't claim to fully understand how it all works but I got a feeling Good Job performance could benefit from it for Ruby 3+

bensheldon commented 2 years ago

@ollym Thanks for flagging this for me. GoodJob is dependent on Concurrent-Ruby for concurrency primitives, so when/if Concurrent Ruby decides to implement Fibers, GoodJob can stand on its shoulders.