본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
https://bit.ly/4hTSJNB

 


I. 학습 인증샷 4장 이상 포함

1. 공부시작: 날짜, 시각 다 나오도록

공부 시작

2. 공부 종료: 날짜 시각 다 나오도록

공부 종료

3. 1개 클립 수강 (강의장 목록 캡쳐, 수강화면이 보이지 않도록) 1장

4. 학습 인증샷 1장(필기 촬영이나 작업물 촬영)


II. 학습 후기 700자 이상 (공백 제외)

실습이다~!

요약

 저장소 clone

  • 저장소를 fork한후 clone
# repo clone
Cloning into 'fastcampus-kafka-message-queue'...
remote: Enumerating objects: 533, done.
remote: Counting objects: 100% (58/58), done.
remote: Compressing objects: 100% (15/15), done.
remote: Total 533 (delta 46), reused 43 (delta 43), pack-reused 475 (from 1)
Receiving objects: 100% (533/533), 1.16 MiB | 1.15 MiB/s, done.
Resolving deltas: 100% (172/172), done.
ahn@Ahns-m1Pro14 rkaehdaos %

Docker  Compose 이미지 다운로드

  • 이미지 미리 다운로드 -  pull
# 도커 이미지 다운로드
ahn@Ahns-m1Pro14 fastcampus-kafka-message-queue % docker compose pull
WARN[0000] /Users/ahn/dev/repo/rkaehdaos/fastcampus-kafka-message-queue/docker-compose.yml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
[+] Pulling 5/42
 ✔ kafka1 Skipped - Image is already being pulled by kafka3                0.0s
 ✔ kafka2 Skipped - Image is already being pulled by kafka3                0.0s
 ⠧ zookeeper [⠀] Pulling                                                  21.8s
 ⠧ cmak [⣄⣶⣿⣿⣿⠀⠀] Pulling                                                 21.8s
 ⠧ redpanda-console [⠀⠀⠀⠀⠀⠀⠀] Pulling                                     21.8s
 ⠧ kafka3 [⠀] Pulling                                                     21.8s
 ⠧ kafka-ui [⠀⠀⠀⠀⠀⠀⠀] Pulling                                             21.8s
 ⠧ mysql [⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀] Pulling                                            21.8s

2 docker 관련 커맨드

  • docker compose up -d
    • compose 환경 올리기
    • -d 옵션은 background 옵션
      • 필요할때만 로그를 보도록 하자
ahn@Ahns-m1Pro14 fastcampus-kafka-message-queue % docker compose up -d
WARN[0000] /Users/ahn/dev/repo/rkaehdaos/fastcampus-kafka-message-queue/docker-compose.yml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
[+] Running 8/8
 ✔ Container mysql             Running                                                                                                                                                                           0.0s
 ✔ Container zookeeper         Running                                                                                                                                                                           0.0s
 ✔ Container kafka1            Running                                                                                                                                                                           0.0s
 ✔ Container kafka3            Running                                                                                                                                                                           0.0s
 ✔ Container kafka2            Running                                                                                                                                                                           0.0s
 ✔ Container cmak              Running                                                                                                                                                                           0.0s
 ✔ Container kafka-ui          Running                                                                                                                                                                           0.0s
 ✔ Container redpanda-console  Running                                                                                                                                                                           0.0s
ahn@Ahns-m1Pro14 fastcampus-kafka-message-queue %
  • docker compose down
    • 환경 내리기
    • 실습 끝나면 실행
ahn@Ahns-m1Pro14 fastcampus-kafka-message-queue % docker compose down
WARN[0000] /Users/ahn/dev/repo/rkaehdaos/fastcampus-kafka-message-queue/docker-compose.yml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
[+] Running 9/9
 ✔ Container mysql                                 Removed                                                                                                                                                       1.3s
 ✔ Container cmak                                  Removed                                                                                                                                                       0.6s
 ✔ Container redpanda-console                      Removed                                                                                                                                                       0.2s
 ✔ Container kafka-ui                              Removed                                                                                                                                                       2.3s
 ✔ Container kafka1                                Removed                                                                                                                                                       1.0s
 ✔ Container kafka2                                Removed                                                                                                                                                       5.9s
 ✔ Container kafka3                                Removed                                                                                                                                                       1.0s
 ✔ Container zookeeper                             Removed                                                                                                                                                       0.6s
 ✔ Network fastcampus-kafka-message-queue_default  Removed                                                                                                                                                       0.3s
