Como configurar o tempo limite de conexão em processadores de mensagens

Esta é a documentação do Apigee Edge.
Acesse Documentação da Apigee X.
informações

Neste documento, explicamos como configurar o tempo limite de conexão para os processadores de mensagens do Apigee Edge.

O tempo limite de conexão representa o tempo pelo qual o processador de mensagens espera para estabelecer com o servidor de destino. O valor padrão da propriedade de tempo limite de conexão no O processador de mensagens leva 3 segundos. Esse tempo limite é aplicável servidores de back-end configurados na configuração do endpoint de destino e no ServiceCallout do proxy de API.

O tempo limite de conexão para processadores de mensagens pode ser aumentado ou reduzido do valor padrão de 3 segundos com base em suas necessidades. Ele pode ser configurado das seguintes maneiras:

  • No proxy de API
    • No endpoint de destino
    • Na política ServiceCallout
  • No processador de mensagens
.

As propriedades a seguir controlam o tempo limite de conexão nos processadores de mensagens:

Nome da propriedade Local Descrição
connect.timeout.millis Proxy de API:
  • Endpoint de destino
  • ServiceCallout política

Esse é o tempo máximo que o processador de mensagens espera para se conectar ao servidor de destino.

Por padrão, essa propriedade usa o valor definido para o Propriedade HTTPClient.connect.timeout.millis no processador de mensagens. em que o valor padrão é 3 segundos.

Se essa propriedade for modificada com um novo valor de tempo limite para o servidor de destino associado com um proxy de API, o tempo de conexão somente para esse servidor de destino será afetado.

HTTPClient.connect.timeout.millis processador de mensagens

Esse é o tempo máximo que o processador de mensagens espera para se conectar ao servidor de destino.

Essa propriedade é usada para todos os proxies de API em execução no processador de mensagens.

O valor padrão dessa propriedade é de 3 segundos.

Você pode modificar essa propriedade conforme explicado em Como configurar o tempo limite de conexão em processadores de mensagens abaixo ou substitua esse valor definindo a propriedade connect.timeout.millis no nível do proxy da API.

Antes de começar

Antes de usar as etapas deste documento, é preciso entender os seguintes tópicos:

Configurar o tempo limite de conexão no proxy de API

O tempo limite de conexão pode ser configurado no proxy de API nos seguintes locais:

  • Endpoint de destino
  • ServiceCallout política

Configurar o tempo limite de conexão no endpoint de destino do proxy de API

Esta seção explica como configurar o tempo limite de conexão no endpoint de destino do seu proxy de API. O tempo limite da conexão pode ser configurado pela propriedade connect.timeout.millis, que representa o valor de tempo limite da conexão em milissegundos.

.
  1. Na interface do Edge, selecione o proxy de API específico em que você quer configurar o novo o valor de tempo limite da conexão.
  2. Selecione o endpoint de destino específico que você quer modificar.
  3. Adicione a propriedade connect.timeout.millis com um valor apropriado no <HTTPTargetConnection> na configuração TargetEndpoint.

    Por exemplo, para mudar o tempo limite de conexão para 5 segundos, adicione o seguinte bloco de código:

    <Properties>
      <Property name="connect.timeout.millis">5000</Property>
    </Properties>
    

    Como a propriedade connect.timeout.millis está em milissegundos, o valor de 5 segundos é 5000.

    Os exemplos a seguir mostram como configurar o tempo limite de conexão no endpoint de destino do proxy de API:

    Exemplo de configuração de endpoint de destino usando um URL para o servidor de back-end

    <TargetEndpoint name="default">
      <HTTPTargetConnection>
        <URL>https://mocktarget.apigee.net/json</URL>
        <Properties>
          <Property name="connect.timeout.millis">5000</Property>
        </Properties>
      </HTTPTargetConnection>
    </TargetEndpoint>
    

    Exemplo de configuração do endpoint de destino usando o servidor de destino

    <TargetEndpoint name="default">
      <HTTPTargetConnection>
        <LoadBalancer>
          <Server name="target1" />
          <Server name="target2" />
        </LoadBalancer>
        <Properties>
          <Property name="connect.timeout.millis">5000</Property>
        </Properties>
        <Path>/test</Path>
      </HTTPTargetConnection>
    </TargetEndpoint>
    
  4. Salve as alterações feitas no proxy de API.

Como configurar o tempo limite de conexão na política Service callout do proxy de API

Esta seção explica como configurar o tempo limite de conexão no ServiceCallout política do seu proxy de API. O tempo limite da conexão pode ser configurado pela connect.timeout.millis, que representa o valor do tempo de conexão no milésimos de segundo.

.

