문제

We have 2 WSO2 ESB nodes.

We have configured similar Proxy on both ESBs (i.e. both Proxy have same name, point to same WSDL and have no associated end points)

We want the client traffic to load balance across these 2 ESBs, using Apache Software load balancer.

However the issue is, The clients will be generating SOAP stubs from the Proxy WSDL and generally the Proxy WSDL has the Soap Address specified as the ESBHost:port/proxyName.. That will mean that requests from client will be going directly to the ESB from where they generated the stubs.

How can we overcome this ? i.e. force the clients to the load balancer hostname/ip ? Is there any configuration on ESB proxy to explicitly set the SoapAddress ... if that is available then we can have the Proxy WSDL define the SoapAddress as loadbalancerHost:port/proxyName

Thanks Rajiv Patil

도움이 되었습니까?

해결책

You can add following parameter to http and https transport receivers of WSO2 ESB .

<parameter name="WSDLEPRPrefix" locked="false">[load-balancer-url]</parameter>

For example:

<parameter name="WSDLEPRPrefix" locked="false">http://esb.cloud-test.wso2.com:8280</parameter>

You need to edit following file. <WSO2-ESB-HOME>repository/conf/axis2/axis2.xml

This step is necessary for configuring WSO2 ELB also. See following ELB doc for more information.

http://docs.wso2.org/wiki/pages/viewpage.action?pageId=26839403

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top