Размер сообщества и рекомендуемые характеристики

Всем привет! Возможно, этот вопрос уже задавали, но мой поиск ничего не дал. Есть ли у кого-нибудь руководства по тому, сколько процессорного времени и оперативной памяти требуется для сообществ разного размера?

Буду признателен за любую помощь.

Сколько человек вы планируете перенести на Discourse в первый день и какой рост ожидаете?

Также необходимо учесть множество переменных: сколько тем будет создано, сколько пользователей будут онлайн одновременно и т. д.

Имейте в виду, что масштабирование до более мощного сервера, когда вы почувствуете нехватку ресурсов, — задача очень простая. Поэтому начните с чего-то скромного, отслеживайте показатели, а при необходимости перенесите систему на более мощный сервер.

Это для внутренней корпоративной сообщества разработчиков, в котором может участвовать до 20 000 разработчиков.

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

Я бы сказал, что для начала вам, возможно, понадобится конфигурация с 8 ГБ ОЗУ, 4 виртуальными ядрами процессора, 50 ГБ дискового пространства (в зависимости от того, начинаете ли вы с чистого листа или планируете мигрировать данные с первого дня, в последнем случае может потребоваться больше) и 2 ГБ своп-памяти. Однако убедитесь, что у вас есть возможность масштабировать эти ресурсы при необходимости, особенно дисковое пространство основного диска.

Такая конфигурация должна справляться с обработкой до 8 одновременных запросов (не сессий), если вы настроите 2 процесса Unicorn на каждое виртуальное ядро (то есть 8 в общей сложности). Остальные запросы будут ставиться в очередь (и это нормально, если в очереди редко оказывается один запрос, а два — очень редко).

Discourse использует фреймворк для фронтенда, и после его загрузки 99,9% данных, передаваемых между клиентом и сервером, представляют собой JSON, а не полную перерисовку страниц. Поэтому система довольно экономична в плане пропускной способности и, соответственно, скорости обработки запросов.

Затем вы сможете отслеживать нагрузку и масштабировать ресурсы по мере необходимости. Резервное копирование и восстановление благодаря удобному интерфейсу и инструментам командной строки в Discourse — это проще простого.

Уверен, что более специализированные системные администраторы смогут добавить что-то от себя, но эти рекомендации, скорее всего, помогут вам успешно начать работу.

Большое спасибо за вашу помощь.