国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

PHP下kafka的常用腳本實踐

caiyongji / 1622人閱讀

摘要:閱讀本教程前最好先嘗試閱讀下的實踐自帶命令實踐嘗試實踐的知識創建話題生產消息消費消息話題信息獲取消費組獲取消費組的自帶的命令安裝目錄的目錄下代表我們會使用的腳本

閱讀本教程前最好先嘗試閱讀:PHP下kafka的實踐

自帶命令實踐 嘗試實踐的kafka知識:

創建話題

生產消息

消費消息

話題信息

獲取消費組

獲取消費組的offset

自帶的命令
# kafka安裝目錄的bin目錄下
# * 代表我們會使用的腳本
connect-distributed.sh        kafka-log-dirs.sh                    kafka-streams-application-reset.sh
connect-standalone.sh         kafka-mirror-maker.sh                kafka-topics.sh*
kafka-acls.sh                 kafka-preferred-replica-election.sh  kafka-verifiable-consumer.sh
kafka-broker-api-versions.sh  kafka-producer-perf-test.sh          kafka-verifiable-producer.sh
kafka-configs.sh              kafka-reassign-partitions.sh         trogdor.sh
kafka-console-consumer.sh*    kafka-replay-log-producer.sh         windows
kafka-console-producer.sh*    kafka-replica-verification.sh        zookeeper-security-migration.sh
kafka-consumer-groups.sh*     kafka-run-class.sh                   zookeeper-server-start.sh
kafka-consumer-perf-test.sh   kafka-server-start.sh                zookeeper-server-stop.sh
kafka-delegation-tokens.sh    kafka-server-stop.sh                 zookeeper-shell.sh*
kafka-delete-records.sh       kafka-simple-consumer-shell.sh
創建話題(kafka-topics.sh)
# 創建1個分區1個副本的test話題,這里是副本其實可以理解為broker里至少擁有數量,must >=1
# --zookeeper localhost:2181 (kafka的默認端口:2181)
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

# 創建2個分區1個副本的test02話題
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 2 --topic test02

# 列出所有話題
bin/kafka-topics.sh --list --zookeeper localhost:2181
__consumer_offsets
test
test02
# 注意這里的__consumer_offsets是kafka默認創建的,用于存儲kafka消費記錄的話題,我們暫時不用理會


# 列出具體話題的信息
bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic test
Topic:test      PartitionCount:1        ReplicationFactor:1     Configs:
        Topic: test     Partition: 0    Leader: 0       Replicas: 0     Isr: 0


bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic test02
Topic:test02    PartitionCount:2        ReplicationFactor:1     Configs:
        Topic: test02   Partition: 0    Leader: 0       Replicas: 0     Isr: 0
        Topic: test02   Partition: 1    Leader: 0       Replicas: 0     Isr: 0

# 從上面的顯示 我們可以發現,第一句是顯示總體信息,下面縮進顯示的是分區信息
消費者(kafka-console-consumer.sh)
# 啟動一個消費組消費,這里我們需要開啟一個shell終端,因為會等待輸出
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
# 等待輸出
生產者(kafka-console-consumer.sh)
# 這里我們需要開啟一個shell終端,因為會等待輸入
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
# 待我們輸入消息 等待出現>
> msg01
> msg02
> msg03

#注意觀察上面的消費者終端,自動輸出了我們的消息
msg01
msg02
msg03
查看消費組
bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --list
Note: This will not show information about old Zookeeper-based consumers.
console-consumer-25379
console-consumer-73410
console-consumer-27127
console-consumer-61887
console-consumer-61324

# 這里我們再來起一個消費者再次輸出(因為之前的消費者我們不知道最新的這次消費組id是多少)
bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --list
Note: This will not show information about old Zookeeper-based consumers.
console-consumer-25379
console-consumer-73410
console-consumer-27127
console-consumer-39416 # 這個是我們新起的消費組id,下面我們根據這個消費組來做實踐
console-consumer-61887
console-consumer-61324

# 查看消費組的具體信息
bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group console-consumer-39416
Note: This will not show information about old Zookeeper-based consumers.

TOPIC           PARTITION  CURRENT-OFFSET  LOG-END-OFFSET  LAG             CONSUMER-ID                                     HOST            CLIENT-ID
test            0          9               9               0               consumer-1-94afec29-5042-4108-8619-ba94812f10a8 /127.0.0.1      consumer-1

# 查看離線的console-consumer-25379消費組
bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group console-consumer-25379
Note: This will not show information about old Zookeeper-based consumers.
Consumer group "console-consumer-25379" has no active members.

TOPIC           PARTITION  CURRENT-OFFSET  LOG-END-OFFSET  LAG             CONSUMER-ID     HOST            CLIENT-ID
test            0          5               9               4               -               -               -

# 查看離線的console-consumer-27127消費組
bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group console-consumer-27127
Note: This will not show information about old Zookeeper-based consumers.
Consumer group "console-consumer-27127" has no active members.

TOPIC           PARTITION  CURRENT-OFFSET  LOG-END-OFFSET  LAG             CONSUMER-ID     HOST            CLIENT-ID
test            0          6               9               3               -               -               -

