Microservices에 대한 간단한 소개
마이크로 서비스는 Continuous Integration and DevOps가 수행되는 시스템을 위해 생성된 현대적인 아키텍처입니다.
어플리케이션을 단일 기능을 가진, 잘 정의된 인터페이스를 가진 형태로 분할하는 엔니지어링 방식으로, 이를 통해 각각의 단일 기능의 어플리케이션(Microservice)가 서비스에 대한 전체 라이프사이클(개발 및 운영)을 주도하는 작은 팀에 독립적으로 배포 되고 운영되는 방식을 의미합니다.
마이크로서비스는 사람과 조직간의 커뮤니케이션을 최소화하고, 변경 범위와 이에 대한 리스크를 최소화 함으로써 딜리버리를 가속화 합니다.
Microservices : 어플리케이션 아키텍처 스타일
- 어플리케이션은 여러개의 독립적인 Microservice들로 분할
- Microservice는 자체 비즈니스 로직 및 데이터 저장소를 관리
- Microservice는 API를 통해 외부의 데이터에 액세스
- 지리적으로 다른 Microservice간에 캐싱 사용
Monolithic vs. Microservices
마이크로 서비스는 기술과 마찬가지로 팀 프로세스와 조직에 관한 것입니다. 실제로, 팀이 Node.js, Go, Scala, Java ™ 등 다른 스택을 사용하고, 이러한 마이크로 서비스의 가장 큰 장점 중 하나는 목적에 가장 부합하는 기술 스택에 따라 각 마이크로 서비스에 대한 기술 결정을 내릴 수 있다는 것입니다.
또한 마이크로 서비스를 사용하면 팀별 별도 배포 일정을 제어 할 수 있으며, 팀은 각각 지속적인 배송을 통해 마이크로 서비스를 개선시키는 데 주력 할 수 있습니다. 단 강력한 Delivery Pipeline 환경이 제공되지 않은 경우 마이크로 서비스 시스템을 사용하지 마십시오.
Microservices의 가치(Benefits)- 개발자 측면
- 기능을 유지보수 하거나 추가 용이 : small code
- 기존 기술 또는 최적의 언어 사용 : 팀별 각각 최적의 기술 선택
- IDE의 배포 시간과 로드 시간 향상
- 디버깅이 보다 쉽움
- 팀별 각 서로 독립적인 작업 가능
- 팀의 독립성을 보장 : 설계에서부터 개발, 배치, 운영 및 폐기까지 자율권
- 병목 현상을 쉽게 조정가능
이러한 Microservice를 적용/운영할 수 있는 플랫폼으로 Bluemix가 강력하며, 아래 Bluemix DevOps에서 제공하는 서비스들을 활용하여 개발합니다.
https://console.ng.bluemix.net/catalog/?category=devops
그리고 IBM Architecture Center - Microservices 참조 아키텍처를 참고하여, 각자의 환경에 적합한 아키텍처를 구성할 수 있습니다.
https://www.ibm.com/devops/method/content/architecture/omnichannelArchitecture
'IBM - old > IBM Bluemix' 카테고리의 다른 글
[Bluemix] 간단한 실습을 통한 Blockchain 개념 이해하기 (0) | 2017.02.25 |
---|---|
[Bluemix]Cloud 와 Legacy 간 보다 안전한 보안 연결을 위한 Secure Gateway 서비스 (0) | 2016.08.01 |
처음 사용자를 위한 IBM Bluemix 한글 튜토리얼 (0) | 2016.06.07 |
막무가내로 시작해보는 cloud - IBM Bluemix - 5. 서비스 추가 및 연결 (0) | 2016.06.07 |
막무가내로 시작해보는 cloud - IBM Bluemix - 4. Eclipse 를 활용한 IBM Bluemix 연동/개발 (0) | 2016.06.07 |
댓글