우리의 그레이스케일 발표 방안
1 배경과 해결 방향
그레이스케일 발표는 주로 두 가지 큰 방향이 있다
시나리오
장점
결점
코드에서 만들기
유연하고 입도가 가늘다.코드 한 세트(환경) 운영 원가가 낮다
그레이스케일 논리 침입 코드
접속층에서 해요.
코드를 침입할 필요가 없음(적음);위험이 적다
다중 온라인 환경, 운영 원가가 높다
구체적인 응용 장면에서 벗어나 해결 방안을 이야기하는 것은 모두 깡패들이다.구체적인 비즈니스 시나리오:
2 구체적 실현 방안
2.1 액세스 계층 - > 웹 계층
접속층은nginx를 사용하여 IP나 쿠키를 바탕으로 분류할 수 있다. 우리는 비즈니스 ERP 시스템이기 때문에 사용자가 로그인하는 논리가 있기 때문에 쿠키를 바탕으로 하는 전략을 자연히 선택할 수 있다.쿠키의 분류 전략을 바탕으로 두 가지 실현 방안이 있다
2.2 웹 계층 - > 핵심 계층 모듈
현재 두 층 모듈 간의 결합 방식은 Zookeeper를 통해 이 부분의 그레이스케일 발표를 실현하는 것이고,caller,callee를 통해 고정된 노드 이름(구체적인 버전 번호를 쓸 수 있음)을 약정하여 실현하는 것이다.
3차원에서의 승급
3.1 그레이스케일 유지 관리 시스템
${index}. ${platform}.${module} 모듈과 기계의 대응 관계를 관리하기 위해 그레이스케일이 많은 기계를 ${platform}에 스테이지 플랫폼 이름을 추가하여 실험 환경을 나타냅니다.
실험 환경도 온라인 환경에 속하기 때문에 대응하는 모니터링을 늘려야 한다.
전체 유량의 기계는 실험 환경을 포함하지 않는 기계로 독립적으로 배치하고 전체 유량의 유량도 스테이지 기계에 떨어지지 않는다(nginx의upstream.conf 파일은 움직이지 않는다)
3.2 그레이스케일 컴파일 패키지 구축, 작업 배치
전체 데이터의 컴파일 패키지는 그레이스케일로 만들어진 패키지와 같고 버전 번호도 같다.
그레이스케일에만 배치된 작업 중 등록 노드 이름을 자동으로 업데이트합니다.
caller, callee의 ZK 노드 이름을 고정시키기 때문에 그레이스케일 배치 작업에 스테이지의 태그 논리를 추가하도록 강제합니다.
3.3nginx의 전송 논리
쿠키 요청 전달 증가location / {
# ...
if ($http_cookie ~* "SPECIALID.*|$") {
proxy_pass http://stage-cluster;
}
proxy_pass http://default-cluster;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSON
JSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다.
그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다.
저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.
location / {
# ...
if ($http_cookie ~* "SPECIALID.*|$") {
proxy_pass http://stage-cluster;
}
proxy_pass http://default-cluster;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.