Форум сайта python.su
Здравствуйте!
Есть небольшое приложение на FastAPI и урл перейдя по которому срабатывает определенный алгоритм. По условию этот алгоритм должен срабатывать только раз в 5мин. И если мы или кто-то другой обратится по этому урлу и 5 мин. ещё не прошло, то алгоритм не срабатывает. Так вот, как исключить ситуацию двойного выполнение алгоритма когда прилетает два запроса одновременно?
Офлайн
pyDevНадо сохранить запрос и время этого запроса в базу данных. При следующем запросе нужно искать запрос в базе данных, брать его время из базы данных и сравнивать со временем нового запроса. Если разница во времени меньше пяти минут, то выбрасывать новый запрос. Если разница во времени равна или больше пяти минут, то перезаписывать новый запрос с его временем в базу данных на место старого запроса.
Так вот, как исключить ситуацию двойного выполнение алгоритма когда прилетает два запроса одновременно?
Отредактировано py.user.next (Март 26, 2021 10:05:30)
Офлайн
гуглите идемпотентность
Офлайн