I'm using spring-boot-starter-quartz dependency and using JDBC persistence but the performance using Scheduler.scheduleJob() method is so slow, I did a couple of tests with Jmeter and I got 70 transactions per second but if I don’t use JDBC persistence I got over 800 transactions per seconds.
Anyone know how can I improve the performance for quart using JDBC persistance?
Nota: this is my application.yaml to quartz and using mybatis and SQL_SERVER
spring:
quartz:
job-store-type: jdbc
jdbc:
initialize-schema: never
properties.org.quartz:
scheduler:
instanceName: QuartzScheduler
makeSchedulerThreadDaemon: true
instanceId : AUTO
batchTriggerAcquisitionMaxCount: 1
batchTriggerAcquisitionFireAheadTimeWindow: 0
threadPool:
class : org.quartz.simpl.SimpleThreadPool
threadCount : 10
jobStore:
class : org.quartz.impl.jdbcjobstore.JobStoreTX
driverDelegateClass : org.quartz.impl.jdbcjobstore.MSSQLDelegate
isClustered : true
clusterCheckinInterval : 20000
acquireTriggersWithinLock: false