И это подводит меня к другому важному вопросу: использует ли контейнер Docker для Discourse всё оборудование нативно, или мне нужно корректировать конфигурацию?
Я думаю, что в файле app.yml есть два важных параметра
в секции env,
## Сколько одновременных веб-запросов поддерживается? Зависит от памяти и количества ядер CPU.
## Будет установлено автоматически загрузочным скриптом на основе обнаруженных процессоров, или вы можете переопределить
UNICORN_WORKERS: 4
в секции params,
## Установите db_shared_buffers максимум в 25% от общего объема памяти.
## Будет установлено автоматически загрузочным скриптом на основе обнаруженной оперативной памяти, или вы можете переопределить
db_shared_buffers: "1GB"
## Может улучшить производительность сортировки, но увеличивает использование памяти на каждое соединение
#db_work_mem: "40MB"
## Максимальный размер загрузки (по умолчанию: 10m)
upload_size: 20m
Мне было бы интересно понять ответ на ваш вопрос в отношении этих параметров.
Честно говоря, я не думаю, что на этот вопрос есть однозначный ответ — всё зависит в основном от паттернов использования, а также в некоторой степени от истории работы.
Жёстких ограничений не будет.
В основном вы заметите увеличение времени отклика по мере роста числа одновременных пользователей. Если у вас очень пиковый трафик — например, во время прямых трансляций спортивных событий — тогда потребуется больше ресурсов.
По мере углубления истории форума, с накоплением большего числа сообщений от большего числа аккаунтов, каждая операция с базой данных будет выполняться немного медленнее и требовать больше ресурсов. То же самое касается очень-очень длинных тем.
Итак, на что стоит обратить внимание: сколько пользователей активно за неделю, сколько одновременно в минуту, сколько десятков тысяч сообщений — это переменные, которые вы можете рассмотреть.
Я думаю, есть лишь несколько подходов к решению этой задачи:
потратить максимум денег на наилучшую возможную машину и надеяться на лучшее;
купить разумную машину и постоянно её улучшать, когда окажется, что она слишком мала;
спросить людей, которые управляют похожими форумами, какова их статистика и как устроены их системы.
Редактирование: см. также эту недавнюю техническую тему