Можно ли использовать Apache Camel в качестве общего балансировщика нагрузки?

Я хотел знать, можно ли использовать Apache Camel в качестве балансировщика нагрузки для любого веб-сервера HTTP.

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


person user1621776    schedule 24.08.2012    source источник


Ответы (3)


Да, вы можете использовать верблюда для этого. Что-то вроде этого может сделать это для вас (в построителе маршрута):

from("jetty://http://0.0.0.0:8080/my/path")
    .loadBalance()
    .roundRobin()
    .to("http://server1:8080/my/path","http://server2:8080/my/path");

Вы можете ознакомиться с другими вариантами балансировки нагрузки здесь: http://camel.apache.org/load-balancer.html

person Petter Nordlander    schedule 25.08.2012

Поскольку вы хотите сбалансировать нагрузку HTTP, просмотрите также эту страницу, так как вам потребуется настроить конечные точки http для моста: http://camel.apache.org/how-to-use-camel-as-a-http-proxy-between-a-client-and-server.html

А также matchOnUriPrefix=true, чтобы соответствовать любым входящим запросам. И если вы используете причал на всех конечных точках, он может масштабироваться, используя неблокирующие продолжения.

person Claus Ibsen    schedule 26.08.2012

Да, конечно, вы можете использовать верблюда в качестве балансировщика нагрузки. Я до сих пор использовал его очень успешно. Взгляните на это обсуждение Загрузка балансировка с использованием верблюда. Это будет полезно для начала. Получайте удовольствие от катания на верблюде!

person Spaniard89    schedule 28.08.2012