본문 바로가기

MSA2

카프카 톺아보기 - 기본개념 애플리케이션 개발자의 입장에서 카프카에 대해서 간단하게 살펴보고자 한다. (깊게는 필자도 잘 모른다.)아파치 카프카는 분산 이벤트 스트리밍 플랫폼이다.일반적인 pub/sub 구조의 rabbitMQ, redis pub/sub 과 달리 메시지를 저장한다는 특징이 있다. 1. 브로커데이터를 쓰는 producer 와 데이터를 읽는 consumer 는 broker 를 통해서 데이터를 주고 받는다. 그리고 broker 는 발행된 데이터를 저장하는 공간이기도 하다.브로커는 하나의 서버에서 작동하며, 각기 다른 서버에서 작동하는 여러 브로커를 묶어서 클러스터로 구성할 수 있다.  카프카에서 브로커는 여러 역할을 하는데 크게 아래와 같은 역할을 한다. 해당 역할들에 대해서는 아래에서 추가적으로 살펴볼 것이다.컨트롤러데이.. 2024. 2. 25.
api gateway 란? 1. 외부 api 설계 이슈 마이크로 서비스의 경우, 모노리식과는 다르게 서비스에 직접 접근하여 api 를 호출하는 것은 여러가지 문제가 될 수 있다. 모놀리식인 경우에는 하나의 서비스에 api 를 호출하면 되지만, 마이크로 서비스는 데이터가 여러 서비스에 분산되어있다. 따라서 마이크로 서비스 아키텍처를 채택하는 경우, 기존 모놀리식에서 제공하는 데이터를 제공하기 위해 여러 서비스가 사용된다. 하지만 마이크로 서비스 아키텍처가 장점만 있는 것은 아니다. 아래와 같은 문제점들이 있을 수 있다. 인터넷은 느리다. 인터넷은 느리기 때문에, 직렬로 api 를 호출할 수 밖에 없으면 여러 서비스를 호출시 더 오랜 시간이 걸릴 수 있다. 클라이언트 마다 다르지만, 일부 클라이언트에 따라 변경이 어렵다. 모바일 애플.. 2023. 12. 30.