開放平臺日誌推送---kafka
解耦
ASynchronize非同步
Synchronize 同步
Kafka訊息資料積壓,Kafka消費能力不足怎麼處理?
1)如果是Kafka消費能力不足,則可以考慮增加Topic的分割槽數,並且同時提升消費組的消費者數量,消費者數=分割槽數。(兩者缺一不可)
2)如果是下游的資料處理不及時:提高每批次拉取的數量。批次拉取資料過少(拉取資料/處理時間<生產速度),使處理的資料小於生產的資料,也會造成資料積壓。
一 kafka安裝
1. 建立docker-net
docker network create -d overlay docker-net
2. docker-compose-kafka.yml
version: '3.6'
services:
zk:
image: wurstmeister/zookeeper
networks:
- docker-net
ports:
- "2181:2181"
manager:
image: kafkamanager/kafka-manager
links:
- zk:zk
networks:
- docker-net
ports:
- "10080:9000"
environment:
ZK_HOSTS: zk:2181
broker_1:
image: wurstmeister/kafka
networks:
- docker-net
links:
- zk:zk
ports:
- "9092:9092"
environment:
KAFKA_BROKER_ID: 1
KAFKA_HOST_NAME: ip
KAFKA_ADVERTISED_HOST_NAME: ip
KAFKA_ZOOKEEPER_CONNECT: zk:2181
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://ip:9092
KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092
KAFKA_LOG_DIRS: /logs/kafka
KAFKA_HEAP_OPTS: -Xmx16G -Xms16G
volumes:
- /data4/bin/kafka:/logs/kafka
networks:
docker-net:
external: true
二 kafka 目錄結構
Kafka 0.9版本之前,consumer預設將offset儲存在Zookeeper中,從0.9版本開始,consumer預設將offset儲存在Kafka一個內建的topic中,該topic為__consumer_offsets。
Kafka的producer生產資料,要寫入到log檔案中,寫的過程是一直追加到檔案末端,為順序寫。官網有資料表明,同樣的磁碟,順序寫能到到600M/s,而隨機寫只有100k/s。這與磁碟的機械機構有關,順序寫之所以快,是因為其省去了大量磁頭定址的時間。
三 kafka日常運維命令小結
topic列表
kafka-topics.sh --list --zookeeper zk:2181
__consumer_offsets
openai_kong_log
topic詳情
kafka-topics.sh --describe --zookeeper zk:2181 --topic openai_kong_log
Topic: openai_kong_log PartitionCount: 8 ReplicationFactor: 1 Configs:
Topic: openai_kong_log Partition: 0 Leader: 1 Replicas: 1 Isr: 1
Topic: openai_kong_log Partition: 1 Leader: 1 Replicas: 1 Isr: 1
Topic: openai_kong_log Partition: 2 Leader: 1 Replicas: 1 Isr: 1
Topic: openai_kong_log Partition: 3 Leader: 1 Replicas: 1 Isr: 1
Topic: openai_kong_log Partition: 4 Leader: 1 Replicas: 1 Isr: 1
Topic: openai_kong_log Partition: 5 Leader: 1 Replicas: 1 Isr: 1
Topic: openai_kong_log Partition: 6 Leader: 1 Replicas: 1 Isr: 1
Topic: openai_kong_log Partition: 7 Leader: 1 Replicas: 1 Isr: 1
消費組列表
kafka-consumer-groups.sh --bootstrap-server ip:9092 --list
openai
KMOffsetCache-7e0676b0a501
group_openai
--consumer-property
訊息堆積情況
kafka-consumer-groups.sh --bootstrap-server ip:9092 --group group_openai --describe
Consumer group 'group_openai' has no active members.
GROUP TOPIC PARTITION CURRENT-OFFSET LOG-END-OFFSET LAG CONSUMER-ID HOST CLIENT-ID
group_openai openai_kong_log 3 1989534 2002875 13341 - - -
group_openai openai_kong_log 4 1990547 2003945 13398 - - -
group_openai openai_kong_log 1 1988941 2002588 13647 - - -
group_openai openai_kong_log 2 1991347 2004919 13572 - - -
group_openai openai_kong_log 7 1922215 1935656 13441 - - -
group_openai openai_kong_log 5 1921993 1935469 13476 - - -
group_openai openai_kong_log 6 1921179 1934700 13521 - - -
group_openai openai_kong_log 0 30612637 33188446 2575809 - - -
單個topic 常見操作
1.建立topic
kafka-topics.sh --zookeeper ip:2181 \
--create --replication-factor 1 --partitions 1 --topic first
2.傳送訊息
kafka-console-producer.sh \
--broker-list ip:9082 --topic first
>hello world
>atguigu atguigu
消費訊息 --from-beginning:會把主題中以往所有的資料都讀取出來
kafka-console-consumer.sh \
--bootstrap-server ip:9082 --from-beginning --topic first
3.修改分割槽數
kafka-topics.sh --zookeeper ip:2181 --alter --topic first --partitions 6
4.刪除topic
kafka-topics.sh --zookeeper ip:2181 \
--delete --topic first
參考
https://www.cnblogs.com/wangzhuxing/p/10127497.html
相關文章
- ELK+FileBeat+Kafka搭建日誌管理平臺Kafka
- ai開放平臺AI
- 搭建ELK日誌平臺(單機)
- 外貿郵件推送平臺,外貿開發信郵件推送平臺,外貿EDM推送平臺,如何選擇?
- 工行api開放平臺API
- 抖店開放平臺
- 使用Kafka做日誌收集Kafka
- 日誌分析平臺ELK之日誌收集器logstash
- 日誌分析平臺ELK之日誌收集器filebeat
- 開放平臺架構指南架構
- AI開放平臺-科大訊飛AI
- 使用ELK構建微服務的日誌平臺微服務
- 某行日誌平臺 Elasticsearch 運維基礎篇Elasticsearch運維
- Elasticsearch+kibana+logstash 搭建日誌收集分析平臺Elasticsearch
- 如何把 Laravel 的日誌推到Kafka?LaravelKafka
- kafka-log日誌程式碼解析Kafka
- filebeat 收集nginx日誌輸出到kafkaNginxKafka
- 開放式的檔案管理平臺
- 阿里巴巴開放平臺 sdk -PHP阿里PHP
- [平臺建設] 大資料平臺如何實現任務日誌採集大資料
- ELK構建MySQL慢日誌收集平臺詳解MySql
- ELKStack日誌平臺——Kibana6.3.2安裝與配置
- 2023最新ELK日誌平臺(elasticsearch+logstash+kibana)搭建Elasticsearch
- 在開放平臺建立第三方平臺應用
- 日誌分析平臺ELK之日誌收集器logstash常用外掛配置
- 分散式流平臺Kafka分散式Kafka
- 大資料開發過程中Kafka日誌結構解析大資料Kafka
- 餓了麼美團開放平臺接入
- AI開放平臺的作用是什麼?AI
- “淘寶” 開放平臺介面設計思路
- 肖央代言《放開那三國3》7月15日全平臺公測
- asp.net core使用serilog將日誌推送到騰訊雲日誌服務ASP.NET
- .NET Core + ELK搭建視覺化日誌分析平臺(上)視覺化
- 日誌分析平臺ELK之搜尋引擎Elasticsearch叢集Elasticsearch
- 阿里雲 PB 級 Kubernetes 日誌平臺建設實踐阿里
- 運維平臺之應用日誌解決方案--ELK運維應用日誌
- 訊息推送平臺的實時數倉?!flink消費kafka訊息入到hiveKafkaHive
- 微信開放平臺 第三方平臺開發踩坑記錄