色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

python - 如何使用pykafka consumer進行數據處理并保存?

瀏覽:122日期:2022-07-29 10:47:55

問題描述

使用本地kafka bin/kafka-console-producer.sh --broker-list kafkaIP:port --topic topicName創建命令行生產數據,然后打開python

from pykafka import KafkaClientclient = KafkaClient(hosts='192.168.x.x:9092')topic = client.topics[’wr_test’]consumer = topic.get_balanced_consumer(consumer_group=’test-consumer-group’,auto_commit_enable=True,zookeeper_connect=’192.168.x.x:2121’)

然后自己編寫了簡單的一套處理函數,從外部引用。將數據處理后存入elasticsearch 或者 數據庫比如for msg in consumer:

if msg is not None: 外部引入的處理函數(msg.value)

在python命令行for msg in consumer:

print msg.offset, msg.value

這時候使用生產者敲入一些數據,在消費端就會就會立即打印出來但是寫成py文件之后,每次運行只會處理最近的生產的一次內容,在生產者中再進行輸入一些內容,py文件就不會再進行數據處理了。所以向問下如何編寫能運行后能一直對消費者數據進行處理的函數?要注意哪些地方?

另外,get_balanced_consumer的方法,是連接zookeeper消費使用topic.get_simple_consumer是直接消費kafka,使用這種方式就提示No handler for...的錯誤

還有一個疑問,就是實際生產環境日志產生量很快,應該如何編寫一個多線程處理方法?

問題解答

回答1:

在別人的博客看到一種替代的解決方案http://www.cnblogs.com/castle...從consumer中將msg.value讀取到一個列表當中,然后從列表中讀取數據進行數據處理,當這個流程結束后,再把列表中獲取的數據pop掉。另外也要用try: ... except :... continue

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 男女男在线精品网站免费观看 | 免费看欧美一级特黄a毛片 免费看片aⅴ免费大片 | 黄色视影 | 久久se精品一区精品二区 | 亚洲精品久久一区二区无卡 | 亚洲精品一区二区手机在线 | 三级韩国一区久久二区综合 | 国内精品福利视频 | 亚洲欧美另类日本久久影院 | 国产情侣无套精品视频 | 一级做a爱片久久毛片 | 国产成人精品久久一区二区小说 | 香蕉99国内自产自拍视频 | 久夜色精品国产一区二区三区 | 久久中文字幕综合不卡一二区 | 国产成人a在一区线观看高清 | 日本加勒比系列 | 日韩国产欧美成人一区二区影院 | 国产精品亚洲一区二区三区久久 | 国产欧美亚洲精品a | 一国产一级淫片a免费播放口 | 性做久久久久免费观看 | 中国三级毛片 | 五月激情丁香婷婷综合第九 | 欧美日韩精品国产一区二区 | 国产成人丝袜网站在线看 | 亚洲精品久久久久中文字幕一区 | 欧美成人免费高清视频 | 一区二区三区视频在线观看 | 久久久夜间小视频 | 波多野结衣一区二区 三区 波多野结衣一区二区三区88 | 色天天躁夜夜躁天干天干 | 黄大片日本一级在线a | 91在线永久| 久热中文字幕在线精品免费 | 国产亚洲毛片在线 | 精品国产日韩亚洲一区在线 | 亚洲伦| 国产一区二区免费不卡在线播放 | 94欧美setu | 久久久国产99久久国产首页 |