nginx 부하 균형 5 가지 방식 (전재)

2396 단어 nginx 부하 균형
1. 폴 링 (기본 값)
 
 
 
모든 요청 은 시간 순서에 따라 서로 다른 백 엔 드 서버 에 하나씩 배정 되 며, 백 엔 드 서버 다운 이 떨 어 지면 자동 으로 제거 할 수 있 습 니 다. 
 
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 등 다른 매개 변 수 를 기록 할 수 없습니다. hashmethod 는 hash 알고리즘 을 사용 합 니 다. 
 
upstream backend {  
server squid1:3128;  
server squid2:3128;  
hash $request_uri;  
hash_method crc32;  
}  

tips: 
 
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 에서 온 데 이 터 를 파일 에 기록 하여 debug 로 사용 할 수 있 습 니 다. 
 
client_body_temp_path 기록 파일 의 디 렉 터 리 를 최대 3 층 까지 설정 할 수 있 습 니 다. 
 
location 에서 URL 을 일치 시 킵 니 다. 방향 을 바 꾸 거나 새로운 프 록 시 부하 균형 을 이 룰 수 있 습 니 다.

좋은 웹페이지 즐겨찾기