참고: 이는 단일 서버의 상황만 설명합니다. Docker 컨테이너는 tomcat을 통해 외부 서비스를 제공합니다. 그림, 역방향 프록시 서버가 요청을 보내는 경우 요청이 Nginx에 도달한 후 서비스 A의 업스트림과 일치한다고 가정하고 nginx.conf의 해당 배포 알고리즘에 따라 포트 10100 또는 10101에 할당됩니다.
2. 10100에 해당하는 docker 컨테이너의 tomcat이 정지된다고 가정합니다. (일반적으로 컨테이너가 보유한 사용 가능한 메모리가 부족하여 컨테이너의 tomcat이 종료됩니다.)
3. 이번에는 포트 10100에 할당되어 404가 발생합니다.
4. 이때 트래픽을 복사하고 시간 초과를 추가하면 10100으로 요청이 전송됩니다. timeout 또는 404 이후에는 복사된 트래픽을 포트 10101로 보냅니다.
이상에서는 트래픽 복제를 통해 특정 서비스 노드의 응답이 없는 문제를 해결하는 방법을 관련 내용을 포함하여 소개했습니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.