LINUX.ORG.RU

Sanic долго разрывает подключение

 , , ,


0

2

Сейчас балуюсь с асинхронным Sanic и возникла такая проблема - Если к нему делать запросы с keep-alive, то подключения долго закрываются (около 10-15 секунд) и в это время сервер просто не отвечает ни на один запрос. Причем, даже если в самом Sanic выставить KEEP_ALIVE=False. Если же делать запросы без keep-alive -то все нормально и быстро. Может кто с подобным сталкивался? Это баг или я что-то делаю не так?

P.S Да, я знаю, что перед ним можно поставить проксирующий Nginx. Вопрос не для того, чтобы получить такой ответ.

мне кажется ты какой-нить там jpeg сжимаешь в это время. цп-зависимые операции надо в ThreadPoolExecutor выполнять.

tz4678 ★★
()
Ответ на: комментарий от tz4678

В том то и дело, что нет. Я не настолько глуп. Суть то в том, что если запросы пустить через nginx прокси, то все нормально

crarkie
() автор топика
Ответ на: комментарий от anonymous

Сейчас уже модно starlette/uvicorn вместо ссаника.

Мне интересно не что там модно, а что даёт дополнительный функционал и при этом работает достаточно быстро. Мне в нем нравится все, кроме вот этого поведения.

crarkie
() автор топика
Ответ на: комментарий от crarkie

Мне интересно не что там модно, а что даёт дополнительный функционал и при этом работает достаточно быстро

Т. е. Starlette?

anonymous
()
Ответ на: комментарий от anonymous

В marshmallow можно сделать Model.load(partial=True), он тогда игнорирует поля отмеченные как required. Pydantic требует дополнительные схемы, необязательные поля не пропускает, присваивает им None. Анальный сарказм не уместен, опускает тебя до уровня малолетнего дебила.

tz4678 ★★
()
Ответ на: комментарий от anonymous

Разработчик ядра python, ответил на твой вопрос

Спасибо. Короче, все это растет из нестабильности самого Sanic. Об этом я наслышан был. Но не думал, что так быстро сталкнусь с этим. Как я понял, есть два варианта решения данной проблемы - либо ставить reverse nginx(как я сделал сейчас), либо REQUEST_TIMEOUT ставить поменьше(надо попробовать)/

crarkie
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.