내 서버로 들어오는 트래픽을 복제/미러링해야 합니다.
즉, N개의 백엔드 서버 A1 A2 ... An(n>=2)과 역방향 프록시 및 로드 밸런서인 nginx가 있습니다.
Nginx로 들어오는 모든 트래픽은 Ax와 Ay(x!=y)로 리디렉션됩니다.평행한, 서버 중 하나가 다운되면(timeout 또는 5xx) 다른 서버의 응답을 즉시 사용하고 결과를 클라이언트에 반환할 수 있습니다.
트래픽을 미러링하여(재시도하지 않음)하지만 중복된 요청을 병렬로 보냅니다.), 중복성을 생성할 수 있습니다. 이는 둘 이상의 백엔드 서버가 동시에 하나의 요청을 처리할 수 있음을 의미합니다.
30ms 이내에 클라이언트에 응답해야 합니다. retries=1로 설정하면 시간 제한을 15ms(보관하기 어려움)로 설정해야 하므로 트래픽 미러링이 해결책이 될 수 있습니다.
가능합니까?
답변1
귀하의 질문에는 일반적으로 답변 자체가 거의 있습니다. 당신이 설명하는 것은 상태 확인을 통한 로드 밸런싱일 뿐입니다. 이는 nginx를 사용하면 확실히 가능하며 이러한 설정은 해당 문서에 설명되어 있습니다.http://nginx.org/en/docs/http/load_balancing.html