发送消息的是 java public void sendMsg(String topic, String key, String value) { // 实例化 produce KafkaProducer<String, String> kp = new KafkaProducer<String, String>(properties); // 消息封装 ProducerRecord<String, String> pr = new ProducerRecord<String, String>(topic,key,value);
// 发送数据
kp.send(pr, new Callback() {
// 回调函数
@Override
public void onCompletion(RecordMetadata metadata, Exception exception) {
if (null != exception) {
System.out.println(exception.getMessage() + exception);
}
}
});
// 关闭 produce
kp.close();
}
消费消息的是 php,参考的是文档的示例: https://arnaud-lb.github.io/php-rdkafka/phpdoc/rdkafka.examples-low-level-consumer-basic.html
// Start consuming partition 0
$topic->consumeStart(0, RD_KAFKA_OFFSET_STORED);
0 代表的是分区,但是我怎么知道,是发送到哪儿个分区了呢? java 发送时又没有指定分区。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.