본문 바로가기
나는 모델러다

Polyglot

by kooangelo 2025. 2. 12.

Microservice를 식별하는 여러 기준이 있다. Biz Capability, Data Ownership, Scalability, Fault Isolation 등등
실무적인 측면의 중요도로 따지만 Biz Capability나 Data Ownership 이 더 중요하다. 하지만 개인적인 취향으로 따지만 Polyglot 이라는 기준이 더 마음에 든다.

Polyglot은 여러나라 말을 할 줄 안다는 사전적인 의미가 있듯이 하나의 Language, Framework, DB에 국한되는 것이 아닌 여러 기술을 구사할 수 있다는 것이다.

예전 같으면 개발 표준이 정해지면 그 거대한 Monolith에 포함된 업무는 동일한 개발표준을 따라야한다.
다음번 차세대 이전 까지는... ㅜㅜ

하지만 MSA, Polyglot의 개념을 적용하면 더 이상 그럴 필요없이, 여러 기술중에서 내가 담당하는 서비스에 적합한 기술을 선정할 수 있다는 것이다. 동일한 RDB가 아닌 검색에 최적화된 DB를 도입할수도 있고, 가벼운 별도의 Language를 사용할수도 있다.

서비스간의 Provider/Consumer가 약속한 API만 잘 지킨다면, 그 구현체는 Capsulation되므로 어떤 기술을 사용하든 무엇이 문제겠는가?

충분한 준비가 되지 않은 상태에서 최신기술만 덜컥 적용할 일이 아니다.

해당 서비스의 업무에 적합하고,
우리 조직이 개발하고 유지보수 잘 할 수 있는,
해당 서비스를 담당하는 개발자들이 잘 할 수 있는 기술을 적용하는 것이 중요하다.

'나는 모델러다' 카테고리의 다른 글

어려운 프로젝트에 지원해라  (0) 2025.02.18
김익환의 소프트웨어 지혜  (0) 2025.02.18
PIM, PSM  (0) 2025.02.12
설계? 개발? 설계 및 개발?  (1) 2025.02.12
소탐대실 (小貪大失)  (1) 2025.01.15