Недавно я обнаружил, что mod_cluster предлагает больше возможностей, чем mod_proxy или аналогичные модули. Следовательно, есть динамическое развертывание и новые метрики, доступные для балансировки нагрузки. У меня есть вопрос, есть ли возможность написать собственный алгоритм балансировки нагрузки вместо использования предопределенных. Если да, то где это реализовать?
Пользовательский алгоритм балансировки нагрузки с mod_cluster
Ответы (1)
Да, это возможно. Вам необходимы следующие шаги:
- Создайте пользовательскую метрику нагрузки, расширив
AbstractLoadMetric
- Упакуйте пользовательскую метрику нагрузки в виде JAR-файла.
- Скопируйте JAR в модуль modcluster
- Обновите
module.xml
, включив JAR пользовательской метрики нагрузки. - Обновите автономную конфигурацию или XML конфигурации домена, чтобы использовать пользовательскую метрику нагрузки.
Пример примера см. здесь: https://github.com/Karm/mod_cluster-custom-load-metric
ПРИМЕЧАНИЕ. В WildFly 9 этот механизм будет улучшен, чтобы избежать редактирования module.xml
. См. https://issues.jboss.org/browse/WFLY-372.
person
Aparna Chaudhary
schedule
01.04.2015
Спасибо за ваш ответ, это очень полезно. Как я понимаю, я должен повторить эти шаги на каждом узле кластера, задав его свойства емкости, истории и веса, чтобы настроить распределение нагрузки?
- person Tomek; 01.04.2015
Да, если вы используете автономный режим. Если вы используете режим домена, шаг 5 необходимо выполнить только один раз, чтобы обновить файл domain.xml для соответствующих профилей.
- person Aparna Chaudhary; 01.04.2015