본문 바로가기

전체 글87

[MSA] Spring Cloud를 사용해보자(4)-로드밸런서 ✔ 목표 EurekaServer와 Service Client를 구현 후, Ribbon을 통해 라운드로빈방식으로 호출하는 ClientSide Service discovery 패턴의 구현 Netflix Eureka를 통해 Eureka Server(서비스 레지스트리)를 구현한 후, https://ssmyefrin.tistory.com/43 [MSA] Spring Cloud를 사용해보자(3)-API Gateway 기존에 있던 모놀리식 아키텍처를 msa 로 구현해보는 과정에서 API Gateway 로 Spring Cloud 를 이용하기로 했다. 그전에 MSA와 DevOps, K8S 등의 개념을 알고 가는게 좋을꺼 같아 퍼왔다. 참조하면 좋을꺼같 ssmyefrin.tistory.com Service-a, Servi.. 2023. 11. 28.
[MSA] Spring Cloud를 사용해보자(2)-서비스디스커버리 MSA는 각각 흩어진 서비스간의 원격 호출로 구성된다. 원격 호출을 하기위해 각각 서버에 대한 IP와 PORT를 이용한다. 기존 하드웨어 기반의 시스템에서의 서비스 인스턴스는 상대적으로 정적이다. 그러나 최근 많이 사용하는 클라우드 기반 환경에선 네트워크 정보가 동적으로 바뀔 수 있다. 그러면 이런 동적으로 변하는 네트워크 정보를 어떻게 관리해야할까? 유용하게 쓰는 방법이 있다. MSA처럼 흩어져있는 분산시스템들의 수시로 변하는 네트워크 정보에 관한 관리포인트를 줄이기 위해 사용하는 패턴이 서비스 디스커버리 패턴(Service Discovery) 이다. Service Discovery 각 서비스들의 네트워크 위치 정보(IP, Port)를 저장하고 관리하며 연결시켜준다. 이러한 Service discove.. 2023. 11. 28.
[MSA] Spring Cloud를 사용해보자(1)-MSA개념 스프링클라우드를 이용하기에 앞서 MSA 개념부터 짚고 넘어가고자 한다. ✔ MSA 개념 MSA란 무엇일까..? 요새 어떤 요구사항을 봐도 MSA라는 단어를 심심찮게 볼 수 있다. 그만큼 많은 기업들이 MSA(Microservices Architecture) 아키텍쳐에 관심을 가지고 도입하는 추세이다. 과연 기존과 어떤 점이 차별화 돼 있길래 이 MSA 아키텍쳐를 사용하는걸까? 먼저, 과거를 보자. 기존 대부분의 기업용 애플리케이션은 하나의 거대한 서비스 형태로 개발되어 왔다. 이 형태는 모놀리식 아키텍쳐(Monolithic Architecture, MA)라는 개념을 기반하며, UI 부터 DB접근까지가 하나의 애플리케이션으로 패키징되고 서버에 배포되어 왔다. 이에 대응하기 위해 MSA개념이 떠오르기 시작했.. 2023. 11. 28.
[MSA] SpringBoot + Kafka 를 이용하여 RestFul API 구현 해당글에 앞서 백킹서비스 개념을 먼저 알고 가는게 좋다 https://ssmyefrin.tistory.com/56 [MSA] Backing service - MOM ✔ Backing service Backing Service란, 어플리케이션이 실행되는 가운데 네트워크를 통해서 사용할 수 있는 모든 서비스를 말하며 My SQL과 같은 데이터베이스, 캐쉬 시스템, SMTP 서비스 등 어플리케이션 ssmyefrin.tistory.com 카프카를 설치했으니, 이제 Spring Boot 를 연동하여 구현해보자. ✔ 실행환경 - MacOS(Intel) - Kafka + Zookeeper (Docker) - IntelliJ + Gradle + SpringBoot 3.1.5 + JDK17 - Spring Cloud E.. 2023. 11. 27.