Starbase config.yaml integrations configuration should support an optional minMinutesBetweenExecutions parameter, as well as a global splayMins parameter.
- if
splayMins is set, Starbase should sleep for a random period, up to the specified value in minutes, before beginning execution. This helps with stampeding herd issues for large installations, similar to this issue.
- if
minMinutesBetweenExecutions is set, Starbase should consult the .integrations folder for the given integration. If it exists AND a previous execution time was recorded AND the specified value in minutes has not yet elapsed, Starbase should skip the integration run. When Starbase kicks off an integration, it should record the current time in a known location in the .integrations folder. This mechanism allows for a configurable polling period, allowing Starbase to execute via CRON more frequently while still enforcing dwell times between integration runs.
Starbase
config.yamlintegrations configuration should support an optionalminMinutesBetweenExecutionsparameter, as well as a globalsplayMinsparameter.splayMinsis set, Starbase should sleep for a random period, up to the specified value in minutes, before beginning execution. This helps with stampeding herd issues for large installations, similar to this issue.minMinutesBetweenExecutionsis set, Starbase should consult the.integrationsfolder for the given integration. If it exists AND a previous execution time was recorded AND the specified value in minutes has not yet elapsed, Starbase should skip the integration run. When Starbase kicks off an integration, it should record the current time in a known location in the.integrationsfolder. This mechanism allows for a configurable polling period, allowing Starbase to execute via CRON more frequently while still enforcing dwell times between integration runs.