Слишком много onebox-сообщений в ответах перегружает наш сервер Discourse

Мой форум посвящён образованию.
Большое количество читателей (студентов) создают Onebox.
В результате наш серверный процессор перегружен, на сайте возникают две ошибки: 502 Bad Gateway и 504 Gateway Time-out, из-за чего доступ к сайту невозможен.
Я хочу найти решение: снизить частоту (замедлить скорость) создания Onebox в Discourse (Onebox всё ещё будут генерироваться, но время между созданием последовательных Onebox будет увеличено).
Если мы сможем увеличить время создания Onebox, то наш серверный процессор не будет перегружен.
Спасибо.

Скорее всего, проще всего увеличить оперативную память и/или мощность процессора на вашем сервере. Какие у вас характеристики сервера? Сколько постов создается в день?

Большое количество студентов создает множество одноколонокных блоков (oneboxes), у нас около 10 000 студентов.
Я также рассматривал решения: увеличение мощности CPU и объема оперативной памяти.
Однако при тестировании CPU средняя производительность составляла от 25% до 45%; в определенные моменты наш Discourse испытывал перегрузку процессора, что приводило к недоступности нашего веб-сайта.
Поэтому я искал другое решение.
Джей Пфаффман, спасибо !!!

Вы изменили параметры памяти после настройки памяти? Похоже, что узким местом является база данных. Существуют темы о настройке больших серверов. Стоит посмотреть именно там.

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

У нас тоже возникла эта проблема: Sidekiq (low) работает слишком быстро, из-за чего наш Discourse не может получить доступ к сайту. Есть ли способ настроить частоту работы Sidekiq (low)?

Я думаю, что у вас есть два варианта: либо добавить процессор и оперативную память, либо ограничить количество ссылок, которые могут создавать пользователи.

У меня почти такая же проблема.Как в Sidekiq уменьшить частоту выполнения задач?
Ниже приведены скриншоты:

Нам нужно уменьшить частоту выполнения задач в очереди Low в Sidekiq.
Поскольку задачи в очереди Low выполняются слишком быстро (высокая частота), это вызывает ошибки на сайте, и пользователи не могут его открыть (ошибки 502, 504).
Я хочу настроить Sidekiq так, чтобы очередь Low выполняла только определённое количество запросов в секунду.
Можете ли вы помочь мне с этим?

Для меня CPU и RAM не являются высокими.
С моим Sidekiq режим Low (Sidekiq) работает слишком быстро, из-за чего сайт выходит из строя.

Насколько мне известно, Sidekiq не настраивается.

С учётом указанных вами показателей я рекомендую обновить сервер, увеличив объём памяти и количество процессов.

Посмотрев на таблицу функций Sidekiq по уровням продукта, бросаются в глаза две вещи:

  • базовый уровень с открытым исходным кодом (OSS), идущий в комплекте с Discourse бесплатно, не включает:

    1. ограничение скорости (rate limiting) — полагаю, именно это вам нужно?
    2. батчи (batches) — которые можно использовать для выполнения задач вне пиковых периодов активности пользователей для тех заданий, которые можно отложить.

Поэтому, на мой взгляд, стоит обратить внимание на аппаратную часть.

Тем не менее было бы интересно узнать, могут ли некоторые сайты перейти на версию Pro и сколько усилий это потребует (просто добавление лицензионного ключа?). Возможно, кто-то уже пробовал это сделать?

Продукт Pro, однако, недешёв — $99 в месяц. Это делает аргумент в пользу значительно больших расходов на оборудование? Даже $50 в месяц могли бы позволить существенное обновление оборудования? Сколько вы сейчас тратите?

Если вы хотите рассмотреть возможность использования продукта Pro с Discourse, Pavilion может помочь вам в этом, но такие консультационные услуги также будут стоить денег.

Всегда остаётся вариант нанять кого-то для хостинга вашего сайта, кто возьмёт на себя все эти задачи.

Кажется, вам придётся значительно увеличить бюджет, чтобы система работала так, как вы хотите.

Можете ли вы предоставить некоторые данные? Сколько onebox-ов на один ответ, сколько ответов на одну тему и сколько всего onebox-ов на одну тему?