Squid retry_on_error: códigos de estado e rutas alternativas
Use Squid retry_on_error dentro do seu ámbito documentado de estados e destinos alternativos, en lugar de tratalo como un axuste universal de repetición de solicitudes.
Hai unha opción de Squid chamada retry_on_error, pero o nome é máis amplo que a súa interpretación útil. Non significa que cada solicitude fallida se repita indefinidamente ata que a páxina funcione.
Nas versións que admiten esta directiva, está desactivada por defecto. A lista de reintentos documentada é 403, 500, 501, 502, 503 e 504, e proba a solicitude a través doutro destino que funcione. Isto é especialmente relevante nunha xerarquía con rutas de reenvío alternativas. Non é só un reintento temporizado do mesmo socket ao mesmo servidor.
Nomee primeiro o fallo
Un rexeitamento ao conectar cun proxy, un fallo de autenticación do proxy, un erro HTTP da orixe e unha resposta cortada despois de comezar a entrega non presentan a mesma oportunidade de reintento. Non espere que un só axuste trate os catro igual.
Para unha saída privada, decida tamén se unha ruta alternativa é aceptable. Outro pai pode ter outro enderezo público de orixe, outra política de autenticación ou outra localización de rede. O éxito a través desa alternativa pode violar o motivo polo que se escolleu o primeiro pai.
As operacións da aplicación achegan outra preocupación: repetir unha solicitude pode repetir o seu efecto. O cliente e o servidor necesitan unha semántica de reintento axeitada, sobre todo para operacións que crean ou cambian datos. Un axuste de proxy non substitúe o tratamento a nivel de aplicación de resultados incertos.
Lea a directiva para a súa versión exacta; a referencia enumera a dispoñibilidade e o comportamento por defecto. Teña tamén presente os prazos da solicitude e a espera total visible para o usuario. Un intento de reenvío adicional pode consumir o tempo restante sen producir un resultado mellor.
Ao investigar fallos intermitentes, rexistre o estado, o pai ou destino escollido e a secuencia de intentos. Se non, os reintentos poden facer que un problema recorrente de encamiñamento pareza un sitio web xeralmente lento mentres agochan a ruta que realmente fallou.