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

Всем привет. Ребят, как можно улучшить бота? как ускорить массовую

рассылку тем, кто оформил подписку на бота. сейчас так:считываю подписчиков по sqlite через цикл for и делаю message answer

4 ответов

12 просмотров

Скулайт заменить на серьезную бд и вместо сборки сообщений просто метод send_message

просто читни в офиц документации как бродкаст делать.

Артем Разуваев
просто читни в офиц документации как бродкаст дела...

Я сейчас для своего бота использую такую вот конструкцию: mess='моё сообщение' numberofsended=0 numberofblocked=0 numberall=0 mydatabase2=dict(mydatabase) for element in mydatabase2: numberall+=1 try: await bot.send_message(chat_id=str(element), text=mess, parse_mode=types.ParseMode.HTML) numberofsended+=1 await asyncio.sleep(.04) except: numberofblocked+=1 blocked[element]=mydatabase[element] del mydatabase[element] await asyncio.sleep(.04) Достаточно ли это эффективно, или можно ещё как-то улучшить? (Раньше использовал time.sleep(.04) вместо asyncio.sleep(.04), но отправка сообщений занимала гораздо больше времени, чем ожидалось. Ботом пользуется 500 человек, но вместо ожидаемых 20 секунд бот отправлял сообщения на протежении нескольких минут, не понимаю, из-за чего)

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

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

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
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
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
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Карта сайта