모놀리틱 vs 마이크로서비스 아키텍쳐
모놀리틱 vs 마이크로서비스 아키텍쳐.
아키텍쳐라고 해서 별다른게 아니고. 개념? 설계?
예를 들어서, 집을 짓는것도 여러가지 방법이 있자나. 그 중에 집을 잘 지을수 있는 방법(나무는 뭘쓰고, 아님 철근을 쓰던, 콘크리트를 쓰면 어떻게 등등)
중에 몇개는 유명한 정해진 방법(업계표준정도?) 이 있겠지? 2층집을 지을때는 이방법이 좋다(건축쪽이 아니어서 잘 모르겠지만 여튼)
그런걸 아키텍쳐라고 하는데. 너도 나도 아무나 아키텍쳐를 만들수 있지만, 내가 만들면 리인벤트휠일수도 있고, 효율적이지 않을수도 있고.
하지만 기존에 유명한 방법(아키텍쳐) 대로 만들면 집 만들면? 대부분의 경우에 효율적일꺼야. 더 빨리 지어질꺼고
이게 소프트웨어 만드는 방법에도 똑같아. 아무렇게나 내 맘대로 만들던. 구글, 페이스북 방법(?) 으로 만들던 저마다 방법이 다 있는데
기존에 유명한 방법을 따라 하면, 내가 새로운거도 개발안해도 되고, 효율적인 구조도 차용할수 있고 등등 장점이 많지.
( 이 방법을 차용해서 참고만 하고, 너 맘대로 만든다고 아무도 뭐라 안하겠지만, 어딘가 문제가 생길 소지가 생기겠지 )
단점이라면, 경우에 따라선 오버엔지니어링이 될수도 있지. (1층 집짓는데 100층 빌딩 아키텍쳐를 따라 한다거나 ...)
여튼. 다시 모놀리틱 , 마이크로서비스 아키텍쳐로 돌아와서,
예를 들어서 너가 결제시스템 소프트웨어를 만든다고쳐봐.
* 실행파일은 그냥 하나의 프로그램이라고 생각하면되. 앱으로 치면 클릭할수 있는 채팅앱이나, 계산기 같이. windoows 면 .exe 파일같이
모놀리틱은 쉽게 얘기 하면 사용자정보입력, 결제시스템, 데이터저장등등 결제시스템 소프트웨어에 필요한 서비스들이 하나의 실행파일로 구성되서 소프트웨어가 완성되고,
마이크로서비스는 사용자정보입력, 결제시스템, 데이터저장등등 결제시스템 소프트웨어에 필요한 서비스들이 여러개의 실행파일로 구성되서 하나의 소프트웨어가 완성되는거지.
즉 모놀리틱은 실행파일 == 결제시스템 소프트웨어
마이크로서비스 실행파일 + 실행파일 + 실행파일 == 결제시스템 소프트웨어
이렇게 간단하게 생각해볼수 있어.
'소프트웨어 엔지니어 > 일반' 카테고리의 다른 글
| 소프트웨어 이해하기 어려운이유? (0) | 2024.08.21 |
|---|---|
| CI/CD 이건 왜? (1) | 2024.08.21 |
| tcp/ip, http, ? 프로토콜 (protocol) ? (0) | 2024.08.19 |
| 윈도우7, 윈도우10, 리눅스 ? (0) | 2024.08.16 |
| [소프트웨어 엔지니어] git ? 버전관리 (0) | 2024.08.16 |