2017-12-30 44 views
0

Java 기반의 마이크로 서비스 세트를 배치하려고합니다. 나는 여부에 관한 혼란 스러워요 :마이크로 서비스 배포 --- 간단한 항아리와 도커 컨테이너

  1. 는 JAVA 기반의 고정 표시기 컨테이너를 실행 "[JAR_NAME] -jar 자바 '를 통해 그들과 같은 간단한 항아리를 실행합니다.
  2. 전쟁으로 사용하십시오. 내가 제안 가장 좋은 방법 : 사전에

    감사를 사용하는 경우이 나에게 두통을 많이 저장하므로

나에게 각 구현의 장단점을 제공하십시오.

+0

분명히 부도덕 한 사람 – Remario

+0

이것은 의견을 바탕으로 한 질문/답변입니다. 장점/단점은 모든 사람마다 다를 수 있으므로 대답하기가 어렵습니다. –

+0

항아리 접근법을 사용하면 어떻게 될까요? Docker가 제공하는 장점 들과는 다른가요? 신청서를 확장해야하는 경우 어떻게해야합니까? 항아리가 도커처럼 부드럽게 나를 허락할까요? 그렇다면 어떻게? –

답변

0

확실히 Docker. 컨테이너 화를 사용하면 유연성이 극대화됩니다.

첫 번째 방법은 jar 파일이 Java에 종속적이라는 것입니다. 새 VM을 만들 때마다 응용 프로그램을 지원하는 수정 세트를 설치해야합니다. 두 번째 방법에서

혜택,

첫째, 모든 것이 하나의 컨테이너에 될 것입니다.

모든 필수 소프트웨어를 컨테이너에 설치할 수 있으며 해당 컨테이너는 모든 VM의 사용자 일 수 있습니다. 각 마이크로 서비스에 대해 원하는 Java를 사용할 수있는 유연성이 있습니다. 오직 도커를 설치하고 모든 것이 작동 될 것입니다.

둘째, 개발 생산성 패리티

당신 일 microservice 아키텍처와 12-factor 애플 리케이션의 매우 많은합니다. 그런 다음 도커는 많은 요소를 지원하는 데 도움이됩니다. Java 및 기타 소프트웨어는 모든 환경에서 고유 할 것입니다. 즉 런타임 환경의 일부 버전 불일치로 인해 Prod가 아닌 QA에서 작동하는지 여부를 알 수 있습니다.

셋째, 유연성이 microservice 아키텍처에 가면

, 왜에만 자바. GO, Python 또는 다른 언어로 이동할 수도 있습니다. 이 때, 각 VM에 각 플랫폼에 대한 런타임 환경을 설치하는 대신 컨테이너에 마이크로 서비스를 갖는 것이 매우 유용합니다.

마지막, 배포 용이성은

당신은 하나의 명령에 mivroservice의 100 단위를 실행하는 고정 표시기-작성하거나 고정 표시기 떼를 사용할 수 있습니다.