Kafka是我们常用的消息队列,python kafka库可以实现Producer和Comsumer,相关资料一查一大把,我们今天来讲讲一些特别的配置和注意事项
Producer
- api_version,使用的时候最好指定api_version,(0,9)或者(0,10)之类的,不然容易发生编码错误传不出去
- producer.send()时候可以带上key 这个optional的参数,效果是把消息尽量均匀地分散到各个partition上,这样可以使后面的consumer都保持活跃的消费状态,节约时间
Comsumer
- 同样要指定api version
- enable_auto_commit这个参数是手动提交,往往我们希望手动提交的时候会把这参数设成FALSE,但其实自动提交和手动提交不冲突,自动提交是周期性进行的,当你完成一系列重要工作时想提交的时候可以自己再手动提交。