Лучший подход к сбросу переменной через 1 час ⇐ C#
-
Гость
Лучший подход к сбросу переменной через 1 час
В моем API я получаю запросы с идентификаторами, вызывающая сторона в случае определенных типов ошибок (например, http 500), которые могут возникнуть при получении ответа, отправляет обратно тот же запрос с тем же идентификатором, мы поняли, что у нас n одинаковых процессы в БД, это связано с тем, что мы записываем ответ в Mongo, но вызывающая сторона не всегда его получает. Чтобы преодолеть это, меня попросили проверить, является ли идентификатор новым потоком, продолжить обычный поток, в противном случае отправьте уже записанный ответ. Проведя некоторые тесты, они поняли, что у них есть запросы с одним и тем же идентификатором, но с разными телами и ответами, и, чтобы не проверять все поля запроса, они попросили меня реализовать эту дополнительную проверку.
Вставьте элемент управления разницей во времени (1 час) с предыдущим вызовом, т. е.: - время 10:00 id запроса=1 – нормальный поток - время 10:59 идентификатор запроса=1 – получить ответ - время 11:01 request id=1 – сообщает об ошибке «idrequest уже использован» Можно ли создать модель с идентификатором и статусом запроса, который сбрасывается каждый час, для мониторинга различных запросов? Я бы вставил этот таймер в контроллер API, передав переменную в метод запроса
В моем API я получаю запросы с идентификаторами, вызывающая сторона в случае определенных типов ошибок (например, http 500), которые могут возникнуть при получении ответа, отправляет обратно тот же запрос с тем же идентификатором, мы поняли, что у нас n одинаковых процессы в БД, это связано с тем, что мы записываем ответ в Mongo, но вызывающая сторона не всегда его получает. Чтобы преодолеть это, меня попросили проверить, является ли идентификатор новым потоком, продолжить обычный поток, в противном случае отправьте уже записанный ответ. Проведя некоторые тесты, они поняли, что у них есть запросы с одним и тем же идентификатором, но с разными телами и ответами, и, чтобы не проверять все поля запроса, они попросили меня реализовать эту дополнительную проверку.
Вставьте элемент управления разницей во времени (1 час) с предыдущим вызовом, т. е.: - время 10:00 id запроса=1 – нормальный поток - время 10:59 идентификатор запроса=1 – получить ответ - время 11:01 request id=1 – сообщает об ошибке «idrequest уже использован» Можно ли создать модель с идентификатором и статусом запроса, который сбрасывается каждый час, для мониторинга различных запросов? Я бы вставил этот таймер в контроллер API, передав переменную в метод запроса
Мобильная версия