APScheduler за балансировщиком нагрузки - PullRequest
0 голосов
/ 14 октября 2019

В отношении APScheduler.

У меня есть приложение для колб, размещенное на AWS за балансировщиком эластичной нагрузки приложения.

Постоянное хранилище заданий - это база данных MySql.

Допустим, ELB запускает несколько (скажем, n = 3) экземпляров EC2 приложения-колбы, и каждый порождает свою собственную копию APScheduler,доступ к одному и тому же хранилищу заданий, что в принципе нормально, однако ...

Как я могу гарантировать атомарный доступ к каждому заданию в хранилище заданий только одним экземпляром EC2, однако общее хранилище заданий должно бытьраспределены по n = 3 экземплярам EC2. То есть, скажем, в очереди было 100 заданий, примерно 33/34 должно обрабатываться каждым экземпляром EC2, и ни одно не обрабатывается более чем одним экземпляром EC2 одновременно.

1 Ответ

0 голосов
/ 14 октября 2019

Я попрошу вас прочитать дружественный FAQ на эту тему. Короче говоря: превратить планировщик в микросервис.

...