
Всем добрый день.
У нас серьезная проблема с сервером, наш выделенный сервер не отвечает при большом трафике, сервер реагирует слишком медленно, когда ежедневно активны 2500 пользователей. Общее количество пользователей превышает 80000.
У нас есть приложение на основе чата для iOS и Android, API написаны на Node.js, а база данных использует MongoDB.
Пожалуйста, подскажите, как мы можем улучшить скорость сервера? Какой сервер мне использовать? Достаточно ли одного сервера для такого количества ежедневно активных пользователей? Количество наших пользователей растет с каждым днем, и нам нужно сделать его более надежным.
Мы думаем перейти на Amazon и использовать балансировщик нагрузки, но будет ли это хорошей идеей?
Информация о сервере:
Коммерческое название ADVANCE-LE - Intel Xeon W-2145 - 128 ГБ DDR4 ECC 2666 МГц - 2x SSD NVMe 960 ГБ Datacenter Class Soft RAID
Система (ОС):
Автоустановщик Cpanel 11.68 (CentOS 7 64bit)
решение1
Очень сложно сделать предположение, не зная архитектуры вашего приложения и других деталей.
Вам придется определить, где находится узкое место, т. е. какая часть вашего приложения перегружена. Это веб-сервер, приложение Node, база данных, хранилище или что-то еще?
Как только это станет известно, вам придется оптимизировать эту часть — возможно, добавить кэширование, индексы, разделить ее, оптимизировать пути кода и т. д.
Создание масштабируемых приложений — нетривиальная задача, и использование более мощного оборудования обычно не является решением. Это только дает вам немного времени. Оптимизация архитектуры и кода — вот ответ. Это сложнее, но окупается гораздо лучше.
Надеюсь, это поможет :)