재인쇄: http://onlyzq.blog.51cto.com/1228/557848
1. 폴링(기본값) 각 요청은 하나씩 다른 서버에 할당됩니다. 시간순으로 백엔드 서버가 다운되면 백엔드 서버가 자동으로 제거될 수 있습니다.
2. 가중치
는 폴링 확률을 지정하며, 백엔드 서버 성능이 고르지 않을 때 사용됩니다.
예:
업스트림 베이켄드 {
서버 192.168.159.10 무게=10;
서버 192.168.159.11 무게=10;
}
3. ip_hash
접속한 IP의 해시 결과에 따라 각 요청을 할당하여 각 방문자가 백엔드 서버에 고정적으로 접속할 수 있도록 하여 세션 문제를 해결할 수 있습니다.
예: 업스트림 resinserver{
ip_hash;
server 192.168.159.10:8080;
server 192.168.159.11:8080;
}
4. 공정(타사)
백엔드 서버의 응답 시간에 따라 요청을 할당하며, 응답 시간이 짧은 요청을 우선적으로 처리합니다. 업스트림 resinserver{
서버 server1;
서버 server2;
fair;
}
5.url_hash(타사)접근한 URL의 해시 결과에 따라 요청을 분산하여 각 URL이 동일한 백엔드 서버로 연결되도록 백엔드 서버를 캐시할 때 더욱 효과적입니다. 예: 업스트림에 해시 문을 추가합니다. 가중치와 같은 다른 매개변수는 서버 문에 쓸 수 없습니다. squid1 :3128;서버 squid2:3128;hash $request_uri;
hash_method crc32;
}
팁:
업스트림 resinserver {#로드 밸런싱 장치의 IP 및 장치 상태 정의 ip_hash;server 127.0.0.1:8000 down;server 127.0.0.1:8080 Weight=2;server 127.0.0.1 :6801;
server 127.0.0.1:6802 backup;
}
필요한 서버에
proxy_pass http://resinserver/;를 추가하세요. 로드 밸런싱을 사용하려면 각 장치의 상태는 다음과 같이 설정됩니다. 1.down은 이전 서버가 일시적으로 로드에 참여하지 않음을 의미합니다. 2.weight 기본값은 1입니다. 가중치가 클수록, 짐의 무게가 더 커집니다. 3.max_fails: 허용되는 요청 실패 횟수는 기본적으로 1입니다. 최대 횟수를 초과하면 Proxy_next_upstream 모듈에서 정의한 오류가 반환됩니다.
4.fail_timeout: max_fails 실패 후 일시 중지 시간입니다.
5.백업: 백업이 아닌 다른 머신이 모두 다운되거나 사용 중일 때 백업 머신을 요청하세요. 따라서 이 기계의 압력은 가장 낮습니다.
nginx는 사용되지 않는 서버에서 사용할 수 있도록 동시에 여러 그룹의 로드 밸런싱 설정을 지원합니다.
client_body_in_file_only를 On으로 설정합니다. 클라이언트 게시물에서 전송한 데이터를 파일에 기록하여 디버깅할 수 있습니다. client_body_temp_path 기록 파일의 디렉터리를 3단계까지 설정할 수 있습니다. 위치는 URL과 일치할 수 있습니다. 리디렉션을 수행하거나 새로운 프록시 로드 밸런싱을 수행할 수 있습니다
위 내용은 관련 내용을 포함하여 Nginx 업스트림(전송)의 배포 방법을 소개하고 있어 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.