Ubuntu Linux 和 Crossroads 负载均衡器不太工作

发布于 2024-07-25 19:56:46 字数 744 浏览 3 评论 0原文

在针对问题提出一些建议后,我正在使用基于 Linux 的软件来平衡两个服务器之间的流量。

基本上我们有我们的生产网站和备份系统(在远程站点)。 生产不断地镜像到备份以保持同步。 我们的域名指向 Linux Ubuntu 9.04 服务器(除了负载平衡软件之外,什么都干净安装)。 它正在运行最新版本的 Crossroads(又名 XR)。

XR 设置为将所有连接移交给实时网络服务器,直到它失去与该服务器的“心跳”连接,一旦发生这种情况,它就会将连接退回到我们的备份系统。

我遇到的问题表现为我们的网络服务器缺乏响应,基本上客户端将格式正确的 XML 消息传递给 .NET Web 服务,该服务对数据进行一些计算和更改,然后用 XML 响应进行回复,但是客户似乎从未得到回应。

我一直在使用wireshark来调查这个问题,看起来好像在响应的一半时连接被切断或断开(由于我缺乏使用wireshark的经验,不太确定)。

我一直在与 XR 软件的作者交谈,他们在软件本身中找不到任何可以解释这种行为的原因或问题,并且相信这可能与我正在使用的 Linux 发行版或内核问题有关。

任何人都可以帮助我解决这个问题,因为我们将在接下来的几周内启用这个系统,而这个问题阻碍了我们。

我现在已经从 Ubuntu 切换到 CentOS 4 并再次尝试,现在当我使用wireshark时,我收到系统的随机回复。 有时我会从服务器收到完整的 XMl 回复,而下一次尝试在 Linux 机器发送 RST 数据包之前我可能只会收到部分回复。

after some advice regarding a problem i am getting using a linux based piece of software to balance traffic between two servers.

Basically we have our production website and a backup system (at remote site). the production is being mirrored to the backup constantly to keep them synced. our domain name points at a Linux Ubuntu 9.04 server (clean install nothing apart from the load balancing software). which is running the lastest version of Crossroads (aka XR).

XR is setup to hand all connections to the live webserver until it looses its "heartbeat" connection with that server, once that happens it bounces the connections to our backup system.

The problem i am getting is manifesting itself as a lack of response from our webserver, basically the client passes a correctly formed XML message to a .NET webservice, this service does some calulations and changes to the data then replys with an XML response, however the client never seems to get the response.

I have been using wireshark to investigate this problem and it appears as though half way through the response the connection gets cut off or dropped (not really sure due to my lack of experience with wireshark).

i have been speaking with the authors of the XR software and they cannot find any reasons or problems in the software itself that could explain this behavior, and belive it maybe something to-do with the distro of linux i am using or a kernel issue.

can anyone help me resolve this issue as we are due to take this system live in the next few weeks and this problem is holding us back.

I have now changed over from Ubuntu to CentOS 4 and have tried again, now i am getting random replys from the systems when i use wireshark. sometimes i get a fully formed XMl reply from the server, and the next try i might only get a partial reply before the Linux box sends a RST packet.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

最近可好 2024-08-01 19:56:46

好吧,事实证明这与操作系统无关,而是我正在使用的软件的问题。 在配置 xml 文件中输入一些超时值(感谢作者的建议),这似乎已经解决了问题。

是您需要添加到 # 符号之间的配置文件中的条目的示例,给出的超时有点过多(1 分钟)

<service>
    <name>web_http</name>
    <server>
      <address>x.x.x.x:80</address>
      <type>tcp</type>
      <dispatchmode>first-available</dispatchmode>

##

      <clienttimeout>60:60</clienttimeout>
      <backendtimeout>60:60</backendtimeout>

    </server>
      <backend>
        <address>x.x.x.x:80</address>
      </backend>
      <backend>
        <address>x.x.x.x:80</address>
      </backend>
      <backend>
        <address>x.x.x.x:80</address>
      </backend>
  </service>

Ok this turned out to be nothing at all to-do with the OS but an issue with the software i was using. entering some timeout values into the config xml file (thanks to suggestions from the author) and this seems to have resolved the problem.

Here is an example of the entries you need to add in to the config file between the # symbols, the timeout given is a little excessive ( 1 minute )

<service>
    <name>web_http</name>
    <server>
      <address>x.x.x.x:80</address>
      <type>tcp</type>
      <dispatchmode>first-available</dispatchmode>

#

      <clienttimeout>60:60</clienttimeout>
      <backendtimeout>60:60</backendtimeout>

#

    </server>
      <backend>
        <address>x.x.x.x:80</address>
      </backend>
      <backend>
        <address>x.x.x.x:80</address>
      </backend>
      <backend>
        <address>x.x.x.x:80</address>
      </backend>
  </service>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文