@rapidtyphoon404

Масштабирование Nodejs?

Добрый день, сообщество хабрахабра!
Передо мной стоит задача поднять собственный инстанс Stable Diffusion (это я уже сделал) и привязать нейросеть к боту Telegram. Активное количество пользователей может превышать 20.000. Собственно, вопросы:
1. Какие советы по оптимизации производительности можете дать?
2. Какой cloud сервис использовать для деплоя?
3. Как грамотно масштабировать приложение под такое огромное количество пользователей?

Извиняюсь, если вопросы сформулированы некорректно, я еще весьма зелененький :) Всем мира!
  • Вопрос задан
  • 79 просмотров
Решения вопроса 1
TTATPuOT
@TTATPuOT
https://code.patriotovsky.ru/
С темой нейросетей не знаком, но полагаю, что работают все те же правила, что и в обычном вебе:
1) Балансировщики нагрузок. Ставите свои сетки на нескольких серверах и между ними балансируете, чтобы распределять нагрузку. Возможно, имеет смысл присмотреться к Docker Serverless или Kubernetes.
2) Очередь сообщений, чтобы удержать все запросы в уме и ничего не потерять. Стандартные или FIFO, это уже решать вам как архитектору.
3) Используете serverless api gateway для самого бота, чтобы динамически скалировать нагрузку в зависимости от количества запросов.
4) Результаты можете сохранять себе в S3, а можете пытаться сразу выплёвывать сразу в телеграм как-нибудь, чтобы не захламлять свой хостинг.

Разворачивать всё это можно где хотите: Google Cloud, AWS, Яндекс Облако. Главное, чтобы присутствовали сервисы, о которых я говорю выше. Ну и цены/локацию подбирайте под себя.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы