Покажите короткий пример по теме «deadlock» и объясните, что здесь важно.

PHPMiddleDatabasesТеорияphpdatabasesqldeadlockphp-backend-developerdatabases

Что хотят услышать интервьюеры:

Короткий пример по теме deadlock:

Ответ:

<?php // retry transaction on deadlock

Что важно: код должен быть безопасным, читаемым и соответствовать контракту задачи. Для PHP-разработчика важно объяснить не только «как написать», но и «почему так безопаснее/надежнее».

  • часто лечится единым порядком обновлений
  • нужны retries
  • важно анализировать lock graph

Типичная ошибка: считать deadlock только багом БД, а не следствием порядка операций.

На собеседовании: проговорите, какие edge cases вы бы проверили тестами и что бы логировали при ошибке.

Источники

Похожие вопросы