Обработка 5M одновременных сессий с использованием ejabberd на AWS - PullRequest
0 голосов
/ 22 октября 2018

Я использую общественную версию ejabberd, и меня немного беспокоит среда, настроенная в текущей системе, поэтому я хотел бы получить ваши советы.

В AWS мы используем автоматически масштабируемый XMPPЭкземпляры ec2 и я обязаны обрабатывать 5 000 000 (5M) одновременных сеансов в течение 72 часов.Хотя ejabberd выводит некоторые предупреждающие сообщения о «перегрузке mnesia», я подтвердил, что это требование может быть достигнуто 15 экземплярами r4.8xlarge.

, поэтому ниже приведены вопросы:

  1. На официальной странице первого процесса написано: «Рекомендуется кластеризация с числом узлов 10».Поскольку наша текущая система работает с 15 экземплярами и, кажется, работает правильно, я думаю, что я буду придерживаться использования 15 экземпляров.Будет ли какой-либо риск использовать более 10 экземпляров?

  2. Я провел некоторое исследование и считаю, что использую бизнес-версию ejabberd, но, похоже, бизнес-издание также выдает «mnesia».перегрузка ", и когда это происходит, они просто выполняют какое-то автоматическое восстановление, и я не думаю, что есть какая-то большая разница между использованием сообщества и бизнес-редакции.Поправьте меня, если я ошибаюсь, и скажите, пожалуйста, есть ли некоторые преимущества использования бизнес-версии в нашей системе.

Ожидание ответов.

1 Ответ

0 голосов
/ 24 октября 2018

ejabberd Business Edition имеет различные механизмы кластеризации.Он не основан на репликации Mnesia.У eBE даже есть совершенно другой сервер для сессии, который вообще не зависит от Mnesia.Это гораздо более масштабируемо, особенно когда вы ориентируетесь на систему с точки зрения миллионов одновременно работающих пользователей и действительно можете избежать этой проблемы «перегрузки Mnesia».Чем больше узлов вы добавляете в кластер, тем больше накладных расходов вы будете получать с междоузлом.Существует уровень, на котором добавление новых узлов не будет иметь никакого эффекта.

Другое преимущество eBE заключается в том, что он поддерживается разработчиками, которые создали ejabberd.Если что-то пойдет не так в этом масштабе, вам понадобится много опыта, чтобы система работала нормально (или даже восстанавливалась).

И, наконец, что касается размеров и настройки, это действительно зависит от варианта использования., что делает клиент, шаблоны использования и т. д. Вам необходимо провести сравнительный анализ на этом уровне, чтобы убедиться, что вы, по крайней мере, можете достичь требуемого объема (зная, что даже самые лучшие сценарии будут вести себя по-разному под нагрузкой).

...