Comments 2
Как-то веет очень небрежным отношение к асинхронщине в статье. Почему рут login синхронный когда все остальные нет. Почему решением по итогу было приятно отказ от async в чекере, а не использование какой-то асинхронной версии библиотеки...
С таким подходом чувствую еще стрельнет и не разок
Исторически сложилось так, что где-то 90% легаси кода сейчас синхронного и только вот пару лет как внедряют FastAPI с асинхронкой, а роуты соответственно переносились еще с Flask как есть.
Я понимаю желание все взять и переписать на асинхронный код, но к сожалению продакшен в компаниях так не работает: когда проблему можно решить меньшими затратами, ее так и решают. Ну и глобально, разницы для производительности между запуском чекера в треде от FastAPI, в loop.run_in_executor
или полным переписыванием на асинхронный вариант для остальных ручек не будет. Там не такие объемы запросов, чтобы чувстовалась разница между отдельным тредом и корутинами.
ну и в конце небольшую цитату классика:
Мы должны не вспоминать о мелких усовершенствованиях около 97% времени. Преждевременная оптимизация — корень всех зол. (Кнут)
Случаи из разработки на асинхронных фреймворках в Python. Часть 1. FastAPI