170 похожих чатов

Что делать, если лагает бот? Пока один пользователь ввел сообщение

и его запрос обрабатывается(время обработки до 5 минут), другой человек не может получить ответ от бота

22 ответов

12 просмотров

Потому что не асинхронность.

Использовать неблокирующие операции

Хэндлер должен завершаться максимально быстро (доли секунды)

Феликс Кот
Потому что не асинхронность.

Если один клиент выполняет функцию которая ещё и блокируется, то и других не обслужит

ViNATANT-[тильт] Автор вопроса
Tishka17
Хэндлер должен завершаться максимально быстро (дол...

Там подаются реквесты на сайты, которые грузятся до 30 сек

ViNATANT-[тильт] Автор вопроса
Илья Власов
Ну так делай запросы через aiohttp

А если написать r = await requests.get(тра-та-та-та)

ViNATANT [тильт]
Там подаются реквесты на сайты, которые грузятся д...

Выноси из хэндлера в фоновые таски или треды

ViNATANT [тильт]
А если написать r = await requests.get(тра-та-та-т...

Ну прежде, чем писать бота, нужно разобраться что такое асинхронность

Tishka17
При чем тут это

Ну потому что у него блокирющий запрос явно

Tishka17
И?

Я просто предполагаю, что человек пользуется асинк клиентом телеги и использует блокирующие запросы через requests

просто скинь код им, и они тебе скажут что не так.

ViNATANT-[тильт] Автор вопроса
Феликс Кот
просто скинь код им, и они тебе скажут что не так.

Короче, он в хэндлере, а вот один из реквестов `r = requests.get(САЙТ).content.decode("utf-8") await message.answer(r)

Нет и не сработает

ViNATANT-[тильт] Автор вопроса
ViNATANT-[тильт] Автор вопроса

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта