2014-09-12 1 views
0

MEANjs 응용 프로그램을 프로덕션 환경에 배포하려고합니다.
지금까지 jenkins, git, rsync 등을 사용하여 프로젝트를 원격 서버에 복사했습니다. Meanjs hotswap 배포

최종 단계에서 난 그냥

  1. 정지 myMeanjsApp이
  2. 응용 프로그램의 새 버전으로 폴더를 교체
  3. 전화가
myMeanjsApp을 시작 호출해야

하지만 그건 내가 피하려고하는 다운 타임을 의미합니다
1. 어떻게 피할 수 있습니까?
2. 이에 대한 우수 업무 흐름이 있습니까?

나는 this을 보았지만 그 방법이 으로가는 지 확실하지 않거나이 작업을 수행하는 다른 간단한 방법이 있습니까?

답변

0

일반적으로 대규모 웹 응용 프로그램은 업그레이드 된 버전의 소프트웨어를 실행하는 새 가상 컴퓨터를 만들어 업그레이드됩니다. 그런 다음 새 가상 시스템이로드 밸런서에 수동 또는 자동으로 추가됩니다. 그런 다음 이전 버전을 실행하는 가상 시스템이로드 밸런서 풀에서 제거되고 이전 vms에 대한 모든 진행중인 요청이 완료되면 vms가 삭제 될 수 있습니다. 예 : ELB 및 자동 크기 조정 그룹과 같은 AWS 기능을 사용하면 소프트웨어를 업그레이드 할 수 있습니다.

새 버전을 다른 포트로 시작하여 단일 서버가있는 경우에도 동일한 작업을 수행 할 수 있습니다.

코드를 대체해야하는 경우 npm npm 모듈은 공정한 접근 방식입니다.

일부 응용 프로그램의 경우 마지막 연결이 완료되면 새로운 연결을 수락하지 않고 새 버전으로 다시 시작하는 옵션이있을 수 있습니다.

일부 응용 프로그램의 경우 이전 버전을 죽이고 언제든지 새 버전을 시작할 수 있습니다. 그것은 모두 귀하의 요구 사항 및 환경에 따라 다릅니다.

관련 문제