-
Notifications
You must be signed in to change notification settings - Fork 2.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Expose Quartz underlying configuration in Quarkus/quartz for perfomance tuning #29319
Comments
/cc @machi1990, @mkouba |
Seems reasonable to me |
Makes sense to me as well. @fikrutm will you be interested in implementing it? We are happy and will be here to guide you. Thanks |
@machi1990 I am glad to take the implementation, and needs a guide how to get started? |
Thanks @fikrutm The configuration could be declared in https://github.com/quarkusio/quarkus/blob/main/extensions/quartz/runtime/src/main/java/io/quarkus/quartz/runtime/QuartzRuntimeConfig.java The way it was done for https://github.com/quarkusio/quarkus/blob/main/extensions/quartz/runtime/src/main/java/io/quarkus/quartz/runtime/QuartzRuntimeConfig.java#L22-L32 could be used as inspiration. As for property naming:
Are okay names to me. If this is your first time contributing to the repo, I'd suggest you to have a quick look at https://github.com/quarkusio/quarkus/blob/main/CONTRIBUTING.md |
Fixed by #29395 |
Currently we are using Quarkus/quartz cluster mode with
store-type: jdbc_tx
, in a situations where the scheduler has very large numbers of triggers that need to be fired at or near the same time.Per quartz official documentation http://www.quartz-scheduler.org/documentation/quartz-2.3.0/configuration/ConfigMain.html#configuration-reference the performance expected to improve by setting:
org.quartz.scheduler.batchTriggerAcquisitionFireAheadTimeWindow
(the larger the number, the more efficient firing is (in situations where there are very many triggers needing to be fired all at once)org.quartz.scheduler.batchTriggerAcquisitionMaxCount
(the larger the number, the more likely batch acquisition of triggers to fire will be able to select and fire more than 1 trigger at a time)org.quartz.jobStore.acquireTriggersWithinLock
(to avoid data corruption).But Quarkus/quartz does not expose these properties as configurable. Would it be possible to expose the underlying default quartz configuration so that we can leverage the quartz batch mode?
Quartz provides these configurations: http://www.quartz-scheduler.org/documentation/quartz-2.3.0/configuration/ConfigMain.html
And Quarkus/Quartz provides these: https://quarkus.io/guides/quartz#quartz-configuration-reference
@cescoffier
The text was updated successfully, but these errors were encountered: