Page 11 -
P. 11
1.1 컨테이너 인프라 환경이란
c o n t a i n e r i n f r a s t r u c t u r e
1
컨테이너 인프라 환경은 컨테이너를 중심으로 구성된 인프라 환경입니다. 여기서 컨테이너
(container)는 하나의 운영 체제 커널에서 다른 프로세스에 영향을 받지 않고 독립적으로 실행되는 새로운 인프라 환경이 온다
프로세스 상태를 의미합니다. 이렇게 구현된 컨테이너는 가상화 상태에서 동작하는 프로세스보다
가볍고 빠르게 동작합니다(컨테이너 인프라 환경은 3장과 4장에서 직접 구현해 보며 동작 과정을
좀 더 자세히 살펴봅니다).
컨테이너 인프라 환경의 장점을 충분히 이해하려면 우선 개발자가 인프라를 이용해 개발하는 서
비스의 설계 부분을 살펴봐야 합니다.
1.1.1 모놀리식 아키텍처
모놀리식 아키텍처(monolithic architecture)는 하나의 큰 목적이 있는 서비스 또는 애플리케이션에
여러 기능이 통합돼 있는 구조를 의미합니다. 모놀리식 아키텍처에서는 소프트웨어가 하나의 결
합된 코드로 구성되기 때문에 초기 단계에서 설계하기 용이하며 개발이 좀 더 단순하고 코드 관리
가 간편합니다. 그러나 서비스를 운영하는 과정에서 수정이 많을 경우, 어떤 서비스에서 이뤄진
수정이 연관된 다른 서비스에 영향을 미칠 가능성이 커집니다. 또한 서비스가 점점 성장해 기능이
추가될수록 처음에는 단순했던 서비스 간의 관계가 매우 복잡해질 수 있습니다.
모놀리식 아키텍처는 대부분 다음과 같이 구성됩니다.
그림 1-1 모놀리식 아키텍처의 구성 예시
유저 인터페이스 모듈
뉴스 서비스 카페 서비스 웹툰 서비스 결제 서비스
공통 기능
정적 컨텐츠
정적 컨텐츠
정적 콘텐츠 데이터베이스
21
인프라_06.indd 21 2021-05-31 오후 3:46:57