
manage.py migrate в пятницу в 17:30 на проде с 3K RPS и таблицей 200М строк
Всем привет! Меня зовут Макс, я Lead Backend и автор YouTube-канала PyLounge. Это третья часть мини-серии о Django-миграциях. В первой части мы готовились к миграциям и разбирались с конфликтами, во второй чинили...
Anthropic — What company has the best second artificial intelligence model at the end of June?
В сфере искусственного интеллекта произошло заметное событие. Меня зовут Макс, я Lead Backend и автор YouTube-канала PyLounge. Это третья часть мини-серии о Django-миграциях. В первой части мы готовились к миграциям и разбирались с конфликтами, во второй чинили типичные подводные камни.
Если их не читали, то рекомендую начать именно с них, а затем вернуться сюда. В этом же материале поговорим о самом интересном: что происходит, когда python manage. py migrate запускается в 17:30 в пятницу на проде, под 3k RPS и таблицей в 200 миллионов строк.
Технические детали
Расскажу какие блокировки в PostgreSQL берёт каждая операция Django, что внутри atomic = False, как пишется правильный паттерн expand-migrate-contract, зачемнужны AddIndexConcurrently, AddConstraintNotValid, SeparateDatabaseAndState и как обновлять данные на больших таблицах. примеры намеренно упрощены, чтобы влезли в статью и не задушили. В реальной жизни всё ещё хуже - но шаги те же.
При подготовки этого материала ни одна продовая база данных не пострадала.
Этот прогресс даёт важные сигналы о будущем отрасли, и технологический мир внимательно наблюдает.





