일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 백준 알고리즘
- 코드스테이츠 백엔드 후기
- Java
- codestates 국비지원 1기 합격 후기
- 코드 스테이츠 백엔드 교육과정
- 자바
- 해시
- 코드스테이츠 백엔드 부트캠프 합격
- 코테 합격후기
- 겜스고
- 코드스테이츠 합격 후기
- 백내장 금감원
- 메서드
- 에이치엘비
- 금융감독원 민원신청
- CodeState 후기
- HLB
- 백내장 다초점렌즈 삽입술
- 백내장
- Spring
- 금감원
- 코드스테이츠 부트캠프 합격 후기
- 금감원 백내장 민원
- 코드스테이츠 백엔드 교육과정
- Code States 백엔드 합격 후기
- 금융감독원
- 보험금 지급거절
- Gamsgo
- 코드스테이츠 부트캠프
- 코드스테이츠 합격
Archives
- Today
- Total
개발하는 동그리
[Main Project] Nginx Load Balancer 설정 본문
반응형
로드 밸런서 설정 (서버가 죽었을 때 다른 서버에서 정상 작동)
event {
worker_connections 1024;
}
http {
include mime.types
// redirect all traffic to Https http 요청을 https 로 redirect
server {
listen 80;
server_name [server_ip];
return 301 https://$host$reqeust_uri;
}
server {
listen 443 ssl http2;
server_name [server_ip];
root /sites/demo;
index index.html
ssl_certificate /etc/nginx/ssl/self.crt
ssl_certificate_key /etc/nginx/ssl/self.key;
location / {
try_files $uri $uri/ = 404;
proxy_pass http://back-end; // <------- (1)
}
}
// --------------------------(2) ---------------------
upstream back-end {
server localhost:8080;
server localhost:8081;
}
// --------------------------------------------------
Load Balencer 방식 설정
- round-robin : 랜덤 (default)
- least-connected : 커넥션이 가장 적은 서버를 할당
- ip-hash : 클라이언트 IP를 해쉬한 값을 기반으로 특정 서버를 할당
}
// --------------------------(2) ---------------------
upstream back-end {
# least-conneced 설정
least-conn;
server localhost:8080; weight = 3;
server localhost:8081; max_fails = 5 fail_timeout=30s;
server localhost:8082; backup;
# IP hash 기반으로 하고 싶은 경우 설정
# ip-hash
}
// --------------------------------------------------
옵션
- weitht = n : 업스트림 서버의 비중을 나타내는데, 이 값을 2로 설정하면 설정하지 않은 다른 서버에 비해 두배 더 자주 선택된다.
- max_fails = n : n으로 지정한 횟수만큼 실패가 일어나면 서버가 죽은 것으로 간주한다.
- fail_timeout = n : max_fails가 지정된 상태에서 이 값이 설정한 시간만큼 응답하지 않으면 죽은것으로 간주한다.
- down : 해당 서버를 사용하지 않게 지정한다. (단, ip_hash; 지시어 설정에서만)
- backup : 모든 서버가 동작하지 않을 때 backup으로 표시된 서버가 사용되고, 그 전에는 사용되지 않는다.
반응형
'스테이츠 코드(백엔드) > Main Project' 카테고리의 다른 글
[Main Project] 내가 적용한 기술 설명 (4) | 2022.10.07 |
---|---|
[Main Project] 게시글 좋아요 구현 (0) | 2022.09.29 |
[Main Project] Spring Security + JWT 설정 (0) | 2022.09.29 |
[Main Project] AWS S3 사진 업로드 설정 (2) | 2022.09.29 |
[Main Project] @Convert : booleanToString (2) | 2022.09.29 |