upstream ffaso-server {
ip_hash;
server localhost:3000;
server localhost:3001;
}
server {
access_log /var/log/nginx/reverse-access.log;
error_log /var/log/nginx/reverse-error.log;
location / {
proxy_pass http://example-server;
}
}
Load balancing methods
- round-robin(디폴트) - 공평하게 돌아가면서 분배
- hash - 해시한 값으로 분배, 사용하려면 "hash <키>" 형태를 사용
- ip_hash - 아이피로 해싱하여 분배
- random - 랜덤 분배
- least_conn - 연결 수가 가장 적은 서버를 선택해서 분배, 가중치를 고려할 수 있다.
- least_time - 연결 수가 가장 적으면서 평균 응답시간이 가장 적은 쪽을 선택하여 분배
참고: http://nginx.org/en/docs/stream/ngx_stream_upstream_module.html
Parameter
- weight - 가중치를 둬서 더 많이 가도록 설정
- max_conns - 최대 연결 한계
- max_fails - 최대 실패 한계, 최대 실패 횟수에 도달하면 서버가 죽은걸로 간주
- fail_timeout - 시간을 정함. 시간을 넘어선다면 서버가 죽은걸로 간주
- backup - 백업 서버로 간주하고 다른 메인 서버가 죽을 경우 동작. hash, random 일 경우 무의미
- down - 표시한 서버는 사용하지 않음
'개발바닥 > BackEnd' 카테고리의 다른 글
PM2를 사용하여 Multi-Node 실행 (0) | 2021.11.08 |
---|---|
무료 SSL인증서 발급 with Let's Encrypt (0) | 2021.11.08 |
Deno에 대해서 알아보자 (0) | 2021.01.08 |