ahn@Ahns-m1Pro14 fastcampus-kafka-message-queue %
  • docker ps
    • 컨테이너 리스트 
  • docker logs {컨테이너id}
    • 특정 컨테이너 id를 지정해서 로그를 볼 수 있다.
  • docker compose exec {컨테이너 서비스명} {컨테이너 안에서 실행할 명령어}
    • 특정 컨테이너 내부에서 명령어 실행

아 실습.. 기쁘다..

 

블로그 이미지

감동맨

rkaehdaos의 블로그

,

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
https://bit.ly/4hTSJNB


I. 학습 인증샷 4장 이상 포함

1. 공부시작: 날짜, 시각 다 나오도록

공부 시작

2. 공부 종료: 날짜 시각 다 나오도록

공부 종료

3. 1개 클립 수강 (강의장 목록 캡쳐, 수강화면이 보이지 않도록) 1장

clip33 실습이다.

4. 학습 인증샷 1장(필기 촬영이나 작업물 촬영)

강사님 설명대로 저장소 clone후 open, release branch라 이게 최종 완성본의 모습인가보다


II. 학습 후기 700자 이상 (공백 제외)

실습이다~!

요약

 저장소 clone

  • 저장소를 fork한후 clone
# repo clone
Cloning into 'fastcampus-kafka-message-queue'...
remote: Enumerating objects: 533, done.
remote: Counting objects: 100% (58/58), done.
remote: Compressing objects: 100% (15/15), done.
remote: Total 533 (delta 46), reused 43 (delta 43), pack-reused 475 (from 1)
Receiving objects: 100% (533/533), 1.16 MiB | 1.15 MiB/s, done.
Resolving deltas: 100% (172/172), done.
ahn@Ahns-m1Pro14 rkaehdaos %

Docker  Compose 이미지 다운로드

  • 이미지 미리 다운로드 -  pull
# 도커 이미지 다운로드
ahn@Ahns-m1Pro14 fastcampus-kafka-message-queue % docker compose pull
WARN[0000] /Users/ahn/dev/repo/rkaehdaos/fastcampus-kafka-message-queue/docker-compose.yml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
[+] Pulling 5/42
 ✔ kafka1 Skipped - Image is already being pulled by kafka3                0.0s
 ✔ kafka2 Skipped - Image is already being pulled by kafka3                0.0s
 ⠧ zookeeper [⠀] Pulling                                                  21.8s
 ⠧ cmak [⣄⣶⣿⣿⣿⠀⠀] Pulling                                                 21.8s
 ⠧ redpanda-console [⠀⠀⠀⠀⠀⠀⠀] Pulling                                     21.8s
 ⠧ kafka3 [⠀] Pulling                                                     21.8s
 ⠧ kafka-ui [⠀⠀⠀⠀⠀⠀⠀] Pulling                                             21.8s
 ⠧ mysql [⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀] Pulling                                            21.8s

2 docker 관련 커맨드

  • docker compose up -d
    • compose 환경 올리기
    • -d 옵션은 background 옵션
      • 필요할때만 로그를 보도록 하자
ahn@Ahns-m1Pro14 fastcampus-kafka-message-queue % docker compose up -d
WARN[0000] /Users/ahn/dev/repo/rkaehdaos/fastcampus-kafka-message-queue/docker-compose.yml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
[+] Running 8/8
 ✔ Container mysql             Running                                                                                                                                                                           0.0s
 ✔ Container zookeeper         Running                                                                                                                                                                           0.0s
 ✔ Container kafka1            Running                                                                                                                                                                           0.0s
 ✔ Container kafka3            Running                                                                                                                                                                           0.0s
 ✔ Container kafka2            Running                                                                                                                                                                           0.0s
 ✔ Container cmak              Running                                                                                                                                                                           0.0s
 ✔ Container kafka-ui          Running                                                                                                                                                                           0.0s
 ✔ Container redpanda-console  Running                                                                                                                                                                           0.0s
ahn@Ahns-m1Pro14 fastcampus-kafka-message-queue %
  • docker compose down
    • 환경 내리기
    • 실습 끝나면 실행
