• Как запретить одновременные (одинаковые) входящие запросы на стороне API?

    @Quadrollionaire
    Не думаю что это лучшее решение, но как вариант.
    1) Вычисляете хэш (либо идентификаторов чеков, либо еще чего нить, но главное чтоб запрос можно было уникализировать)
    2) Добавляете это все в редис, rabbit, kafka (лучше кафка если нужна какая-никакая, гарантия, хотя с тем же редисом ее тоже можно достигнуть за счет правильного конфига)
    3) Создаете обработчики которые читают очередь и выполняют всю работу

    P.S.) Можете обойтись и без хэша просто записывая в редис обработанные чеки за последние пол дня к примеру и когда прилетает запрос, смотрите какие уже обработаны, их не добавляете в очередь, а те что новые - пускаете в дальнейший путь. В таком случае и уникализировать ничего не надо (гемора меньше)
    Ответ написан
    3 комментария