본문 바로가기

main182

카프카 시작하기 with 명령어 (Apache Kafka Command) 카프카 설치하는 것에서부터 토픽 생성 및 이벤트 확인하는 것까지 정리해 보았다. STEP 1: GET KAFKA Download 에서 최신 버전의 Kafka를 다운로드 받는다. 1. wget을 이용하여 tgz 파일 다운로드 한다. $ wget https://downloads.apache.org/kafka/3.6.0/kafka_2.13-3.6.0.tgz 2. 다운받은 링크를 압축 해제 한다. $ tar -xzf kafka_2.13-3.6.0.tgz $ cd kafka_2.13-3.6.0 STEP 2: START THE KAFKA ENVIRONMENT ⚠️ NOTE: Java 8 이상의 버전이 설치 되어 있어야 한다. 카프카 실행 (Kafka with ZooKeeper) Apache Kafka는 ZooKee.. 2023. 10. 18.
RabbimMQ - 개념 RabbitMQ란? RabbitMQ는 AMQP 메시지 브로커이며, 생산자(producer)로부터 메시지를 받아 소비자(consumer)에게 전송하기 위한 오픈소스 기반의 소프트웨어이다. AMQP(Advanced Message Queuing Protocol)란 MQ를 오픈 소스에 기반한 표준 프로토콜이며, Client application과 Middleware broker와의 메세지를 주고 받기 위한 프로토콜이기도 하다. 메시지 브로커는 대규모 메시지 기반 미들웨어 아키텍쳐에서 사용되며, RabbitMQ, Redis 같은 기술들이 사용된다. RabbitMQ 특징 Appliation Layer AMQP 구현 비동기 처리를 위한 메시지 브로커 - Queue 라는 임시 저장소가 있기 때문에 나중에 처리 가능 내.. 2023. 1. 1.
2. 컨슈머 그룹 (Consumer Group) 보호되어 있는 글 입니다. 2022. 11. 21.
1. 카프카 컨슈머 소개 프로듀서가 전송한 데이터는 카프카 브로커에 적재된다. 컨슈머는 적재된 데이터를 사용하기 위해 브로커로부터 데이터를 가져와서 필요한 처리를 한다. 예를 들어, 마케팅 문자를 고객에게 보내는 기능이 있다면 컨슈머는 토픽으로부터 고객 데이터를 가져와서 문자 발송 처리를 하게 된다. 토픽에 데이터가 들어오면 컨슈머를 사용 - 컨슈머 애플리케이션 생성 컨슈머 애플리케이션 - 데이터베이스에 데이터를 저장한다던가 다른 애플리케이션과 통신. ex) SMS, EMAIL - Fetcher : 리더 파티션으로부터 레코드들을 미리 가져와서 대기. - poll() : Fetcher에 있는 레코드들을 리턴하는 레코드. - ConsumerRecords : 처리하고자 하는 레코드들의 모음. 오프셋이 포함되어 있음. 1. 카프카 클러.. 2022. 11. 21.
Mock HttpServletRequest 테스트 코드 작성시 Mock HttpServletRequest 를 생성하는 방법. srping-test MockHttpServletRequest request = new MockHttpServletRequest(); request.addHeader("x-real-ip","127.0.0.1"); Mockito HttpServletRequest mockedRequest = Mockito.mock(HttpServletRequest.class); JMock Mockery context = new Mockery(); HttpServletRequest mockedRequest = context.mock(HttpServletRequest.class); 참조 : https://stackoverflow.com/quest.. 2022. 9. 28.
Error:(1, 1) java: illegal character: '\ufeff' 현상 IntellJ에서 서버 기동시 아래와 같은 에러 발생. Error:(1, 1) java: illegal character: '\ufeff' 원인 파일 인코딩 문제. 파일을 열었을 때 UTF-8을 제대로 못 읽어옴. 해결 다른 인코딩(UTF-16, EUC-KR)으로 변환 후 다시 UTF-8 로 변경하면 해결. 2022. 9. 28.
IntelliJ 메모리 사이즈 변경 보호되어 있는 글 입니다. 2022. 5. 10.
[Git] push 실패(updates were rejected because the tip of your current branch is behind its counterpart) 문제점 원격저장소에 push를 하려니 다음과 같은 에러가 났다. Pushing to git@github.com:repo/some-project.git To https://github.com/repo/some-project.git ! [rejected] master -> master (non-fast-forward) error: failed to push some refs to 'https://github.com/repo/some-project.git hint: Updates were rejected because the tip of your current branch is behind hint: its remote counterpart. Merge the remote changes (e.g. 'git p.. 2020. 3. 9.
안드로이드 폰에서 로컬 테스트 하기 로컬에서 모바일웹과 앱에서 테스트를 할 경우가 있다. 앱일 경우 로컬에서 테스트를 어떻게 할까? 다양한 방법이 있지만, 서버 개발자인 나는 다음과 같은 환경에서 테스트를 진행하였다. 개발환경 : 맥북, Charles, 안드로이드 폰, intelliJ 그리고 다음과 같이 진행하였다. 1. intelliJ 에서 프로젝트 띄우기 로컬에서 테스트할 프로젝트를 띄운다. (아파치 설정은 생략) 2. Charles proxy 설정하기 Charles는 Proxy 서버이다. 도메인을 매핑하려면 PC에서 Proxy 서버를 실행해야 한다. Proxy 서버의 예로 Charles, Fiddler 등이 있다. 다음과 같이 Proxy 서버인 Charles에서 포트 전달을 위한 설정을 한다. 간단히 말해, 포트 설정을 해준다. - .. 2020. 2. 10.
[SpringBoot] Java를 Kotlin으로 변환하기(Convert Java to Kotlin) 기존 Springboot, Java, gradle로 구성된 샘플 프로젝트를 IntelliJ를 이용하여 Kotiln으로 변환한 과정을 정리하였습니다. 이 과정에서 Kotlin을 처음 써보게 되었고, 제가 한 방법이 잘한 방법인지는 모르겠습니다만.. 그래도 제가 했던 방법을 기록하고 공유하고자 글을 씁니다. 혹시 더 좋은 방법 있으면 댓글 달아주시면 감사하겠습니다. (더 좋은 방법 너무나 알고 싶어요.) 기존 Springboot 프로젝트 스펙은 다음과 같습니다. Java 8+ springboot 2.x gradle 4 기존 프로젝트 소스는 제 Github에서 볼 수 있습니다. Kotlin은 Jetbrains에서 만들어졌기 때문에 IntelliJ에서 Java를 Kotlin으로 변환해주는 기능이 있습니다. 또한.. 2019. 9. 26.
반응형