Pergunta

depois de algum conselho a respeito de um problema que eu estou recebendo usando uma peça baseada linux de software ao tráfego equilíbrio entre dois servidores.

Basicamente, temos o nosso website de produção e um sistema de backup (no site remoto). a produção está sendo espelhado para o backup constantemente para mantê-los sincronizados. nossos pontos de nome de domínio em um servidor Linux Ubuntu 9.04 (instalação limpa nada além do software de balanceamento de carga). que está executando a versão mais recente do Crossroads (aka XR).

XR está configurado para entregar todas as conexões com o servidor web ao vivo até que ele perde a sua ligação "Heartbeat" com esse servidor, quando isso acontece ele salta as conexões para o nosso sistema de backup.

O problema que eu estou recebendo é que se manifesta como uma falta de resposta do nosso servidor web, basicamente, o cliente passa uma mensagem XML formado corretamente a um .NET webservice, este serviço faz algumas calulations e alterações aos dados, em seguida, replys com um XML resposta, no entanto, o cliente nunca parece ter a resposta.

Eu tenho usado o Wireshark para investigar este problema e parece que a meio da resposta a ligação é cortada ou descartada (não tenho certeza devido a minha falta de experiência com Wireshark).

i foram falar com os autores do software XR e eles não conseguem encontrar quaisquer razões ou problemas no próprio software que poderiam explicar este comportamento, e acredito que talvez algo-a ver com a distro de Linux que eu estou usando ou um kernel do problema.

Alguém pode me ajudar a resolver este problema como somos devido a ter este sistema vivo nas próximas semanas e este problema está nos segurando.

Eu já mudou ao longo do Ubuntu para CentOS 4 e tentei novamente, agora estou recebendo replys aleatórios a partir dos sistemas quando eu uso wireshark. Às vezes eu obter uma resposta XML totalmente formado a partir do servidor, ea próxima tentativa eu ??só poderia obter uma resposta parcial antes caixa de Linux envia um pacote RST.

Foi útil?

Solução

Ok este acabou por ser nada-a ver com o sistema operacional, mas um problema com o software eu estava usando. introduzindo alguns valores de tempo limite para o arquivo de configuração XML (graças a sugestões do autor) e este parece ter resolvido o problema.

Aqui está um exemplo das entradas que você precisa adicionar para o arquivo de configuração entre os símbolos #, o tempo limite dado é uma excessiva pouco (1 minuto)

<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>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top