Should GoodJob extend ActiveJob::Base by default? #783
bensheldon
started this conversation in
General
Replies: 1 comment
-
My vote is to combine. I realize that you've put great effort into designing a system whereby "this is ActiveJob behavior" and "this is GoodJob behavior", but as a client /user of AJ/GJ, I really don't want to know the difference... I want to just use as standard a mechanism as possible. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
To date, I've been opinionated about not extending/polluting
ActiveJob::Base
by default, and instead:GoodJob
itself that wraps and interacts with the ActiveJob system (usually by storing some state in Thread local variables)I'm seeing a few features in the future, like Batches and Bulk Enqueuing as well as feature requests like disabling
NOTIFY
on enqueue, that would be much easier to implement if GoodJob did reach intoActiveJob::Base
by default. And by extend, I mainly mean:ActiveJob::Base#set
that GoodJob would serialize/deserialize.good_job_control_concurrency_with
, that extend job behavior in specific waysI currently like making strong distinctions between "this is ActiveJob behavior" and "this is GoodJob behavior", but as GoodJob becomes more complex, holding those strongly itself becomes a source of complexity both for me as an implementer, and also (I think!) for trying to explain/document it for developers to use.
Beta Was this translation helpful? Give feedback.
All reactions