shell自动生产带随机延迟时间戳JSON数据到kafka

创建topic

kafka-topics.sh --delete --zookeeper localhost:2181 --topic test-20230227
kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 3 --topic test-20230227

自动生产数据到Kafka脚本:auto_to_kf.sh

#!/bin/bash
topic_key="test-20230227"
max_num=10000
#date +%s%N #生成19位数字,1287764807051101270
#time=`date +%S`
#time2=$((10#time%15))
for((i=0;i<$max_num;i++))
do
   # json1
   rd_num=$[ $((10#`date +%s%N | cut -c13-17`)) - 50000 ]  #取八位数字,21793709
   rd_str=`date +%s%N | md5sum | head -c 5` #八位字母和数字的组合,87022fda
   ms=$[ $(date +%s%N)/1000000 - $[ 1000*10* $[ $rd_num % 3 ]] ]
   json={\"aa\":$rd_num,\"bb\":\"随机-$rd_str\",\"ts\":$ms}
   echo $json
   echo $json | kafka-console-producer.sh --broker-list localhost:9092 --topic ${topic_key}
   sleep 1 #停1s
done  

启动命令

nohup ./auto_to_kf.sh  &
ps -ef|grep auto

效果 kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test-20230227

shell自动生产带随机延迟时间戳JSON数据到kafka_第1张图片

你可能感兴趣的:(实时,kafka,json,java)