ahn@Ahns-m1Pro14 fastcampus-kafka-message-queue % docker compose down
WARN[0000] /Users/ahn/dev/repo/rkaehdaos/fastcampus-kafka-message-queue/docker-compose.yml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
[+] Running 9/9
 ✔ Container mysql                                 Removed                                                                                                                                                       1.3s
 ✔ Container cmak                                  Removed                                                                                                                                                       0.6s
 ✔ Container redpanda-console                      Removed                                                                                                                                                       0.2s
 ✔ Container kafka-ui                              Removed                                                                                                                                                       2.3s
 ✔ Container kafka1                                Removed                                                                                                                                                       1.0s
 ✔ Container kafka2                                Removed                                                                                                                                                       5.9s
 ✔ Container kafka3                                Removed                                                                                                                                                       1.0s
 ✔ Container zookeeper                             Removed                                                                                                                                                       0.6s
 ✔ Network fastcampus-kafka-message-queue_default  Removed                                                                                                                                                       0.3s
ahn@Ahns-m1Pro14 fastcampus-kafka-message-queue %
  • docker ps
    • 컨테이너 리스트 
    • container id 를 확인가능
    •  
ahn@Mac study-kafka-message-queue % docker ps -a
CONTAINER ID   IMAGE                                             COMMAND                  CREATED          STATUS          PORTS                                                        NAMES
eddf825abbd0   provectuslabs/kafka-ui:v0.7.1                     "/bin/sh -c 'java --…"   25 seconds ago   Up 23 seconds   0.0.0.0:8081->8080/tcp                                       kafka-ui
2cd28ccba6aa   docker.redpanda.com/redpandadata/console:v2.3.7   "./console"              25 seconds ago   Up 23 seconds   0.0.0.0:8989->8080/tcp                                       redpanda-console
0487f9aaa9b0   hlebalbau/kafka-manager:3.0.0.5                   "/kafka-manager/bin/…"   25 seconds ago   Up 23 seconds   0.0.0.0:9000->9000/tcp                                       cmak
a62592fd749e   bitnami/kafka:3.6.0                               "/opt/bitnami/script…"   25 seconds ago   Up 23 seconds   9092/tcp, 0.0.0.0:9094->9094/tcp, 0.0.0.0:54745->19092/tcp   kafka3
9160af910160   bitnami/kafka:3.6.0                               "/opt/bitnami/script…"   25 seconds ago   Up 23 seconds   0.0.0.0:9092->9092/tcp, 0.0.0.0:54742->19092/tcp             kafka1
005918c311ce   bitnami/kafka:3.6.0                               "/opt/bitnami/script…"   25 seconds ago   Up 23 seconds   9092/tcp, 0.0.0.0:9093->9093/tcp, 0.0.0.0:54746->19092/tcp   kafka2
db515dd6ee89   mysql:8.0.35                                      "docker-entrypoint.s…"   25 seconds ago   Up 23 seconds   0.0.0.0:3306->3306/tcp, 33060/tcp                            mysql
619b243ab294   bitnami/zookeeper:3.7.2                           "/opt/bitnami/script…"   25 seconds ago   Up 23 seconds   2888/tcp, 3888/tcp, 0.0.0.0:2181->2181/tcp, 8080/tcp         zookeeper
ahn@Mac study-kafka-message-queue %
  • docker logs {컨테이너id}
    • 특정 컨테이너 id를 지정해서 로그를 볼 수 있다.
# ex) docker ui 컨테이너의 로그 보기
ahn@Mac study-kafka-message-queue % docker logs eddf825abbd0
02:08:12,807 |-INFO in ch.qos.logback.classic.LoggerContext[default] - This is logback-classic version 1.4.7
02:08:12,834 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
02:08:12,834 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.xml]
02:08:12,841 |-INFO in ch.qos.logback.classic.BasicConfigurator@e15b7e8 - Setting up default configuration.
02:08:13,700 |-INFO in ch.qos.logback.core.joran.spi.ConfigurationWatchList@1b2abca6 - URL [jar:file:/kafka-ui-api.jar!/BOOT-INF/classes!/logback-spring.xml] is not of type file
02:08:13,824 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - Processing appender named [STDOUT]
02:08:13,824 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
02:08:13,859 |-WARN in ch.qos.logback.core.ConsoleAppender[STDOUT] - This appender no longer admits a layout as a sub-component, set an encoder instead.
02:08:13,859 |-WARN in ch.qos.logback.core.ConsoleAppender[STDOUT] - To ensure compatibility, wrapping your layout in LayoutWrappingEncoder.
02:08:13,859 |-WARN in ch.qos.logback.core.ConsoleAppender[STDOUT] - See also http://logback.qos.ch/codes.html#layoutInsteadOfEncoder for details
02:08:13,860 |-INFO in ch.qos.logback.classic.model.processor.RootLoggerModelHandler - Setting level of ROOT logger to INFO
02:08:13,860 |-INFO in ch.qos.logback.classic.jul.LevelChangePropagator@6392827e - Propagating INFO level on Logger[ROOT] onto the JUL framework
02:08:13,860 |-INFO in ch.qos.logback.core.model.processor.AppenderRefModelHandler - Attaching appender named [STDOUT] to Logger[ROOT]
02:08:13,860 |-INFO in ch.qos.logback.core.model.processor.DefaultProcessor@2ed2d9cb - End of configuration.
02:08:13,860 |-INFO in org.springframework.boot.logging.logback.SpringBootJoranConfigurator@d5b810e - Registering current configuration as safe fallback point

 _   _ ___    __             _                _          _  __      __ _
