Задать вопрос
@MisterRobotsk

Как грамотно изначально сделать телеграмм бота на Python с помощью aiogram чтобы выдерживал как минимум 10к пользователи и можно было масштабировать?

Я хотел бы сделать телеграмм бота чат бота который обращается к Mistral api. Я знаю что нужно использовать библиотеку aiogram Для лучшей производительности. А также использовать для прода вебхуки, nginx, docker, redis, ещё для логирования вроде можно использовать стандартную библиотеку python logging но хз покроет ли она мой все потребности. У меня есть vps сервер с 2 ядрами CPU, 2 GB RAM, 20gb ram это подойдет для какого количество пользователей? А также узнать какие лимиты стоит сделать для телеграмм бота чтобы не перегружать сервер. Структуру проекта, где что должно быть, потому что из множества гайдов которых я смотрел на youtube не особо понятно где что размещать в каких файлах чтобы не засорять файл main.py. Для базы данных вроде можно использовать supabase а потом когда соберу первые деньги с чат бота куплю наверное уже полноценный chat gpt api и какой ни будь аналог supabase который можно будет оплатить криптой либо сбп. Оплату я думаю реализовать с помощью внутреннего кошелька телеграмм или metamask. Я хотел бы узнать все как мне это сделать. То есть план того как это все должно работать
  • Вопрос задан
  • 41 просмотр
Подписаться 1 Простой 2 комментария
Пригласить эксперта
Ответы на вопрос 2
Daemon23RUS
@Daemon23RUS
Я знаю что нужно использовать библиотеку aiogram Для лучшей производительности. А также использовать для прода вебхуки, nginx, docker, redis ...... У меня есть vps сервер с 2 ядрами CPU, 2 GB RAM, 20gb

1) Снять розовые очки.
2) Посмотреть на задачу в свете отсутствия розовых очков.
3) 10к пользователей в секунду ? - произвести расчет, а лучше обратится к документации Mistral api примет ли она от Вас 10к rps
4) Произвести коррекцию своей хотелки.
5) Имея на руках реальный план по RPS произвести предварительный расчет.

P.S. И это я только подтолкнул Вас к правильной постановке вопроса, даже не рассматривая техническую сторону. Разобравшись в этом нюансе, у Вас будут другие (более технически правильные вопросы) на которые по возможности сообщество ответит.
Ответ написан
Комментировать
VoidVolker
@VoidVolker
Dark side eye. А у нас печеньки! А у вас?
Итак, у вас на самом деле здесь намешано множество вопросов в одной куче. Если вам надо вот прям сейчас, то следует просто заказать на фрилансе консультацию у опытного разработчика. Если же вы хотите самостоятельно реализовать масштабирование вашего проекта, то вам предстоит самостоятельно прочитать множество статей по каждому озвученному вами вопросу и про механизмы реализации масштабирования в целом. А не просто посмотреть один короткий ролик на ютюбе.
В целом, масштабирование реализуется достаточно просто: типовой подход - stateless и использование очередей для передачи данных между фронтом и бэком, плюс само собой кэширование горячих данных и правильное использование БД. Какую нагрузку выдержит ваше приложение может показать только нагрузочное тестирование.
План как всё это делается вам предстоит подготовить тоже самостоятельно: используйте принцип декомпозиции.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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