Как определить какую нагрузку будет выдерживать бот ВК?

Можно ли искусственно создать нагрузку на бота вк, если да, то как это можно сделать? Или какие ещё есть способы проверить какой поток людей сможет выдерживать бот? Бот написан на python с использованием vk_api, а также использует sqlite3 для хранения пользователей и их сообщений в БД


Ответы (1 шт):

Автор решения: Kirill Minovsky

А что ты подразумеваешь под максимальной нагрузкой? Когда бот начнет отвечать медленнее? Проблема неасинхронного/немногопоточного longpoll в том, что он обрабатывает запросы последовательно. А еще sqlite при обращении к нему, блокирует весь файл(хотя это было бы проблемой только при асинхронности/многопоточности, или callback).

Соответственно, ты можешь замерить, за сколько твой бот обрабатывает события(время выполнения кода обработки). А дальше моделирование. Например код выполняется за 0,1с, бот вытягивает с сервера пачку из 10 событий. У первого юзера будет задержка ответа 0,1с, у 10-го - 1с. Пока бот обрабатывал пачку из 10 за секунду, боту успели написать еще 10 человек, например.

Т.е. получается, что бот выдержить любую нагрузку, будет потреблять 40мб ОЗУ и сколько-то мощности процессора, но чем больше людей будут писать в секунду, тем медленнее бот будет отвечать.

→ Ссылка