【问题标题】:Ubuntu Linux and Crossroads loadbalancer not quite workingUbuntu Linux 和 Crossroads 负载均衡器无法正常工作
【发布时间】:2010-11-04 08:47:41
【问题描述】:

在一些关于问题的建议之后,我正在使用基于 linux 的软件来平衡两台服务器之间的流量。

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

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

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

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

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

谁能帮我解决这个问题,因为我们将在接下来的几周内启用这个系统,这个问题阻碍了我们。

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

【问题讨论】:

  • 这个问题可能更适合serverfault.com(系统管理员的堆栈溢出)。
  • 我建议在 serverfault.com 上问这个

标签: linux centos ubuntu-9.04 load-balancing


【解决方案1】:

好的,这与操作系统无关,而是我使用的软件有问题。在配置 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>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-26
    • 2021-12-07
    • 1970-01-01
    相关资源
    最近更新 更多