我有几个名单,我想通过Kafka制片人发送。
listA [1,2,3]
listB ["cat", "dog", "fish"]
生产者以字节的形式发送消息,所以我不确定如何正确设置消息,以便列表在需要引号时发送消息。这就是我现在拥有的。
producer = KafkaProducer(bootstrap_servers='localhost:9092')
for _ in range(1):
print(producer.send('test', b'"worker_id": listA , "worker_name" : listB'))
这个方法给了我一个语法错误。我在下面也尝试过这个方法,得到了类似的结果
print(producer.send('test', b("worker_uuid": worker_uuid))
2条答案
按热度按时间lndjwyie1#
你考虑过json编码吗?如果您将kafkaproducer w/a value\u serializer配置为:
然后,您应该能够直接发送您的列表,如下所示:
消费者也需要配置为通过json进行解码。如果您使用的是kafka python,您可以执行以下操作:
w51jfk4q2#
这可以通过首先将列表转换为字节数组来解决。
结果是