Kafka获取错误无法在引导服务器中提供可解析的引导程序URL

时间:2016-11-16 13:04:55

标签: java maven apache-kafka kafka-producer-api

我非常确定bootstrap.servers是正确的。 Maven中有什么冲突或Kafka有什么问题吗?

在此之前它成功地运作了。我添加了一些Maven或Spark然后出了点问题..

有谁知道如何解决它?

这是java中的kafka代码

Properties props = new Properties();
        props.put("bootstrap.servers", "x.xx.xxx.xxx:9092");
        props.put("metadata.broker.list", "x.xx.xxx.xxx:9091, x.xx.xxx.xxx:9092, x.xx.xxx.xxx:9093");

        props.put("producer.type", "async");
        props.put("batch.size", "500");
        props.put("compression.codec", "1");
        props.put("compression.topic", topicName);
        props.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer");
        props.put("value.serializer", "org.apache.kafka.common.serialization.StringSerializer");

            org.apache.kafka.clients.producer.Producer<String, String> producer = new KafkaProducer<String, String>(
                    props);

获取错误无法在引导程序服务器中提供可解析的引导程序URL,

[err]   at org.apache.kafka.clients.producer.KafkaProducer.<init>(KafkaProducer.java:335)
    [err]   at org.apache.kafka.clients.producer.KafkaProducer.<init>(KafkaProducer.java:188)
    [err]   at com.wra.controller.ParserController.GetResumeUpload(ParserController.java:98)
    [err]   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [err]   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)
    [err]   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
    [err]   at java.lang.reflect.Method.invoke(Method.java:508)
    [err]   at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:221)
    [err]   at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:136)
    [err]   at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:114)
    [err]   at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827)
    [err]   at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738)
    [err]   at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
    [err]   at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
    [err]   at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
    [err]   at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
    [err]   at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)
    [err]   at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
    [err]   at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
    [err]   at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
    [err]   at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1290)
    [err]   at [internal classes]
    [err]   at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    [err]   at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:207)
    [err]   at [internal classes]
    [err]   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1153)
    [err]   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    [err]   at java.lang.Thread.run(Thread.java:785)
    [err] Caused by: 
    [err] org.apache.kafka.common.config.ConfigException: No resolvable bootstrap urls given in bootstrap.servers
    [err]   at org.apache.kafka.clients.ClientUtils.parseAndValidateAddresses(ClientUtils.java:59)
    [err]   at org.apache.kafka.clients.producer.KafkaProducer.<init>(KafkaProducer.java:275)
    [err]   ... 51 more

2 个答案:

答案 0 :(得分:8)

&#34; metadata.broker.list&#34;不推荐使用&#34; bootstrap.servers&#34;用来代替。删除&#34; metadata.broker.list&#34;您的代码中的配置应该可以解决问题。请在difference between bootstrap.servers and metadata.broker.list

了解更多详情

答案 1 :(得分:1)

对于任何在MapR客户端库中遇到此问题的人,如果忘记了流名称前面的/,就会得到此信息。