Política de Tempo Limite
A API de Raspagem Universal emprega uma política de tempo limite de dois níveis para tempos limite, projetada para garantir a execução controlável de solicitações, estabilidade do sistema e gerenciamento eficiente de recursos. Ao projetar duas estratégias de tempo limite independentes, a API pode fornecer desempenho robusto em ambientes de rede complexos e cenários de análise de páginas dinâmicas, evitando efetivamente falhas do sistema causadas por esgotamento de recursos ou longas esperas.
1. Tempo Limite de Execução Global
Definição: O tempo limite de execução global é uma política que limita o tempo de execução cumulativo de todas as instruções em uma solicitação da API.
Limiar de Tempo Limite: 180 segundos
Escopo:
- Todas as operações da série
wait_xxx
(comowait_for_selector
ouwait_for_event
) no conjunto de instruçõesjs_instructions
. - Este limite abrange o tempo de espera potencial durante a execução da instrução, garantindo que tarefas de longa duração não ocupem indefinidamente os recursos do sistema.
Comportamento de Tempo Limite:
- Quando o tempo de execução cumulativo atingir 180 segundos, o sistema interromperá à força todo o processo de solicitação da API e retornará uma resposta de erro de tempo limite.
- Esta política garante um limite de tempo de execução para a API, evitando o abuso de recursos devido a instruções complexas ou configuração incorreta.
2. Tempo Limite de Carregamento da Página
Definição: O tempo limite de carregamento da página concentra-se no limite de tempo para as fases de inicialização do navegador e carregamento de recursos da página.
Limiar de Tempo Limite: 30 segundos (valor fixo)
Escopo:
- O processo de inicialização da instância do navegador (como Puppeteer ou outros drivers de navegador).
- Carregamento de recursos da página, incluindo HTML, CSS, JavaScript e outros recursos de rede.
Comportamento de Tempo Limite:
- Se o acesso à URL falhar ou o tempo de carregamento de recursos da página exceder 30 segundos, o sistema retornará imediatamente uma resposta de erro sem esperar pelo tempo limite global.
- Esta política visa identificar rapidamente páginas de destino inacessíveis e evitar longas esperas por recursos inválidos.
3. Regras de Prioridade de Tempo Limite
- O tempo limite de carregamento da página tem maior prioridade e pode interromper a execução da solicitação antes do tempo limite global.
- Quando ocorre um tempo limite durante a fase de carregamento da página, o sistema interromperá imediatamente o processo de solicitação sem entrar na fase subsequente de execução de instruções.