tg-me.com/eshu_coding/71
Last Update:
#телеграм
Одно из узких мест при ботописании – отправка сообщений, которая может занимать длительное время. Предположим, пришлось отправлять 10 сообщений одному человеку подряд. Интенсивность отправки – на грани лимита, уходить на сервера телеграма сообщения будут с разной скоростью, и может так сложиться, что случается уход нескольких сообщений одновременно => превышение лимита API, => санкции. Напомню, это делалось для бота-проверки слитости ТГ акков, где планируется работа на предельной нагрузке в течении долгого времени.
Накрывая тестами отправитель, я закладывал, что в случае отправки потока медленных сообщений (с фотками например), скорость должна проседать, т.к. в одну секунду каждому подписчику должно уходить не более одного сообщения в секунду.
Вот условие задачи: есть буфер, из которого раз в секунду происходит попытка отправления 30 сообщений. Если сообщение еще не отправлено, он его не трогает, если уже отправлено - заменяет на новое и отсылает. Если поставить в тесте равномерное распределение времени ухода сообщения от 0 до 2 секунд, сколько должна быть средняя скорость отправки относительно ситуации, когда сообщения уходят мгновенно?
Я неверно оценил с ходу целевое значение скорости отправки, в результате, тесты никак не хотели сходиться. Прошло 20 часов поиска, дебага и рассмотрения каждой точки кода, чтобы понять, что надо было лучше учить статистику в универе: все работало корректно, а моя оценка снижения скорости была неверной.
BY Эшу быдлокодит
Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283
Share with your friend now:
tg-me.com/eshu_coding/71