Я использую nginx, web.py, fastcgi и redis в качестве стека.
После отправки запроса у меня есть 120 мсек, чтобы вернуть ответ, поэтому мне нужно всегда измерять ответ, и если я собираюсь приблизиться к порогу, мне нужно прервать и вернуть False. Я не буду наказан, если истина или ложь, только если я превышаю порог 120, где это исключение. Я ожидаю 10-50K QPS.
Я могу просто выполнить условия, но меня беспокоит длительный процесс, и мне придется подождать до конца, прежде чем я узнаю, что это заняло много времени, например. вызов Redis, где я использую конвейерную обработку. Например
start = time.time()
r.get()
end = time.time - start
if end>115 then return False
если r.get () занимает слишком много времени, например 130 мс, потом меня наказывают.
Какова наилучшая практика python для мониторинга времени и отправки сигнала прерывания без процесса мониторинга, не требующего слишком много ресурсов? Я запускаю тему?
Использую ли я тайм-аут? если так то как в диапазоне MS?
Спасибо