Размер Droplet Digital Ocean

Привет! Я создал свой форум Discourse на Droplet от DigitalOcean с 4 ГБ ОЗУ, 2 виртуальными ядрами и SSD на 60 ГБ.

Мой сайт растёт, и в определённые моменты пользователи получают сообщение: «Из-за экстремальной нагрузки сайт отображается как для неавторизованного пользователя». Это спортивный сайт, и такое происходило во время событий, вызвавших большой интерес.

Кажется, сообщение появлялось, когда количество подключённых пользователей достигало 250.

В файле app.yml у меня настроено 2 процесса Unicorn и выделено 768 МБ под db_shared_buffer.

Я хочу увеличить размер моего Droplet. Какой размер вы посоветуете?

Спасибо.

Возможно, стоит подождать, так как в код были внесены ошибки, приведшие к множественным запросам N+1 и N+2. @sam, у тебя уже есть исправления?

Последняя версия содержит последние исправления, но, поскольку это спортивный сайт, вы, возможно, просто перегружены.

Двух единорогов явно недостаточно: для 250 активных неанонимных пользователей потребуется больше веб-воркеров.

Спасибо, какой размер вы рекомендуете? Хватит ли 8 ГБ ОЗУ и 4 ядер процессора? Количество процессов Unicorn будет автоматически обновляться при пересборке приложения?

Если у вас 4 процессора и 8 ГБ оперативной памяти, то, скорее всего, можно обойтись 8 воркерами Unicorn. Также убедитесь, что PostgreSQL выделено 1 ГБ оперативной памяти.

Как я могу проверить эту настройку?

Запустите ./discourse-setup повторно, и он внесет необходимые изменения в app.yml в зависимости от обнаруженных объема памяти и количества процессоров.