Nginx 부하 균형 을 이용 하여 웹 서버 업데이트 에 영향 을 주지 않 습 니 다.

그 아름 다운 밤 들 을 기억 하 십 니까
당신 은 작은 영 화 를 보고 자 려 고 했 습 니 다. 이때 갑자기 오늘 저녁 이 서버 업데이트 날 이라는 것 이 생각 났 습 니 다. 당신 은 새벽 시간 에 최신 코드 를 서버 에 업데이트 하여 내일 모두 가 잠 에서 깨 어 나 사 이 트 를 열 어야 합 니 다. 어제 의 bug 가 모두 없어 진 것 을 발견 할 수 있 습 니 다.이때 당신 은 순간 영 화 를 볼 흥 이 없어 졌 습 니 다. 이것 은 운영 자의 일상 이 겠 죠?
왜 새벽 에 서버 를 업데이트 해 야 합 니까?웹 개발 을 한 사람 은 모두 알 고 있 을 것 입 니 다. 비록 당신 이 개발 한 시스템 이 사용자 가 별로 사용 하지 않 지만 대낮 에 생산 환경 서버 를 업데이트 하지 못 할 것 입 니 다. 서버 가 2 분 동안 중단 할 수 있 는 영향 이나 우리 가 생각 하 는 '생산 환경' 이라는 단 어 는 성신 이 므 로 함부로 더 럽 혀 서 는 안 됩 니 다. 그래서..우 리 는 항상 새벽 에 놓는다.
당신 은 '재해 대비', '타지 다 활', '쌍 기 열 비' 라 는 말 을 들 어 본 적 이 있 습 니까?
'계란 을 한 바구니 에 넣 으 면 안 된다' 는 것 을 잘 알 고 있 습 니 다. 우리 개발 에서 도 마찬가지 입 니 다. 만약 에 시스템 데이터 와 운영 상태 에 대해 조금 이라도 요구 하 는 프로젝트 라면 시스템 이 몇 분 동안 갑자기 끊 어 서 는 안 됩 니 다. 이 로 인 한 결 과 는 상상 할 수 없습니다.그래서 우리 가 개발 할 때 '재해 대비' 라 는 단어 가 있 을 것 이다. 우 리 는 이런 예방 할 수 없 는 사건 이 발생 하 는 것 을 고려 해 야 한다. 그래서 우 리 는 시스템 을 여러 대의 서버 에 배치 하 는 경우 가 많다. 이것 이 바로 '계란' 의 예 이다. 즉, 이른바 '쌍 기 열 준비' 는 우리 시스템 의 높 은 사용 을 확보 하고 한 서버 가 끊 으 면뒤에 있 는 이 건 충분히 감당 할 수 있어!마치 프로그래머 처럼 당신 은 그 가 매일 할 일이 없다 고 생각 합 니 다. 매우 화가 나 서 당신 의 지도 자 를 찾 아가 서 말 했 습 니 다. xxx 는 매일 할 일이 없 는데 왜 그 는 나 보다 월급 이 높 습 니까?흐흐 흐 흐..
... 에 있다 제로 부터 자바 - CentOS 에서 Nginx + Tomcat 부하 균형 설정 이 글 에서 저 희 는 두 대의 서버 를 설정 하여 부하 균형 을 이 루 었 고 사용자 정의 가중치 를 설정 할 수 있 습 니 다. 사실은 이때 Nginx 는 한 서버 를 업데이트 하 는 것 을 지원 할 때 이 서버 가 끊 긴 것 을 감 측 했 습 니 다. 요청 을 모두 다른 서버 로 전송 하 는 것 입 니 다.그런데 나 는 Nginx 의  upstream  설정 할 때 백업 서버 를 설정 하 는 더 좋 은 방법 이 있 습 니 다.backup  무슨 귀신 이 야?
백업홈 페이지 설정 보기 (http://nginx.org/en/docs/http/ngx_http_upstream_module.html) 이 모양 입 니 다.
  • backup : marks the server as a backup server. It will be passed requests when the primary server are unavailable.테스트 해 보 겠 습 니 다. 우리 의 지난 부하 균형 설정 을 기억 하 십 니까? 나 는 Tomcat 3 을 추가 한 다음 에 안쪽 웹 페이지 출력 3333333333 을 합 니 다.

  • 텍스트 버 전 설정:
     
  • upstream backend {
  • server 192.168.198.128:8080 weight=1;
  • server 192.168.198.128:8090 weight=4;
  • server 192.168.198.128:8091 backup;
  • }
  •  
  • server {
  • listen 80;
  • server_name localhost;
  •  
  • #charset koi8-r;
  •  
  • #access_log logs/host.access.log main;
  •  
  • location / {
  • root html;
  • index index.html index.htm;
  • proxy_pass http://backend;
  • }

  • 내 가 먼저 필요 한 작은 설명 을 하나 하 겠 다.
  • 192.168.198.128:8080  서버  1  ,다섯 번 의 요청 이 이곳 에 올 때마다;
  • 192.168.198.128:8090  서버  2  ,다섯 번 부탁 할 때마다 네 번 씩 온다.
  • 192.168.198.128:8091  서버  3  ,백업 서버 입 니 다.

  • 이때 1, 2, 3 모두 정상적으로 시작 되 었 습 니 다. 저 는 페이지 를 새로 고 칩 니 다. 가중치 규칙 에 따라 요청 1 2 하고 요청 하지 않 습 니 다 3( ).
    그 다음 에 저 는 1 을 멈 추 었 습 니 다. 2 3 모두 정상적으로 작 동 했 습 니 다. 저 는 페이지 를 새로 고 쳤 습 니 다. 이때 모든 요청 은 2 이 고 요청 하지 않 았 습 니 다 3( ).
    그 다음 에 나 는 1, 2 를 모두 멈 추고 3 정상적으로 시작 했다. 나 는 페이지 를 새로 고치 고 모든 요청 을 3( ) 에 전달 했다. 그림 을 보 자.
    나 는 다시 차례대로 1 2 를 시 작 했 고 모든 요 구 는 가중치 규칙 에 따라 분배 되 었 다.모든 정상 서버 가 끊 겼 을 때 시스템 은 여전히 사용 가능 합 니 다. 이것 이 백업 서버 의 용도 입 니 다!
    총괄: 무 통 업데이트
    백업 서버 를 설정 한 후, 당신 은 더 이상 새벽 에 일어나 서 서버 를 업데이트 하지 않 아 도 됩 니 다. 당신 이 원 하 는 시간 에 업 데 이 트 를 하고 싶 은 시간 에 업 데 이 트 를 하 세 요. 누 구 를 사랑 하 세 요!정말 통 증 이 없고 통 증 이 없고 통 증 이 없 으 며 끊임없이 네트워크 를 통 해 서버 를 다시 시작 할 수 있 습 니 다.
    자, 씻 고 잘 게 요. 드디어 작은 영 화 를 보 러 갈 수 있 게 됐어 요..
     
    http://blog.mayongfa.cn/

    좋은 웹페이지 즐겨찾기