Para configurar o tempo limite de conexão na política ServiceCallout usando o Propriedade connect.timeout.millis:

  1. Na interface do Edge, selecione o proxy de API específico em que você quer configurar o novo o valor do tempo limite de conexão para a política ServiceCallout.
  2. Selecione a política ServiceCallout específica que você quer modificar.
  3. Adicione a propriedade connect.timeout.millis com um valor apropriado no <HTTPTargetConnection> na configuração TargetEndpoint.

    Por exemplo, para mudar o tempo limite de conexão para 5 segundos, adicione o seguinte bloco de código:

    <Properties>
      <Property name="connect.timeout.millis">5000</Property>
    </Properties>
    

    Como a propriedade connect.timeout.millis está em milissegundos, o valor de 5 segundos é 5000.

    Os exemplos a seguir mostram como configurar o tempo limite de conexão no Política ServiceCallout do proxy de API:

    Exemplo de configuração de política de Service callout usando um URL para o servidor de back-end

    <ServiceCallout name="Service-Callout-1">
      <DisplayName>Service Callout-1</DisplayName>
      <HTTPTargetConnection>
        <Properties>
          <Property name="connect.timeout.millis">5000</Property>
        </Properties>
        <URL>https://mocktarget.apigee.net/json</URL>
      </HTTPTargetConnection>
    </ServiceCallout>
    

    Exemplo de configuração da política Servicecall usando o servidor de destino

    <ServiceCallout enabled="true" name="Service-Callout-1">
      <DisplayName>Service Callout-1</DisplayName>
      <Response>calloutResponse</Response>
      <HTTPTargetConnection>
        <LoadBalancer>
          <Server name="target1" />
          <Server name="target2" />
        </LoadBalancer>
        <Properties>
          <Property name="connect.timeout.millis">5000</Property>
        </Properties>
      <Path>/test</Path>
      </HTTPTargetConnection>
    </ServiceCallout>
    
  4. Salve as alterações feitas no proxy de API.

Como configurar o tempo limite de conexão em processadores de mensagens

Esta seção explica como configurar o tempo limite de conexão nos processadores de mensagens. O tempo limite da conexão pode ser configurado pela propriedade conf_http_HTTPClient.connect.timeout.millis, que representa o tempo limite da conexão em milissegundos no componente Processador de mensagens, usando o token de acordo com a descrita em Como configurar o Edge.

.

Para configurar o tempo limite de conexão nos processadores de mensagens, faça o seguinte:

  1. Na máquina do processador de mensagens, abra o arquivo a seguir em um editor. Se não já existe, então crie-o.
    /opt/apigee/customer/application/message-processor.properties
    

    Por exemplo, para abrir o arquivo usando vi, digite o seguinte:

    vi /opt/apigee/customer/application/message-processor.properties
    
  2. Adicione uma linha no seguinte formato ao arquivo de propriedades, substituindo um valor por TIME_IN_MILLISECONDS:
    conf_http_HTTPClient.connect.timeout.millis=TIME_IN_MILLISECONDS
    

    Por exemplo, para mudar o tempo limite de conexão no processador de mensagens para 5 segundos, adicione a seguinte linha:

    conf_http_HTTPClient.connect.timeout.millis=5000
    
  3. Salve as alterações.
  4. Verifique se o arquivo de propriedades pertence ao usuário apigee, conforme mostrado abaixo:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  5. Reinicie o processador de mensagens conforme mostrado abaixo:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  6. Se você tiver mais de um processador de mensagens, repita as etapas acima em todas Processadores.

Como verificar o tempo limite de conexão em processadores de mensagens

Esta seção explica como verificar se o tempo limite de conexão foi modificado com sucesso em os processadores de mensagens.

Mesmo que você use o token conf_http_HTTPClient.connect.timeout.millis para definir tempo limite de conexão no processador de mensagens, você precisa verificar se a propriedade HTTPClient.connect.timeout.millis foi definido com o novo valor.

  1. Na máquina do processador de mensagens, pesquise a propriedade HTTPTransport.connect.timeout.millis no /opt/apigee/edge-message-processor/conf e verifique se ele tem foi definido com o novo valor, conforme mostrado abaixo:
    grep -ri "HTTPClient.connect.timeout.millis" /opt/apigee/edge-message-processor/conf
    
  2. Se o novo valor de tempo limite de conexão for definido com sucesso no Processador de Mensagens, o O comando acima mostra o novo valor no arquivo http.properties.

    O resultado de amostra do comando acima depois que você configurou o tempo limite da conexão para 5 segundos é o seguinte:

    /opt/apigee/edge-message-processor/conf/http.properties:HTTPClient.connect.timeout.millis=5000
    

    No exemplo de saída acima, observe que a propriedade HTTPClient.connect.timeout.millis foi definido com o novo valor 5000 no http.properties. Isso indica que o tempo limite de conexão foi configurado para 5 segundos na mensagem Processador

  3. Se você ainda estiver vendo o valor antigo da propriedade HTTPClient.connect.timeout.millis, Depois, verifique se você seguiu todas as etapas descritas Como configurar o tempo limite de conexão em processadores de mensagens corretamente. Se você tiver pulado alguma etapa, repita-a corretamente.
  4. Se ainda não for possível modificar o tempo limite da conexão, entre em contato com o suporte do Google Cloud Apigee Edge.