용오름체험휴양마을영농조합법인 / 홍천 용오름캠핑장 팸투어 다녀왔어요.

용오름체험휴양마을영농조합법인 / 홍천 용오름캠핑장 팸투어 다녀왔어요. 강원도 홍천 서석면에 위치해있으며 1급수 용오름계곡 바로 옆에 있습니다.홍천군 1등 마을로 마을에서 직접 관리하는 용오름캠핑장,펜션 10개를 운영하고 있으며 각종 모임이 가능하도록 식당,회의실,야외무대가 설치되어 있습니다.홍천군 1등 마을답게 캠핑장,펜션 마을 전지역 wi-fi 사용이 가능하며 매년 봄 팸투어 실시, 여름엔 마을에서 재배한 홉으로 직접만든 맥주축제,마리소리 음악축제 를 열고 있습니다.계곡의 경우 수심이 다양하여 다이빙 포인트가 2곳이 있으며 아이들이 안전하게 물놀이를 할 수 있는 곳도 여러 곳 있습니다. 홍천 용오름캠핑장 팸투어 다녀왔어요. 요즘은 농산촌체험마을에서 캠핑과 여러프로그램을 같이 하는 곳이 추세더라고요. 아미산이 둘러쌓인 청정계곡이 흐르는 아름다운 용오름체험휴양마을 에서 운영하는 홍천 용오름캠핑장 팸투어 다녀왔어요. 테크 앞 강이... 붕어빵 가족의 담너머 세상구경 https://m.blog.naver.com/1092119/220711235599 가을여행-홍천여행- 홍천 용오름 마을 첫째날 여행의 계절 가을입니다. 요즘 저희는 강원도에 꽃힌 상태인지라...카페 행복한 이티씨와 함께하는 홍천 용오름 마을 1박2일 체험에 참가를 하였답니다! 평소 체험 시간보다 조금 늦은 출발을 해서 차가 밀리지 않으려나... 귀여운 단지 https://m.blog.naver.com/sanguidan/50181593653 용오름마을 캠핑장 여름휴가의 시즌이다.. 강원도의 계곡과 시원함을 만끽하기 위해 캠핑장을 검색하다 우연히 알게 된 홍천의 용오름 캠핑장.. 성수기라 캠핑장 요금들이 사악하다 용오름캠핑장 옆엔 해미르 캠핑장이 있는데... ★살로몬의 잇츠캠핑★ https://m.blog.naver.com/freeguy9040/20163628934 맥주효모로 만든 용오름맥주마을 바쏘 맥주샴푸와 맥주마스크팩... 1988년까지 맥주 원료인

MSA (Micro Service Architecture) 란 무엇일까?

MSA (Micro Service Architecture) 란 무엇일까?

안녕하세요. 오늘은 Micro Service Architecture에 대해 이야기 해보고자 합니다. 한동안 MSA가 굉장히 화두였는데, 요즘은 분위기가 식어지는 듯하여 오늘 블로그에 이 글을 적게 되었습니다.

우리는 백엔드 개발을 위해서 Spring, Django 등 다양한 프레임워크를 사용하여 개발을 하게 됩니다. 보통 이들 프레임워크를 이용해서 특정 기능을 수행하는 API를 설계하고 개발하여 서비스하는 것이 기본 형태이죠.

Monolothic Architecture

이렇게 UI, 비즈니스 로직, 데이터 레이어까지 모든 것을 한 통 속에서 운영하는 방식을 모놀리틱 아키텍처라고 이야기 합니다. 흔히 학부에서 운영체제 과목을 수강해보신 분들이라면, 모놀리틱 커널이라는 단어를 들어보셨을텐데, 거기에서 나오는 모놀리틱과 동일한 단어입니다.

그런데, 이러한 개발 방식에 조금 단점이 존재합니다. 만약 개발에 문제가 생겨 다른 API 호출을 하면서 오류가 발생했습니다. 그렇게 되면 모든 서비스가 중단이 되어 버리죠. 이를테면, 카페 주문 서비스를 목적으로 한 백엔드 서버가 있다고 했을 때, 주문 조회에서 오류가 발생하여 서버가 종료가 되어버리면, 다른 서비스 조차도 사용할 수 없게 되어버리는 것이죠.

