Задержка перед обращением к API Telegram

У меня 1 бот Телеграм = 1 город = 1 БД. Есть один код и одна функция отправки данных для всех ботов, как впрочем и функционал.

Я собираюсь перед обращением к API Telegram, смотреть, когда было последнее обращение к боту и если оно было раньше, чем n микросекунд, ставить задержу на отправку и обновлять время последнего обращения для следующего пользователя.

Бот пишу на чистом php. Задался вопросом, как именно делать задержку. Пока что смотрю в сторону usleep(), но раньше не пользовался этим и хочу спросить совет, т.к в одной ветке рекомендовали делать die(), когда бот выполнил свою задачу.

Собственно вопрос: насколько это хорошая затея и чем она чревата для моего сервера и API телеграмм?

Бот рассчитан на до 20000 активных пользователей. Рассылку он делает до 20 человек, если оно необходимо, но это редкая функция. В основном это обработка callback_data и вывод данных из БД + публикация в группе города.

Или может быть мне стоит добавлять очереди в бд и бесконечным таймером (может даже cron) проверять очереди каждые допустим 50ms и смотреть можно ли отправить прямо сейчас этот запрос?


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