My Express REST API использует Mongoose с MongoDB Atlas. В Atlas работает M10s (EC2 T2 smalls), а мой REST API - на EC2 M5 Large. В настоящее время я использую параметр подключения mongoose "poolSize" как значение по умолчанию 5 (поэтому я думаю, что 15 общих открытых подключений к набору реплик).
Я хочу, чтобы мое приложение могло обрабатывать 1000 запросов/секунду для базы данных Atlas.
БД - это всего лишь базовая коллекция пользователей 50K, каждая из которых имеет пару точек данных, а также изображение профиля 10kb. 500 запросов будут для изображения профиля, а другая половина - для таких вещей, как имя пользователя и пароль.
Мой MongoDB Atlas replica set говорит, что он имеет максимум 350 подключений. Если я использую только 15 из них, я непреднамеренно создаю узкое место здесь? Смогут ли эти 15 соединений (5/узел) обрабатывать 1000 запросов в секунду? Должен ли я увеличить свой "poolSize" в Mongoose до 100 (300 общих подключений к набору реплик), чтобы разрешить больше запросов в секунду? Я понимаю, что простой ответ заключается в том, чтобы сказать, протестируйте его, но сначала я хотел бы услышать примерно то, что я должен был сделать в этой ситуации, и узнать, будет ли моя текущая настройка "poolSize" из 5, вероятно, прекрасной для 1000 запросов/с?