따라서 우리는 이러한 서비스를 분리하여 개발하고, 운영함으로써 하나의 서비스에서 오류가 발생해도 다른 서비스에는 문제가 생기지 않도록 하기 위해 MSA(Micro Service Architecture)를 이용하여야 합니다.

Micro Service Architecture

우리가 MSA를 접하기 전에 반드시 짚어두고 가야할 점이 있습니다. 비록 MSA가 모놀리틱 아키텍처의 단점을 보완하였다고는 하지만 그것이 모든 서비스에 적용되는 것은 아닙니다.

서비스의 특징에 따라서 MSA가 효율적일 수도 있고, 그렇지 않을 수도 있습니다. 앞에서 설명했다시피 특정 서비스가 각 API별로 종속적이지 않다면, 그것은 MSA가 효율적일 수 있겠지만 모든 서비스가 하나의 통합으로 이루어져야 한다면 오히려 개발 프로세스가 복잡해지기만 할 뿐, 모놀리틱 아키텍처를 사용하는 것보다 비효율적인 과정의 형식으로만 남게 됩니다.

Micro Service Architecture

마이크로 서비스 아키텍처는 위 이미지처럼 각 역할 별로 서버가 분리되어 있기 때문에 한쪽 API에서 문제가 발생하더라도 다른 API는 정상적으로 운영되어 이루어지기 때문에 안정적으로 서비스를 운영할 수 있다는 장점이 있습니다.

또한 각 API별로 각기 다른 언어, 다른 DBMS를 쓸 수 있어 개발하는 데 있어서도 다양성을 높일 수 있고, API 특징 별로 자유로운 개발이 가능하다는 것도 장점으로 꼽을 수 있겠죠.

모놀리틱 아키텍처는 UI까지 모두 서버에 들어가 있는 형태여서 보통 이러한 형태의 개발은 JSP+Spring 조합 혹은 HTML+PHP 조합이라고 얘기합니다.

모놀리틱 아키텍처는 모든 것을 하나의 통합으로 사용하기 때문에 배포가 쉽습니다. 이를 테면 JSP + Spring 조합으로 하여금 war 파일로 배포하면 배포한 war 파일만을 Tomcat 등의 WAS에 올리면 바로 운영이 시작되는 형태인 것이죠.

하지만 마이크로 서비스 아키텍처는 각기 API별로 서버가 다르게 되어 있기 때문에 단순히 파일 하나로 배포할 수는 없습니다. 따라서 이를 서비스할 수 있는 환경으로 만들어주기 위해 Docker compose 내지, Docker Swarm 등의 컨테이너를 별도로 사용하여 운영 환경을 지도하여야 합니다.

마치며...

여기까지 MSA에 대한 간단한 이야기를 다뤄봤습니다. 비록 내용은 별 거 없지만 어떻게 설계하는지에 따라서는 이 글에 해당된 이미지보다 더 크고 복잡하게도 설계가 될 수 있는 부분 중에 하나라고 말씀을 드리고 싶습니다.

그리고 또 한 가지는 로드 밸런싱을 하게 되면 노드의 수가 증가함에 따라 운영 측면에서 봤을 때는 모놀리틱 아키텍처가 장점으로 볼 수 있습니다. 반대로 MSA는 해당 API 수에 따라서 노드가 증가하기 때문에 모니터링 해야하는 갯수가 그만큼 많아지는 것은 단점으로 볼 수 있겠죠.

따라서 우리는 이것이 무조건 좋다고 채택하기 보단, 충분히 장단점을 숙지하고, 본인의 컴퓨터 사양을 맞추 듯 판단하는 것이 적절하다고 생각하면서 이 글을 마치겠습니다.

from http://blog.neonkid.xyz/200 by ccl(S) rewrite - 2020-03-11 07:54:08

댓글

이 블로그의 인기 게시물

[2020 정보처리기사 실기 - 프로그래밍 언어 활용] 2. 언어 특성 활용...

phpmyadmin 설치 차분히 따라해보자

용오름체험휴양마을영농조합법인 / 홍천 용오름캠핑장 팸투어 다녀왔어요.