Zeke schrieb:
> Hi, all:
>     I configure a Apache with mod_jk as HTTP load balancer for a JBoss
> cluster. My cluster provide some web services. Of course, the URL in the web
> serice call by client is the URL of the load balancer's. If for some reason,
> the web service on a node is unavailable, client call on it will get a 500
> error response which should be handled by mod_jk using fail_on_status
> directive. I tried it but found that the fail over seems not work. For
> example, I have two nodes in a cluster, web serivce on node 1 is available
> but web service on node 2 is not available. I send 10 call through load
> balancer, but found that 9 calls succeeded, but one still get exception. It
> seems that after the first call is dispatched to node 2, node 2 will return
> 500 error and inform load balancer to mark it as in an error state. Then the
> next calls will not be dispatched to node 2 again. It is good. But the first
> call itself does not fail over to node 1. So only 9 call succeed.
>    Do I forget some other configuration to make the first call fail over? My
> workers.properties is like below. Any suggestion from you will be very
> appreciated!

I guess the calls are POST requests with a not very small body. We can't
repost a big POST, because we don't buffer all the body. The whole thing
is a streaming architecture, so we can replay one body packet if we
detect a communication problem early, but if we sent a huge body and
only after processing we get a 500 from the backend, we don't have the
full body around to repost to another failover backend.

If the backend doesn't accept the request, failover should work.

Regards,

Rainer

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to