Least connection setting for soap api in apigee edge

I have got multiple target servers approx 10 servers. Out of 10 target server approx 4 are not alive. I cannot use round Robin here. We are usuing soap api pass thru proxy. Please provide me least connection setting for soap api. Looking Http monitor setting not TCP monitor.

Regards 
Gurbachan 
+91 9769148341
Solved Solved
0 1 54
1 ACCEPTED SOLUTION

Apigee's built-in load balancer does not offer a "least connection" algorithm. But I don't think that would solve your problem anyway, given the information you provided. You don't want "least connection." a "least connection" algorithm will distribute load to dead servers because there is no connection with a dead server. I think you want something different, something that involves a health monitoring capability.

Out of 10 target server approx 4 are not alive. I cannot use round Robin here.

Why not? When you say "not alive" I suppose you mean that at any given point in time, maybe 4 are not responding. But then at some later point in time, these servers will resume responding. Or something like that.

The HTTP HealthMonitor in the Apigee targetserver load balancer is designed to handle this kind of situation. You can configure the healthmonitor to remove from the Roundrobin rotation, any server that reports itself as "unhealthy". You  can specify the server response (status code, etc) that indicates that the server is "unhealthy". You can specify the polling interval, etc.  While the server is unhealthy, the Apigee loadbalancer will not direct API calls to it. If and when the server reports itself as healthy, Apigee will again include that targetserver into the rotation.

BTW, the fact that the target uses a SOAP API is not relevant, for the purposes of load distribution and health monitoring. 

View solution in original post

1 REPLY 1

Apigee's built-in load balancer does not offer a "least connection" algorithm. But I don't think that would solve your problem anyway, given the information you provided. You don't want "least connection." a "least connection" algorithm will distribute load to dead servers because there is no connection with a dead server. I think you want something different, something that involves a health monitoring capability.

Out of 10 target server approx 4 are not alive. I cannot use round Robin here.

Why not? When you say "not alive" I suppose you mean that at any given point in time, maybe 4 are not responding. But then at some later point in time, these servers will resume responding. Or something like that.

The HTTP HealthMonitor in the Apigee targetserver load balancer is designed to handle this kind of situation. You can configure the healthmonitor to remove from the Roundrobin rotation, any server that reports itself as "unhealthy". You  can specify the server response (status code, etc) that indicates that the server is "unhealthy". You can specify the polling interval, etc.  While the server is unhealthy, the Apigee loadbalancer will not direct API calls to it. If and when the server reports itself as healthy, Apigee will again include that targetserver into the rotation.

BTW, the fact that the target uses a SOAP API is not relevant, for the purposes of load distribution and health monitoring.