# 這里我們發現我們每次都會生成一個消費組一個消費者,不方便我們做一個消費組多個消費者測試
啟動一個消費組多個消費者
cp config/consumer.properties config/consumer_g1.properties
vim config/consumer_g1.properties
# 修改消費組名
group.id=test-consumer-group => group.id=test-g1

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning --consumer.config config/consumer_g1.properties
msg01
msg02
msg03

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning --consumer.config config/consumer_g1.properties
# 無輸出(因為test話題我們只有一個分區,一個分區只能被同個消費組下面的一個消費者消費,所以這個就閑置了)

# 查看消費組
bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --list
Note: This will not show information about old Zookeeper-based consumers.
console-consumer-25379
console-consumer-73410
console-consumer-27127
console-consumer-39416
test-g1
console-consumer-61887
console-consumer-61324

# 查看test-g1消費組
bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group test-g1
Note: This will not show information about old Zookeeper-based consumers.

TOPIC           PARTITION  CURRENT-OFFSET  LOG-END-OFFSET  LAG             CONSUMER-ID                                     HOST            CLIENT-ID
test            0          9               9               0               consumer-1-43922b0c-34e0-47fe-b597-984c9e6a2884 /127.0.0.1      consumer-1

# 下面我們再開啟test02的2個消費組看看情況

# 我們再為test02話題啟動2個test-g1消費組的消費者
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test02 --from-beginning --consumer.config config/consumer_g1.properties

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test02 --from-beginning --consumer.config config/consumer_g1.properties

# 查看test-g1消費組
bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group test-g1
Note: This will not show information about old Zookeeper-based consumers.

TOPIC           PARTITION  CURRENT-OFFSET  LOG-END-OFFSET  LAG             CONSUMER-ID                                     HOST            CLIENT-ID
test02          0          0               0               0               consumer-1-90ccc960-557a-46ab-a799-58c35ee670d8 /127.0.0.1      consumer-1
test02          1          0               0               0               consumer-1-c6d79321-8212-4594-8a11-353f684c54fc /127.0.0.1      consumer-1
test            0          9               9               0               consumer-1-7a2706f7-a206-4c29-ae1f-3726ad21af96 /127.0.0.1      consumer-1

# 這里你可以在話題test產生一個消息看下,然后再test02再多產生幾條消息看下,你會發現test02的2個消費組幾乎是負載的消費了消息
消費組的一些信息命令
bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group my-group --members --verbose
Note: This will not show information about old Zookeeper-based consumers.

CONSUMER-ID                                     HOST            CLIENT-ID       #PARTITIONS     ASSIGNMENT
consumer-1-b8eeb8bc-6aa6-439b-84d8-0fcbed4a2899 /127.0.0.1      consumer-1      1               test02(1)
consumer-1-7109f789-a5cf-4862-94d0-976146dbc769 /127.0.0.1      consumer-1      1               test(0)
consumer-1-90ccc960-557a-46ab-a799-58c35ee670d8 /127.0.0.1      consumer-1      1               test02(0)


bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group my-group --state
Note: This will not show information about old Zookeeper-based consumers.

COORDINATOR (ID)          ASSIGNMENT-STRATEGY       STATE                #MEMBERS
localhost:9092 (0)        range                     Stable               3


bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --delete --group console-consumer-25379
zookeeper(zookeeper-shell.sh) 連接
bin/zookeeper-shell.sh 127.0.0.1:2181
Connecting to 127.0.0.1:2181
Welcome to ZooKeeper!
JLine support is disabled

WATCHER::

WatchedEvent state:SyncConnected type:None path:null
常用命令
ls /
[cluster, controller_epoch, controller, brokers, zookeeper, admin, isr_change_notification, consumers, log_dir_event_notification, latest_producer_id_block, config]

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/29291.html

相關文章

  • PHPkafka實踐

    摘要:消息以為類別記錄將消息種子分類每一類的消息稱之為一個主題。這意味著生產者不等待來自同步完成的確認繼續發送下一條批消息。這意味著在已成功收到的數據并得到確認后發送下一條。三種機制,性能依次遞減吞吐量降低,數據健壯性則依次遞增。 kafka 簡介 Kafka 是一種高吞吐量的分布式發布訂閱消息系統 kafka角色必知 producer:生產者。 consumer:消費者。 topic: 消...

    Codeing_ls 評論0 收藏0
  • 2018最新后端開發人員路線圖

    摘要:簡評之前,后端開發路線圖僅僅是一個技術推薦,且沒有明確的方向指明應該遵循的順序,這份重新制作的指南將會給你一個更好的方向。現在開始創建一個包并分發給其他人使用,并確保遵循迄今為止學到的標準和最佳實踐。 簡評:之前,后端開發路線圖僅僅是一個技術推薦,且沒有明確的方向指明應該遵循的順序,這份重新制作的指南將會給你一個更好的方向。 現在的 Web 開發與幾年前完全不同了,有很多不同的東西可以...

    王陸寬 評論0 收藏0

發表評論

0條評論

caiyongji

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<