Este tópico descreve como resolver timeouts de conexão persistente entre um cliente e um servidor. Esse problema pode ocorrer em services protegidos pelo Web Application Firewall (WAF).
Descrição do problema
Em alguns cenários de negócios, o servidor precisa de mais de 60 segundos para processar uma requisição do cliente. Enquanto aguarda o retorno da resposta, o servidor não troca dados com o cliente.
Por exemplo, ao fazer upload de um arquivo Excel em uma página web para que o servidor processe os dados, o servidor pode levar aproximadamente 3 minutos para concluir o processamento, sem trocar dados com o cliente via HTTP ou TCP durante 120 segundos. Nesse caso, o WAF retorna um erro 504 Gateway Timeout ao cliente e encerra a conexão.
Por padrão, o WAF não mantém uma conexão persistente por mais de 120 segundos sem troca de dados.
Solução
Acesse o Web Application Firewall 3.0 console. Na barra de menus superior, selecione o grupo de recursos e a região (Chinese Mainland ou Outside Chinese Mainland) da instância do WAF.
No painel de navegação à esquerda, clique em Onboarding.
-
Execute os passos de acordo com o tipo de acesso:
CNAME Record
Na aba CNAME Record, localize o nome de domínio desejado e clique em Modify na coluna Actions.
Na página do assistente Configure Forwarding Rule, em Other Advanced Settings, ajuste os valores de Read Connection Timeout Period e Write Connection Timeout Period para o nome de domínio. O valor padrão para ambos os timeouts de leitura e escrita é 120 s, podendo ser configurado entre 1 e 3600 s.
Cloud Native (ECS example)
Na aba Cloud Native, localize o product cloud desejado, expanda os detalhes de porta da instância e clique em Port Details na coluna Actions.
Expanda Advanced Settings e ajuste os valores de Read Connection Timeout Period e Write Connection Timeout Period. O valor padrão para ambos os timeouts de leitura e escrita é 120 s, podendo ser configurado entre 1 e 3600 s.