我在本地写了一个producer客户端程序
public class SimpleProducer { public static void main(String[] args) { Properties props = new Properties(); props.put("bootstrap.servers", "localhost:9093"); //一旦改成远端主机就push消息失败了 props.put("acks", "all"); props.put("retries", 0); props.put("batch.size", 16384); props.put("linger.ms", 1); props.put("buffer.memory", 33554432); props.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer"); props.put("value.serializer", "org.apache.kafka.common.serialization.StringSerializer"); Producerproducer = new KafkaProducer (props); for(int i = 0; i < 100; i++) producer.send(new ProducerRecord ("my-topic", "message from client: ", Integer.toString(i))); producer.flush() ; producer.close() ; } }
这段代码在本地的zk+kafka运行很稳定,但是一旦把props.put("bootstrap.servers", "localhost:9093");
改完远端主机的ip:port,push消息就会失败。
但是就算push消息失败,我的topic创建也仍然成功,这是什么原因造成的呢? 运行过程中也没有报错。。