axis2客户端,传输错误:503错误:服务不可用 [英] axis2 client, Transport error: 503 Error: Service Unavailable

查看:182
本文介绍了axis2客户端,传输错误:503错误:服务不可用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们有一个使用axis2 1.5.1构建的Web服务客户端,用于调用部署在供应商的Web服务器之一(服务器A)上的Web服务.直到最近供应商添加另一台Web服务器(服务器B)以实现负载平衡时,该客户端才能正常工作.

现在,服务器A和服务器B都托管了我们的ws客户端可以向其发出请求的相同Web服务.问题是,当供应商的DNS条目指向服务器B时,我们可以向其发出请求并获得成功的响应.当DNS条目更改为指向服务器A时,我们的客户端可以发出请求并从中获取响应而不会出现问题.但是,当条目更改为从服务器A到服务器B时,我们突然开始从服务器B收到传输错误:503错误:服务不可用"错误消息.

我们的WS客户端在多线程环境中运行,并且IP地址更改对其透明,因为它使用域名解析来访问Web服务.我向供应商提出了这个问题,他们声称两台服务器的一切都很好(它们完全相同),并且当我收到503错误时,他们最终没有收到任何收益.他们怀疑问题出在我的客户身上.

我无法理解,只有一个服务器(B)出现问题时,此客户端代码才能完美运行.当Web服务IP从B更改为A时,它也能够获得响应.但是为什么当Web服务IP从A更改为B时,它开始接收503s.

我将不胜感激任何可以帮助我解决此问题的响应.

We have a webservice client built using axis2 1.5.1 that we use to call webservice deployed on one of our vendor''s web server (Server A). The client used to work fine untill recently when the vendor added another web server (Server B) for load-balancing purposes.

Now, Server A and Server B both are hosting the same web-service that our ws client can issue requests to. The issue is that when the vendor''s DNS entry is pointing to server B, we can issue requests to it and get successful responses back. When the DNS entry changes to point to Server A, our client can issue requests and get responses from it without problems. But again when the entry changes to point from Server A to Server B, we suddenly start receiving "Transport error: 503 Error: Service Unavailable" error messages from Server B.

Our WS client is running in a multi-threaded environment and IP address changes are transparent to it since it uses domain name resolution to get to the web service. I took this issue up with the Vendor and they claim that everything is fine with both their servers (they are exactly identical) and that they receive nothing on their end at the time when I get the 503 error on my end. They suspect that the problem is with my client.

I am unable to understand that this client code works perfectly when there is only one server (B) in question. It is also able to get responses when the webservice IP changes from B to A. But why does it start receiving 503s when the webservice IP changes back from A to B.

I would appreciate any responses that can help me troubleshoot this issue.

推荐答案

解释部分是从供应商处收到的错误代码. 503表示请求一直到供应商的系统,但其系统崩溃了(或引发了异常).

因此,您的供应商也应该在他们的系统中看到错误(在负载均衡器或实际的Web服务中).

您可以尝试的是在每个请求之后关闭连接,然后针对您正在执行的每个新请求重新打开一个新连接.这不是推荐的做法,但是保证了新鲜"的工作连接.

当将多个顺序请求发送到不同服务器但影响相同信息时,您可能还需要询问供应商是否有问题.考虑先创建然后按顺序更新信息.

不幸的是,您将需要供应商的进一步帮助,因为此问题与他们的系统以及负载均衡器有关.
The explanation is partly in the error code you are receiving from the Vendor. A 503 means that the request went all the way to the Vendor''s systems, but their systems crashed (or threw an exception).

So your Vendor should be seeing errors as well in their systems (either in the loadbalancer or the actual webservices).

What you could try is closing the connection after every request and re-open a new one for each new request you are doing. This is not a recommended practice, but does guarrentee a ''fresh'' and working connection.

You also might need to ask the vendor if it is an issue when multiple sequential request are sent to different servers, but affecting the same information. Think about first creating and then sequentially updating information.

Unfortunately you will need further help from the Vendor, as this issue is related to their systems in combination with the loadbalancer.


这篇关于axis2客户端,传输错误:503错误:服务不可用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