✅ Spring Boot에 Kafka 서버 3대를 연결해서 사용하는 방법 Producer의 코드 수정하기 Consumer 코드 수정하기 위와 같이 코드를 작성해야 여러 Kafka 서버 중 일부 서버가 중단되도 정상적으로 Kafka를 활용할 수 있다.
✅ Kafka 서버는 몇 대를 운용하는 게 좋을까? kafka 서버를 많이 운용할수록 시스템 전체가 중단될 확률이 줄어들기 때문에 좋기는 하나, 많은 서버를 운용하게 되면 서버 비용이 많이 나온다. 그리고 kafka 서버를 1대로 운용한다고 해서 서비
✅ AWS EC2에 Kafka 설치하기 JDK 17 설치하기 Kafka 설치 파일 다운받기 설치한 파일 압축풀기 Kafka를 실행시켰을 때 잡아먹는 메모리 크기 낮추기 swap을 활용해 메모리 늘리기 Kafka 설정 수정하기 Kafka 서버 시작하기
✅ Kafka를 왜 배워야할까? 최근에 Kafka를 배우려는 취준생 개발자분들이나 현업 개발자분들이 시간이 갈수록 점점 많아지고 있다. 이 분들이 Kafka를 배우려는 이유는 다음과 같다. SI/SM 회사가 아닌 서비스 기업에 취업/이직을 하기 위해서
✅ 이전 강의 복습 (Untitled) 이전 강의에서 REST API 방식은 요청을 보낸 뒤에 모든 작업이 다 처리될 때까지 기다렸다가 응답을 받는 식으로 통신을 한다고 얘기했다. 그래서 만약 이메일 발송을 처리하는 데 시간이 오래 걸린다면 사용자는
✅ 토픽 세부 정보 출력값 정보 해석하기 (Isr, Leader, Replicas, Elr 등) # 토픽 세부 정보 조회하기 $ bin/kafka-topics.sh \ --bootstrap-server localhost:9092 \ --desc
이전 강의에서는 Kafka를 통해 비동기적으로 이메일 발송 요청을 처리함으로써 사용자에게 빠르게 응답할 수 있다는 장점을 살펴봤다. 그러나 Consumer가 실제 작업에 실패했을 때 사용자에게 실패 여부를 전달할 수 없다는 단점이 있었다. 이번 시간에
✅ kafka 서버 3대 셋팅하기 이전 강의에서 kafka 노드 1대(= kafka 서버 1대)만 운용하면, 이 노드 1대가 고장나는 순간 서비스에 장애가 일어난다고 얘기했다. 이걸 방지하기 위해 kafka 노드 2대를 추가적으로 연결시켜보자. 현
이전 강의에서는 Kafka에서 재시도까지 실패한 메시지를 email.send.dlt와 같은 DLT(Dead Letter Topic)에 안전하게 저장하는 방법을 배웠다. 하지만 DLT에 저장하는 것만으로는 문제가 해결되지 않는다. 실패한 메시지를 직접
kafka의 고가용성(시스템이 장애 상황에서도 멈추지 않고 정상적으로 서비스를 제공할 수 있는 능력)을 확보하는 방법을 이해하려면 아래 용어들을 먼저 알고있어야 한다. ✅ 노드(node)란? 노드(node)란, 카프카가 설치되어 있는 서버 단위를 의미