마이크로 서비스 아키텍처에 대해 생각하고 있었고 개발 환경에 좋은 모범 사례가 있는지 궁금해했습니다.마이크로 서비스를위한 간소화 된 개발 환경을 구축하는 방법
내 작업 가정은 각 마이크로 서비스가 격리되어 있고 배포가 용이하도록 자체의 저장소에 살 것입니다. 나는 또한 각 개발자가 작업중인 repo의 포크를 만들 것이라고 가정합니다.
여러 마이크로 서비스와 관련된 문제에 대해 제가 생각하는 문제가 발생합니다. 예를 들어, 하나의 마이크로 서비스에 영향을 미치는 결함과 그것이 다른 마이크로 서비스를 적절하게 소비하는 방법이 있습니다.
n 개의 프로젝트가 결함에 관여한다고 가정하면, n 개의 저장소를 체크 아웃하고 함께 작동하도록 구성해야합니다. 각각 Vagratefile 및 Dockerfile이 있으면 n 개의 VM을 실행하게됩니다. 이상적으로 당신은 1 개의 Vagrant VM만을 가질 것이고 각 serivce는 동일한 VM에서 새로운 Docker 인스턴스가 될 것입니다.
git 하위 모듈이 포함 된 마스터 저장소/프로젝트가 작동 할 수 있습니다. 문제는 일반적인 마스터 repo/프로젝트를 만든 다음 하위 모듈이 개발자의 포크가 아니라 업스트림을 가리킨다는 것입니다.
저는 현재 일부 설정, 방랑과 무화과가있는 마스터 프로젝트가 트릭을 할 수 있다고 생각합니다. 현재이 접근법을 구현하는 두 가지 방법을 고려 중입니다.
- 사용자의 GitHub의 계정을 기반으로 서브 모듈을 를 생성하는 스크립트를 제공 등 ../project_id에서 위치해야합니다 일부 디폴트 즉 project_1와
- 을 설정을 제공,이 의 원격를 만들 것 사용자의 포크와 업스트림 프로젝트의 리모컨.
다른 사람이이 문제를 해결했거나 양호한 워크 플로우를 가지고 있습니까?
boot2docker 내 방랑 파일을 포함하고 있습니다. http://stackoverflow.com/questions/27408510/developer-environment-how-to-call-consume-other-micro-services –
당신은 힘내를 다루는 방법을 찾았습니까? 흥미로운 질문입니다. –