XMLRPC return very slowly sometimes

Hi guys,

I use XMLRPC to do some maintain things against ejabberd server, my server version is 2.1.8

The operation I use is to get buddy list of a user, clear privacy set, delete roster item, and so on.

The problem is, sometimes the ejabberd server returned very slowly for my XMLRPC request, sometimes it take 3 minutes for my client to get the RPC result from server.

And the other times the tcp connection was reset directly by ejabberd server.

But most of the time it only take hundreds millisecond to return.

I can't see any useful info in the ejabberd log, Any idea on how to diagnose the problem? Thanks.

Important Note: This is a

Important Note:

This is a cluster environment with 2 nodes. with the same environment, this only happened we I used the load balancer Url to call XMLRpc.

If I used the node URL directly to call XmlRpc, this error didn't happen.

Any idea? Thanks very much.

elvistest4 wrote: Important

elvistest4 wrote:

Important Note:

This is a cluster environment with 2 nodes. with the same environment, this only happened we I used the load balancer Url to call XMLRpc.

If I used the node URL directly to call XmlRpc, this error didn't happen.

Any idea? Thanks very much.

Maybe you only have xmlrpc enabled in one of the two ejabberd nodes, and the call fails when you query the other.

Maybe the load balancer URL introduces some unexpected change in the query.

Hi badlop, Thanks for the

Hi badlop, Thanks for the reply.

1, I am sure both of two nodes of the ejabberd have xmlrpc enabled, since I can call the xmlrpc via the direct URL againt both of these two nodes.

2, what kind of unexpected change could be in the query? The situation is the query didn't fail, but have very long latency with the response.

And, Is it possible that this is a defect of the ejabberd cluster implementation? Thanks, please help, this is urgent to me.

elvistest4 wrote: The

elvistest4 wrote:

The situation is the query didn't fail, but have very long latency with the response.

And, Is it possible that this is a defect of the ejabberd cluster implementation?

You can try to run the query using ejabberdctl in the node where it usually takes too long. Let's see if the problem is in running that command (and then maybe the problem is in clustering), or if the problem is only when using XML-RPC (and then the problem is related to XML-RPC).

Thanks very much for your

Thanks very much for your suggestion, Badlop.

Now the root cause had been found, it turned out to be the NetScaler Load balancer issue.

Everything goes well after we upgrading the firmware of the netscaler.

Syndicate content