У клиента обмен с 30 риб, каждые 900 секунд (15 минут)
Задумка была неплоха:
Первое работает с 8:00 до 23
Второе работает с 8:01 до 23
Третье работает с 8:02 до 23
....
То бишь они запускаются через 1 минуту.
Но если служба агента перезапускается, история фоновых теряется и все они стартуют одновременно, база при этом лежит и тяжело дышит. И потом опять вместе и т.п.
Как бы это пролечить или ограничить количество одновременно запускающихся. Одинаковый ключ не предлагать.
Вынести работу юзеров главного офиса из ЦБ в отдельную ПБ!
Т.е. пусть они работают в по сути периферии (ПБ), в копии центральной базы
А сама центральная база (ЦБ) будет заниматься только обменами по расписанию
Для регламентных можно даже еще одну ПБ выделить кстати, и оттуда только готовые данные как результат затягивать
Но не для всех регзаданий подходит, некоторые надо локально
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший