Как настроить переменную среды idleWaitTime в QuartzScheduler для Spring Framework - PullRequest
0 голосов
/ 23 марта 2020

В настоящее время я использую стороннее приложение, которое использует платформу Spring, и пытаюсь устранить проблему, из-за которой что-то в платформе Spring постоянно воссоздает соединение каждые 30 секунд с безсерверной базой данных postgres в AWS. Я использую источник данных Hikari, который был настроен со следующими переменными среды:

DATASOURCE_MINIMUMIDLE=0
DATASOURCE_IDLETIMEOUT=30000
DATASOURCE_MAXLIFETIME=60000

Я подтвердил, что эти параметры изменяют пул hikari, как и ожидалось.

При обнаружении проблемы я обнаружил этот Кварц планирует запрос каждые 30 секунд или около того. Я пытался установить env var для управления временем простоя основного планировщика l oop:

https://github.com/quartz-scheduler/quartz/blob/9f9e400733f51f7cb658e3319fc2c140ab8af938/quartz-core/src/main/java/org/quartz/core/QuartzSchedulerThread.java#L244

Либо переменная env я попытка установить управление idleWaitTime неверно или что-то еще происходит.

Кто-нибудь имеет опыт управления кварцевым idleWaitTime с помощью переменных среды?

Я пробовал SPRING_QUARTZ_PROPERTIES_ORG_QUARTZ_SCHEDULER_IDLEWAITTIME, но это делает, но кажется, не имеет никакого эффекта.

1 Ответ

0 голосов
/ 26 марта 2020

Я решил эту проблему, установив переменную среды SPRING_APPLICATION_ JSON со следующими параметрами: "{\"spring\":{\"application\":{\"quartz\":{\"org.quartz.scheduler.idleWaitTime\":\"600000\"}}}}"

...