После правки proxy_next_upstream у клиентов начали появляться двойные заказы
Чтобы пользователи реже видели 504, инженер изменил конфигурацию:
proxy_read_timeout 3s;
proxy_next_upstream error timeout non_idempotent;
Ошибок стало меньше, но в базе появились дубли заказов с разницей в 3 секунды. В логах видно: POST /orders на первом бэкенде обрабатывался 4 секунды и успешно создал заказ.
Как правильно поступить?
- Убрать non_idempotent и ввести ключ идемпотентности
- Поднять proxy_read_timeout до 5 секунд
- Оставить повторы только для timeout, без error
- Сделать дедупликацию заказов ночным скриптом
