Open jinyoung opened 6 years ago
이게 process service의 application.yml 라 가정하고
API 참조 방법 예시:
@FeignClient(serviceId="definition", version="[1.0,2.0)")
혹은
application.yml 에서
eureka:
metadata:
version: 1.1 # 나의 버전
ribbon:
reference-versions:
definition: # definition service 의 참조는 1.0 이상 ~ 2.0 미만
more-than: 1.0
below: 2.0
semantic-entity: # semantic-entity service 의 참조는 정확히 1.1
exactly: 1.1
order: # order service 의 참조는 1.1 이상
more-than: 1.1
컴포넌트 버저닝에서나 Semantic Versioning 이 필요할듯, 그냥 모든 마이크로서비스는 설계 속성의 "자치성"에서 그 단위에서 항상 backward compatibility 를 준수하는 것이 맞느거 같고, API versioning 만 잘하면 될것 같음... 따라서 발생하는 문제는, 호출 API의 업글됐을때 새버전은 새버전끼리의 API로 놀아야 하므로... API versioning style 을 어째할것인가가 문제가 되네... 플랫폼에서 할건 없고 Application 만들때 이를 준수하여 만드는걸로 하는게 맞겠음
유엔진 클라우드2.0
플랫폼 검증을 위한 다음의 실제 운영 사례 구축:
아래는 현재 테스트 범위에서 벗어나지만 향후 이들도 Stack 으로 관리해야 함
Process Service --> Cloud Service (Class 동적 생성시에 호출함)
Process Service ==> gitlab
Process Service --> java-reversion Service
화살표 범례: MS-->MS, MS==>Infra Service
예시:
Issues: