1. 폴링(기본값)
각 요청은 시간순으로 하나씩 다른 백엔드 서버에 할당됩니다. 백엔드 서버가 다운되면 자동으로 제거될 수 있습니다.
업스트림 백서버 {
server 192.168.0.14;
server 192.168.0.15;
}
2. 폴링 확률을 지정합니다. 가중치는 액세스 비율에 비례합니다. 백엔드 서버 성능이 고르지 않을 때 사용됩니다.
server 192.168.0.14 Weight=10;
server 192.168.0.15 Weight=10;
}
3. 각 요청에 따라 분산됩니다. 액세스한 IP의 해시 결과에 추가하여 각 방문자가 백엔드 서버에 대한 고정 액세스 권한을 갖게 하여 세션 문제를 해결할 수 있습니다.
업스트림 백서버 {
서버 192.168.0.14:88;
서버 192.168.0.15:80;
}
4.공정(타사)
백엔드 서버의 응답 시간에 따라 요청을 할당하고, 응답 시간이 짧은 요청부터 먼저 할당합니다.
upstream backserver {
server server2;
fair;
}
5. url_hash(타사)
해시 결과에 따름 accessed url 각 URL이 동일한 백엔드 서버로 연결되도록 요청을 배포합니다. 백엔드 서버를 캐시할 때 더 효과적입니다.
업스트림 백서버 {
server squid2:3128;
hash $request_uri;
hash_method crc32;
}
필요할 때 로드 밸런싱 사용
proxy_pass http://backserver/;
ip_hash;
server 127.0.0.1:9090에 추가되었습니다(다운은 이전 서버가 일시적으로 작동하지 않음을 의미합니다. 참여 로드)
server 127.0.0.1:8080 Weight=2; (가중치 기본값은 1입니다. 가중치가 클수록 로드 가중치도 커집니다.)
server 127.0.0.1:6060;
server 127.0.0.1: 7070 백업; (다른 비백업 머신이 모두 다운되거나 사용 중일 때 백업 머신을 요청하세요.)
}
max_fails: 허용되는 요청 실패 횟수는 기본적으로 1입니다. 초과하면 Proxy_next_upstream 모듈에서 정의한 오류가 반환됩니다.
fail_timeout: max_fails 실패 후 일시 중지 시간
위 내용은 내용의 측면을 포함하여 nginx 클러스터 클라이언트 할당 전략을 소개합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.