我有在一臺機器12周的經紀人和在同一臺機器 一個動物園管理員卡夫卡簇I使用卡夫卡-蟒生成消息阿帕奇卡夫卡多個生產者VS單生產者性能
producer = KafkaProducer(bootstrap_servers='localhost:9092' , acks=0 , linger_ms=10000 , batch_size=2000000 , buffer_memory=1003554432)
for i in range(50000):
#50 Bytes message
msg= 'FDASFAFAFAFAFADDFASFADFAFDASFAFFFFFFFFFFFFFFFFFFF'
#my_topic has 12 partitions , kafka cluster has 12 brokers in single machine
producer.send('my_topic', msg)
當我運行我Python代碼
,我達到吞吐量20,000(消息每秒) ,但是,當我同時運行多個相同的python代碼時,我達到相同的吞吐量(每秒20000個信息)
當我運行單個生產者時,如何實現更好的吞吐量?
我測試許多batch.size和linger.ms值,但我不能獲得更好的性能
可能想看看其他一些卡夫卡python基準測試,看看你如何比較。在同一臺機器上同時運行12個經紀人和一個動物園管理員也不是一個很好的性能配置。檢查你的郵件實際上是否會分配給所有12個分區,而不是一次一個瓶頸。 http://activisiongamescience.github.io/2016/06/15/Kafka-Client-Benchmarking/ –
@HansJespersen融合效果更好,我與合流kafka每秒50,000,謝謝你的回答 –