JAVA/kafka

JAVA/kafka

[Redis/kafka] 데이터베이스 동시성 문제 해결 코드 (STEP 3. Redisson, kafka로 과부하 줄이기)

GitHub - oddnine/spring-concurrency-problem-solving: 스프링 동시성 문제 해결 과정 with Redis, kafka 스프링 동시성 문제 해결 과정 with Redis, kafka. Contribute to oddnine/spring-concurrency-problem-solving development by creating an account on GitHub. github.com [Spring/Redis] 데이터베이스 동시성 문제 해결 코드 (STEP 2. Redisson 분산 락) GitHub - oddnine/spring-concurrency-problem-solving: 스프링 동시성 문제 해결 과정 with Redis, kafka 스프링 동시성 문제 해결..

JAVA/kafka

[Spring] 카프카 스프링에서 토픽 프로듀싱, 컨슈밍 해보자. (feat. nGrinder)

일단 수강 신청 시에 많은 트래픽이 몰려온다고 가정을 하고 아래와 같이 아키텍처를 구성하였다. 구조는 브로커를 복제해서 하나의 브로커가 고장이 나도 예비 브로커를 사용할 수 있도록 하였고, enrollment_create의 경우 순서 보장이 확실하게 이루어져야 하기 때문에 파티션 하나를 사용하였다. 그 외는 순서 보장이 필요 없기 때문에 파티션 3개를 사용하여 분할 적재하였다. 흐름은 아래와 같다. 학생은 수강 신청을 요청하면 수강 신청 정보는 학생 쪽 Producer에서 enrollment_create 토픽에 적재가 된다. 적재된 정보는 수강 신청 서비스에서 Consumer 해준 다음 수강 신청 로직을 돌린 후 enrollment_history_create에 수강 신청 정보를 적재한다. 수강 신청 로그..

JAVA/kafka

[kafka/Docker] 도커로 카프카를 띄워보고, 토픽 생성 후 메시지를 보내보자.

카프카란? 실시간으로 기록 스트림을 게시, 구독, 저장 및 처리할 수 있는 분산형 데이터 스트리밍 플랫폼이다. 즉, API로 데이터를 바로 요청을 하는 것이 아닌 미들웨어인 카프카를 둬서 프로듀서가 메시지를 생산해서 토픽으로 메시지를 보내고, 컨슈머는 토픽의 메시지를 가져와 사용하는 애플리케이션 부분이다. 따라서 연결되어 있는 토픽에 메시지(큐)가 들어오면 컨슈머는 그 메시지를 받을 수 있는 것이다. 장점) 1. 대량의 데이터를 처리 가능하고, 시스템 부하에 따라 확장이 가능하다. 2. 카프카는 실시간 데이터 처리를 위해 설계되었다. 데이터가 전송되는 즉시 프로듀서와 컨슈머가 데이터를 처리할 수 있고, 데이터의 지연 시간이 최소화되기 때문에 실시간 데이터 스트리밍이 가능하다. 3. 카프카는 메시지를 영속..

혁키
'JAVA/kafka' 카테고리의 글 목록