Background-Jobs

Архитектура Kubernetes: control plane и reconciliation loop

Архитектура Kubernetes: control plane и reconciliation loop

Что крутится, когда вы делаете kubectl apply: API server как единственная дверь к etcd, scheduler раскладывает поды по узлам, controller manager бесконечно сверяет желаемое с фактическим (reconciliation loop), kubelet на узле воплощает поды через CRI, а CNI/CSI дают им сеть и хранилище. Ментальная модель k8s как набора контроллеров вокруг декларативного состояния — фундамент под всю практику

Postgres как очередь: SKIP LOCKED без отдельного брокера

Postgres как очередь: SKIP LOCKED без отдельного брокера

Очередь задач прямо в PostgreSQL: что на самом деле покупает FOR UPDATE SKIP LOCKED (не корректность), сколько стоит LISTEN/NOTIFY против опроса, почему очередь — худший случай для MVCC, где начинается потолок пропускной способности и что его задаёт: насыщение сбросов журнала и группировка коммитов, снятые прямым замером

Планировщики: семантика расписаний в кластере

Планировщики: семантика расписаний в кластере

«Раз в час» перестаёт быть понятным требованием, как только реплик становится больше одной, а планировщик успевает поспать: что означает пропущенный запуск, догоняет ли расписание пропущенное (одно или всё), что делать с перекрытием и почему полночь — худшее время для задачи. Поведение снято прогонами на живом кластере, а не пересказано по документации

Очереди задач: аренда и жизненный цикл джобы

Очереди задач: аренда и жизненный цикл джобы

Джоба — не сообщение: у неё есть владелец и срок владения. Как устроен цикл claim → lease → heartbeat → complete, что на самом деле удерживает джобу за воркером (не аренда), что происходит при смерти воркера и почему штатный SIGTERM при деплое способен выполнить работу дважды