Nginx 의 upstream 은 현재 5 가지 배분 방식 을 지원 합 니 다.
모든 요청 은 시간 순서에 따라 서로 다른 백 엔 드 서버 에 하나씩 배정 되 며, 백 엔 드 서버 다운 이 떨 어 지면 자동 으로 제거 할 수 있 습 니 다.
2. weight 는 폴 링 확률 을 지정 하고 weight 와 방문 비율 이 정비례 하여 백 엔 드 서버 의 성능 이 고 르 지 않 은 경우 에 사용 합 니 다.예 를 들 면:
다음은 코드 세 션: upstream bakend { server 192.168.0.14 weight=10; server 192.168.0.15 weight=10; }
3、ip_hash
모든 요청 은 ip 에 접근 하 는 hash 결과 에 따라 분 배 됩 니 다. 모든 방문객 이 백 엔 드 서버 에 고정 적 으로 접근 하면 session 문 제 를 해결 할 수 있 습 니 다.
예 를 들 면:
다음은 코드 세 션: upstream bakend { ip_hash; server 192.168.0.14:88; server 192.168.0.15:80; }
4. fair (제3자)
백 엔 드 서버 의 응답 시간 에 따라 요청 을 분배 하고 응답 시간 이 짧 은 우선 분 배 를 합 니 다.
다음은 코드 세 션: upstream backend { server server1; server server2; fair; }
5. url hash (제3자)
url 에 접근 한 hash 결과 에 따라 요청 을 할당 합 니 다. 모든 url 을 같은 백 엔 드 서버 로 지정 하고 백 엔 드 서버 가 캐 시 일 때 유효 합 니 다.
예: upstream 에 hash 문 구 를 추가 하고 server 문 구 는 weight 등 다른 매개 변 수 를 기록 할 수 없습니다. hash method 는 hash 알고리즘 을 사용 합 니 다.
다음은 코드 세 션 입 니 다. upstream backend { server squid1:3128; server squid2:3128; hash $request_uri; hash_method crc32; } upstream bakend {\ # 부하 균형 장치 의 Ip 및 장치 상 태 를 정의 합 니 다. ip_hash; server 127.0.0.1:9090 down; server 127.0.0.1:8080 weight=2; server 127.0.0.1:6060; server 127.0.0.1:7070 backup;
부하 균형 을 사용 해 야 하 는 server 에 추가
다음은 코드 세 션: proxy pass http://bakend/;
모든 장치 의 상태 설정:
1. 다운 은 목록 앞의 server 가 부하 에 잠시 참여 하지 않 음 을 표시 합 니 다.
2. weight 는 기본적으로 1. weight 가 클 수록 부하 의 가중치 가 커진다.
3. max fails: 요청 실패 횟수 를 기본 값 으로 1. 최대 횟수 를 초과 하면 proxy next upstream 모듈 에서 정의 한 오 류 를 되 돌려 줍 니 다.
4. fail timeout: max fails 회 실패 후 일시 정지 시간.
5. backup: 다른 모든 비 backup 기기 다운 이나 바 쁠 때 backup 기 계 를 요청 합 니 다. 그래서 이 기계 의 압력 이 가장 가 볍 습 니 다.
nginx 는 여러 그룹의 부하 균형 을 동시에 설정 하여 사용 하지 않 는 server 에 사용 할 수 있 도록 지원 합 니 다.
client body in file only 는 On 으로 설정 되 어 있 습 니 다. client post 에서 온 데 이 터 를 파일 에 기록 하여 debugclient body temp path 로 기록 파일 을 설정 하 는 디 렉 터 리 는 최대 3 층 디 렉 터 리 를 설정 할 수 있 습 니 다.
location 에서 URL 을 일치 시 킵 니 다. 방향 을 바 꾸 거나 새로운 프 록 시 부하 균형 을 이 룰 수 있 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
성공할 때까지 명령 실행최근에 유용한 간단한 BASH 패턴: Run command every time it fails until it doesn't fail. 예시 작은 배치로 수십만 개의 레코드를 내보내야 하는 장기 실행 작업이 있었습니...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.