カフカ実習2

4748 ワード

環境の構築

$ git clone https://github.com/wurstmeister/kafka-docker
$ cd [git clone한 위치]
# (저장용) 내컴퓨터에서는 cd ~/kafka_practice/kafka-docker 에 위치
$ vim docker-compose-single-broker.yml
$ docker-compose -f docker-compose-single-broker.yml up -d
  • docker-compose-single-broker.ymlからKAFKA_ADVERTISED_HOST_NAME: 127.0.0.1に変更
  • コンテナ(カフカ-ドックステーションkafka 1、カフカ-ドックステーションzookeeeper 1)
  • (参照)docker-compose-single-broker。yml最終状態

    version: '2'
    services:
      zookeeper:
        image: wurstmeister/zookeeper
        ports:
          - "2181:2181"
      kafka:
        build: .
        ports:
          - "9092:9092"
        environment:
          KAFKA_ADVERTISED_HOST_NAME: 127.0.0.1
          KAFKA_CREATE_TOPICS: "test:1:1"
          KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
        volumes:
          - /var/run/docker.sock:/var/run/docker.sock

    プロデューサー/コンシューマ簡易テスト

    # kafka 깔려있는 곳으로 이동
    $ cd ~/kafka_practice/temp/kafka_2.13-2.7.0/bin
    
    # 프로듀서 띄우기
    $ ./kafka-console-producer.sh --bootstrap-server localhost:9092 --topic test
    # 컨슈머 띄우기
    $ ./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test

    (Practice 1)プロデューサーを起動してjavaファイルsimple-Kafka-commerをテストする

    # 프로듀서 띄우기
    $ ./kafka-console-producer.sh --bootstrap-server localhost:9092 --topic test
  • インテル第2世代SimpleConsumer.javaは、
  • を実行します.
  • 経路:~/kafka実践/実践dvwy/tacademy-kafka/単純-kafka-消費者
  • を実行してレコードを取得
  • (実践2)Kafka-commer-auto-commit練習

  • の方法1と同じ場合、eclipse上で実行し、実践します.
  • クマンデセルが飛ばしたプロデューサーにデータを入れ、飛ばしたkafka-consumer-auto-commitプロデューサーが良い
  • を撮ることを確保する.
  • 60秒までに、eclipseで実行中の消費者を閉じて再実行すると、コミットされるわけではないので、eclipse画面に送信されたレコードが再撮影されるか確認できます♡これは、繰り返し処理と同様、
  • であれば、重複や紛失を防ぐためにどのように設定すればいいのでしょうか.
    タイムスタンプの値を
  • データに送信後、最終マウント時にタイムスタンプの値を明確に入れればよいこれにより、障害発生時にパーティション<>コントローラを再割り当てする際に、損失/重複データ
  • を防止することができる.

    (実践3)Kafka-commer-auto-commit練習

  • 作り方2の繰り返し
  • スマートカードでkafka-cussumer-sync-commitファイルを実行し、k.kermandshellで公開されたプロデューサーにデータを入れてから実行を閉じると、k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.

    (実践4)Kafka-commer-multi-thread練習

  • 以前のファイルとは異なり、2つの「コレクターWithMultiThread」、「コレクターWorker」ファイルがあります.
  • 実習の時、次のスクリーンショット部分thread-2万は、1つのパーティションしかないので.
    -そのため、実習前に3つのパーティションが正しいことを確認してください.