Develop/[Spring cloud] (13) 썸네일형 리스트형 [MSA] MSA 구조? 스프링 클라우드 구조? 공부 리스트! 우선 느끼는건... 스프링 클라우드와 쿠버네티스, 도커에 대한 책을 좀 사서 공부를 해야겠다는 생각이들었다. 그래서 어느정도 대략적인 개념을 잡고 책을 사서 보도록하자 우선 SOA는 서비스 지향 설계 방식이다. 서비스 단위로 개발을 하고, 개발된 서비스들을 공유함으로써 재가용성을 늘리고 유연성을 확보한다. Msa는 마이크로 서비스 설계 방식이고 MSA 또한 아주 작은 단위의 서비스로, 소프트웨어를 구성함으로써 민첩하고 유연한 설계하는 것을 목표로 한다. 크게 말하면, 재가용성이다 SOA는 공통의 서비스를 esb에 모아, 사업 측면에서 공통 서비스 형식으로 서비스 제공을 하고 MSA는 각 독립된 서비스가 노출된 rest api를 사용한다. 무튼 나는 MSA를 공부하는거니까 이전에 알았던 유레카, api g.. [MSA] APi gateway? Application Programing Interface + GateWay Api 인증 절차, 모니터링, 과도한 사용에 대한 제어의 기능을 해주는 Api gateway이다. 또한 msa구조에서 gateway 패턴은 가장 흔하고 유용하게 쓰는 패턴중 하나이다. API gateway는 하나의 모든 클라이언트의 요청이 하나의 서버로 들어와, 해당 서버에서 요청이 정제 되거나 조작되어 각자 목적에 맞는 서비스를 찾아가도록 도와주는 방식이다. 즉, 분배,인증,로깅 등등을 통합적으로 앞단에서 관리해주는 역할을 한다. 좀더 자세히 얘기하면 1. 프록시의 역할과 로드밸런싱 2. 인증 서버로의 기능 3. 로깅 서버로서의 기능 단점으로는 아래와 같다. 1. 병목현상 (전체 시스템의 성능이나 용량이 하나의 구성요소로 인해.. [MSA] Service Discovery 이전에 config server,client에 대한 간략 구성을 했다. 이와같이 한개의 application.yml을 통해서 서버 구성을 하는 것이아니라 별도로 파일로 가지고있고, config server는 이 파일들을 client들에게 전달, client는 서버에게 요청하여, 이 파일을 받고세팅, 새로고침이 필요하다면 액츄에이터를 활용해서 새로고침하였다. Service Discovery? 서로 다른 서버에서 호스팅 되는 여러 서비스로 구축되어 서로 커뮤니케이션한다. 서비스를 사용하기 위해서 정상 서비스 중인 인스턴스에 대한 서비스 탐색이 필요하다. 어떤 인스턴스를 사용할건지, 인스턴스가 증가하면 어떤 로드 밸런싱 기준으로 어떤 인스턴스로 갈 것인지까지 정하는 것이 중요하다. Netfilx OSS에서 제.. [MSA] Spring Cloud Config Spring Cloud Config 가 필요한 이유 Microservice에 대한 변경 반영 및, 각 구성별로 다른 환경정보들을 가지고 있어야 한다. 각각의 마이크로서버들은 이 config를 적용해서 사용한다. MicroService의 각각 구성에 대한 공통된 config 파일이라고 보면된다. config server 를 pom.xml에 의존성을 추가해준다. 이 서버에서 읽을 서버정보를 외부 git에 저장해놓고, configServer는 이 정보를 읽어서 사용한다. 어떻게 읽어오는지 체크해보자 위 처럼 설정하고 서버 기동, url 호출하면, 해당 파일의 정보를 받을 수 있다. 깃에서 파일 환경에 대한 정보를 가져오는데, 깃에서 변경하고, 실시간 반영을 바란다면? 액츄에이터를 사용하고, refresh엔드포.. [MSA] MSA 구조의 이해 MSA 구조의 장점, 단점에 대한 정리 개인적인 생각으로는 기술이 급변하고 계속해서, 빠른 서비스를 위한 기술들이 나옴에 따라 MSA로 변경하는 것은 좋다. 예를들어서, 신기술과 이전기술의 속도 차이가 3초이상난다고한다면 특정 트래픽이나 성능효과를 받을 수있는 서비스 모듈을 변경해야하는데 모놀리틱한 아키텍쳐인경우 전체 변경을 해야한다는 단점이 있어, 변경 비용이 크다. 물론 MSA도 단점이 있지만 추후 확장성을 고려하였을때, 해당으로 변경하는 것은 아주 중요하다고 생각한다. API GateWay : 대표적으로 Zuul, Spring Cloud Gateway 가 존재한다. 서로 동작하는 방식이 다르다. 이외 MSA에서 지목되는 단점들을 커버하기 위한 기술들이다. 이전 1 2 다음