| | | |_ _|  / _|___ _ _    /_\  _ __ __ _ __| |_  ___  | |/ /__ _ / _| |_____
| |_| || |  |  _/ _ | '_|  / _ \| '_ / _` / _| ' \/ -_) | ' </ _` |  _| / / _`|
 \___/|___| |_| \___|_|   /_/ \_| .__\__,_\__|_||_\___| |_|\_\__,_|_| |_\_\__,|
                                 |_|                                             

2025-04-07 02:08:13,919 INFO  [background-preinit] o.h.v.i.u.Version: HV000001: Hibernate Validator 8.0.0.Final
2025-04-07 02:08:14,022 INFO  [main] c.p.k.u.KafkaUiApplication: Starting KafkaUiApplication using Java 17.0.6 with PID 1 (/kafka-ui-api.jar started by kafkaui in /)
2025-04-07 02:08:14,022 DEBUG [main] c.p.k.u.KafkaUiApplication: Running with Spring Boot v3.0.6, Spring v6.0.8
2025-04-07 02:08:14,023 INFO  [main] c.p.k.u.KafkaUiApplication: No active profile set, falling back to 1 default profile: "default"
2025-04-07 02:08:16,472 DEBUG [main] c.p.k.u.s.SerdesInitializer: Configuring serdes for cluster local
2025-04-07 02:08:16,949 INFO  [main] o.s.b.a.e.w.EndpointLinksResolver: Exposing 2 endpoint(s) beneath base path '/actuator'
2025-04-07 02:08:16,979 INFO  [main] o.s.b.a.s.r.ReactiveUserDetailsServiceAutoConfiguration: 

Using generated security password: ea329ee7-fe3f-4a3a-a2d1-6ca6a90572fb

2025-04-07 02:08:17,107 WARN  [main] c.p.k.u.c.a.DisabledAuthSecurityConfig: Authentication is disabled. Access will be unrestricted.
2025-04-07 02:08:17,378 INFO  [main] o.s.b.w.e.n.NettyWebServer: Netty started on port 8080
2025-04-07 02:08:17,401 INFO  [main] c.p.k.u.KafkaUiApplication: Started KafkaUiApplication in 4.307 seconds (process running for 5.057)
2025-04-07 02:08:18,006 DEBUG [parallel-2] c.p.k.u.s.ClustersStatisticsScheduler: Start getting metrics for kafkaCluster: local
2025-04-07 02:08:18,012 INFO  [parallel-2] o.a.k.c.a.AdminClientConfig: AdminClientConfig values: 
        bootstrap.servers = [kafka1:19092, kafka2:19092, kafka3:19092]
        client.dns.lookup = use_all_dns_ips
        client.id = kafka-ui-admin-1743991698-1
        connections.max.idle.ms = 300000
        default.api.timeout.ms = 60000
        metadata.max.age.ms = 300000
        metric.reporters = []
        metrics.num.samples = 2
        metrics.recording.level = INFO
        metrics.sample.window.ms = 30000
        receive.buffer.bytes = 65536
        reconnect.backoff.max.ms = 1000
        reconnect.backoff.ms = 50
        request.timeout.ms = 30000
        retries = 2147483647
        retry.backoff.ms = 100
        sasl.client.callback.handler.class = null
        sasl.jaas.config = null
        sasl.kerberos.kinit.cmd = /usr/bin/kinit
        sasl.kerberos.min.time.before.relogin = 60000
        sasl.kerberos.service.name = null
        sasl.kerberos.ticket.renew.jitter = 0.05
        sasl.kerberos.ticket.renew.window.factor = 0.8
        sasl.login.callback.handler.class = null
        sasl.login.class = null
        sasl.login.connect.timeout.ms = null
        sasl.login.read.timeout.ms = null
        sasl.login.refresh.buffer.seconds = 300
        sasl.login.refresh.min.period.seconds = 60
        sasl.login.refresh.window.factor = 0.8
        sasl.login.refresh.window.jitter = 0.05
        sasl.login.retry.backoff.max.ms = 10000
        sasl.login.retry.backoff.ms = 100
        sasl.mechanism = GSSAPI
        sasl.oauthbearer.clock.skew.seconds = 30
        sasl.oauthbearer.expected.audience = null
        sasl.oauthbearer.expected.issuer = null
        sasl.oauthbearer.jwks.endpoint.refresh.ms = 3600000
        sasl.oauthbearer.jwks.endpoint.retry.backoff.max.ms = 10000
        sasl.oauthbearer.jwks.endpoint.retry.backoff.ms = 100
        sasl.oauthbearer.jwks.endpoint.url = null
        sasl.oauthbearer.scope.claim.name = scope
        sasl.oauthbearer.sub.claim.name = sub
        sasl.oauthbearer.token.endpoint.url = null
        security.protocol = PLAINTEXT
        security.providers = null
        send.buffer.bytes = 131072
        socket.connection.setup.timeout.max.ms = 30000
        socket.connection.setup.timeout.ms = 10000
        ssl.cipher.suites = null
        ssl.enabled.protocols = [TLSv1.2, TLSv1.3]
        ssl.endpoint.identification.algorithm = https
        ssl.engine.factory.class = null
        ssl.key.password = null
        ssl.keymanager.algorithm = SunX509
        ssl.keystore.certificate.chain = null
        ssl.keystore.key = null
        ssl.keystore.location = null
        ssl.keystore.password = null
        ssl.keystore.type = JKS
        ssl.protocol = TLSv1.3
        ssl.provider = null
        ssl.secure.random.implementation = null
        ssl.trustmanager.algorithm = PKIX
        ssl.truststore.certificates = null
        ssl.truststore.location = null
        ssl.truststore.password = null
        ssl.truststore.type = JKS

2025-04-07 02:08:18,045 INFO  [parallel-2] o.a.k.c.u.AppInfoParser: Kafka version: 3.3.1
2025-04-07 02:08:18,045 INFO  [parallel-2] o.a.k.c.u.AppInfoParser: Kafka commitId: e23c59d00e687ff5
2025-04-07 02:08:18,045 INFO  [parallel-2] o.a.k.c.u.AppInfoParser: Kafka startTimeMs: 1743991698044
2025-04-07 02:08:18,279 DEBUG [parallel-10] c.p.k.u.s.ClustersStatisticsScheduler: Metrics updated for cluster: local
2025-04-07 02:08:47,419 DEBUG [parallel-1] c.p.k.u.s.ClustersStatisticsScheduler: Start getting metrics for kafkaCluster: local
2025-04-07 02:08:47,460 DEBUG [parallel-6] c.p.k.u.s.ClustersStatisticsScheduler: Metrics updated for cluster: local
2025-04-07 02:09:17,405 DEBUG [parallel-7] c.p.k.u.s.ClustersStatisticsScheduler: Start getting metrics for kafkaCluster: local
2025-04-07 02:09:17,437 DEBUG [parallel-2] c.p.k.u.s.ClustersStatisticsScheduler: Metrics updated for cluster: local
2025-04-07 02:09:47,407 DEBUG [parallel-3] c.p.k.u.s.ClustersStatisticsScheduler: Start getting metrics for kafkaCluster: local
2025-04-07 02:09:47,453 DEBUG [parallel-8] c.p.k.u.s.ClustersStatisticsScheduler: Metrics updated for cluster: local
ahn@Mac study-kafka-message-queue %
  • docker compose exec {컨테이너 서비스명} {컨테이너 안에서 실행할 명령어}
    • 특정 컨테이너 내부에서 명령어 실행 하기
    • error 발생 
ahn@Mac study-kafka-message-queue % docker compose exec kafka1 kafka-topics.sh --create --topic my-topic --bootstrap-server localhost:9092,localhost:9093,localhost:9094 --replication-factor 1 --partitions 1

[2025-04-07 03:31:03,427] WARN [AdminClient clientId=adminclient-1] Connection to node 3 (localhost/127.0.0.1:9094) could not be established. Broker may not be available. (org.apache.kafka.clients.NetworkClient)

[2025-04-07 03:31:03,428] WARN [AdminClient clientId=adminclient-1] Connection to node 2 (localhost/127.0.0.1:9093) could not be established. Broker may not be available. (org.apache.kafka.clients.NetworkClient)

해당 부분은 수정 후 패캠 커뮤니티에 올렸다. (나같은 삽질 하지말라고.. ㅋㅋ)

https://fastcampus.co.kr/community/100810

 

파트2 에서 topic 안만들어지시는 분들.(특히 맥) | 패스트캠퍼스

패스트캠퍼스 커뮤니티 | 질문/답변

fastcampus.co.kr

 

 

아 실습.. 기쁘다..

 

블로그 이미지

감동맨

rkaehdaos의 블로그

,

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
https://bit.ly/4hTSJNB


I. 학습 인증샷 4장 이상 포함

1. 공부시작: 날짜, 시각 다 나오도록

공부 시작

2. 공부 종료: 날짜 시각 다 나오도록

공부 종료

3. 1개 클립 수강 (강의장 목록 캡쳐, 수강화면이 보이지 않도록) 1장

clip32

4. 학습 인증샷 1장(필기 촬영이나 작업물 촬영)

아 드디어 실습..


II. 학습 후기 700자 이상 (공백 제외)

드디어 이론 편이 끝나고 백엔드 파트이다.. 첫시작은 OTfh 파트2의 전체적인 내용을 설명하고 있다.

  •  Spring/Java를 활용하여 백엔드 개발에서 Apache Kafka를 사용하는 방법을 초보자에게 설명하는 데 초점이 맞춰져 있다고 한다. (기쁘다)
  •  선수 지식으로 메시징 큐 이론, Spring Boot, Java에 대한 기본 이해가 요구된다고 한다.

개발 환경 및 기술 스택

  • 실습 환경:
    • JDK 17
    • Spring Boot 3.2.0
    • IntelliJ Ultimate IDE.
  • 인프라:
    • Apache Kafka 3.6.0
    • Zookeeper 3.7.2
    • MySQL 8.0.35
    • Docker Desktop 및 Docker Compose.
      • 모든 인프라는 도커환경에서 사용되는 것 같다
  • 주요 라이브러리: `spring-kafka` 사용

Kafka 관련 도구 소개

  • Kafka CLI: 명령줄 도구로 토픽 생성, 수정, 삭제 등을 수행.
  • Kcat: 메시지 생산 및 소비를 테스트하는 도구.
  • CMAK: 클러스터 관리 도구로 브로커 상태를 시각화.
  • Redpanda Console 및 Kafka UI: Kafka 클러스터를 시각적으로 관리하는 웹 기반 도구.

실습 준비

  • Github 저장소 클론
    • develop 브렌치는 초기 상태이며, release 브렌치는 완성 상태
    • 중간부터 실습 하고 싶은 경우 branch로 체크 포인트를 제공하는 것 같다.
  • docker 실행
    • docker compose로 환경을 세팅 가능
  • IntelliJ IDEA 설치 및 프로젝트 초기 상태에서 시작 가능.

---
드디어 기다리던 실습이다.

  • 솔직히 이론 너무 길었다 ㅠㅠ
  • 초보자에게 맞게 도구 소개부터 시작한다.
    위 이미지에서 보듯 도구만 봐도 생소한게 너무 많아서 공부에 도움이 될 것 같다
  • 개발환경 세팅도 내가 관심하는 스프링 클라우드 방법도 알려준다고 해서 기대가 크다.
  • 깃허브 저장소와 환경 구성도 강사님이 제공하는 docker compose로 바로 환경설정이 가능한듯하다.
  • 실습에서 jpa나 mysql등 카프카 실습과 더불어서 사용되는 기술은 크게 다루지 않는다고 한다.
  • Kafka CLI와 Kcat 같은 도구를 사용해 직접 토픽을 생성하고 메시지를 생산/소비해보는 실습이 기대된다.

 

블로그 이미지

감동맨

rkaehdaos의 블로그

,