Вопросы с собеседований по C# и ответы на них.
По рекламе: @tproger_sales_bot
Учиться у нас: https://clc.to/QRJIVw
Для обратной связи: @proglibrary_feeedback_bot
Наши каналы: https://t.me/proglibrary/9197
Post #1101
1.61K
Как запускать один периодический джоб на весь кластер ASP.NET Core без внешнего планировщика?
Оберните BackgroundService в распределённый lock (Redis SET NX PX, Postgres advisory lock и т.п.) с heartbeats/TTL и авто-продлением; выполняйте работу только у лидера. Делайте задачи идемпотентными, держите дедлайны/отмену, при потере lock — немедленно завершайте цикл. Сохраняйте «курсор прогресса» в БД.
Библиотека собеса по С#
Оберните BackgroundService в распределённый lock (Redis SET NX PX, Postgres advisory lock и т.п.) с heartbeats/TTL и авто-продлением; выполняйте работу только у лидера. Делайте задачи идемпотентными, держите дедлайны/отмену, при потере lock — немедленно завершайте цикл. Сохраняйте «курсор прогресса» в БД.
Библиотека собеса по С#
- 👍 1

