Перенаправление конкретного запроса на узел в кластере с помощью modjk
Я создал кластер (балансировщик нагрузки), который состоит из двух узлов node1 и node2, теперь я хочу, чтобы node2 обрабатывал определенный запрос, например / context / heavyservice1, / context / vheavyservice и оба узла1 и node2 для обработки / context / service (который является работает нормально), мой вопрос, как я могу настроить modjk, чтобы узел 2 обрабатывал некоторые сервитуты.
Ниже приведена часть моей конфигурации
worker.list= lbNode
worker.lbNode.type=lb
worker.node1.type=ajp13
worker.node1.port=8009
worker.node1.host=server1
worker.node2.type=ajp13
worker.node2.port=8009
worker.node2.host=server2
worker.lbNode.balance_workers=node1,node2
2 ответа
Решение
Вы можете проверить это так:
worker.list=lbNode,node1,node2
worker.node1.type=ajp13
worker.node1.port=8009
worker.node1.host=server1
worker.node2.type=ajp13
worker.node2.port=8009
worker.node2.host=server2
worker.lbNode.balance_workers=node1,node2
worker.lbNode.type=lb
Затем вы должны установить сопоставления. Вы можете установить сопоставления для разных узлов на одном виртуальном хосте (или на хосте по умолчанию, не создавая виртуального хоста). Просто используйте JKMount и JKUnMount, чтобы соответствовать вашим требованиям
JKMount /context lbNode
JKMount /context/* lbNode
JKUnMount /context/heavyservice1 lbNode
JKUnMount /context/vheavyservice lbNode
JKMount /context/heavyservice1 node2
JKMount /context/vheavyservice node2
- Вы можете установить дополнительные виртуальные хосты для маршрутизации прямо к определенному узлу.
например:
NameVirtualHost *:80
<VirtualHost *:80>
ServerName node1.com
JkMount /application node1
</VirtualHost>
<VirtualHost *:80>
ServerName node2.com
JkMount /application node2
</VirtualHost>