zoukankan      html  css  js  c++  java
  • Kafka 入门之集群部署遇到问题

      最近,因为上级主管部门需要通过使用Kafka向其传输文件,又因为此前没有接触过kafka,所以在部署测试kafka程序期间遇到很多问题,在这里总结4个问题与1个建议,方便入门者参考也便于遇到类似问题进行查阅完善。

     1.Kafka java代码与Kafka 软件的关系

    Kafka java代码与Kafka 软件之间究竟有什么关系呢?Kafka java代码中已经使了kafka-clients-0.8.2.1.jar,kafka_2.11-0.8.2.1.jar,那么还需要安装kafka_2.11-0.10.2.1么?并可Kafkaproducer.properties已经包含了Kafka软件中 server.propertiy zookeeper.connect,等等属性,那么是不是可以取代Kafka 软件了呢?

    Kafka 软件:目前使用版本为kafka_2.11-0.10.2.1,kafka_2.11-0.10.2.1inwindows,可启动Kafka,可创建Topic,可启动一个生产者进程来发送消息,也可以启动一个消费者进程来消费消息,见下:

    #创建topic
    binwindowskafka-topics.bat --create --zookeeper 101.201.177.100:2181 --replication-factor 1 --partitions 1 --topic mytest-topic
    #启动一个生产者进程来发送消息
    binwindowskafka-console-producer.bat --broker-list 101.201.177.100:9092 --topic mytest-topic
    #启动一个消费者进程来消费消息
    binwindowskafka-console-consumer.bat --zookeeper localhost:2181 --topic my-topic --from-beginning

    Kafka java代码:用于编写Kafka的Producer端与Consumer端,完成消息的发送与接收;

    区别:也就是Kafka java代码运行,离不开Kafka 软件,因为是调用Kafka 软件中的kafka-console-consumer.bat、kafka-console-producer.bat;

     2.ZooKeeper与Kafka 软件的关系

    zooKeeper集群与Kafka集群之间有什么关系,之前一位对Kafka有所研究的朋友说,作为Kafka的客户端,只需要在此机安装Zookeeper就可以了?然而,在参考各种Kafka集群配置的时候有每台机器都部署zookeeper与kafka的,也有只有1台部署zookeeper的(同时部署Kafka),3台部署kafka的;那究竟是怎样的呢?

    在读此篇博文,顿觉一语中的 “”Kafka集群是把状态保存在Zookeeper中的,首先要搭建Zookeeper集群。” 图文参考 http://www.cnblogs.com/luotianshuai/p/5206662.html;

     3.Kafka 单机测试通过,集群部署发送文件失败

    单机通过kafka发送文件、接收文件均无问题,根据配置文件修改为远程服务端,却发送失败???期间原因很多,但总结如下:

    1.在修改配置文件后,因为运行后会产生新文件,修改配置文件,容易产生新的错误;

    2.学会看log,根据log提示的错误,查找问题原因,或百度找到解决方法;也需要学会判断判断程序是否正确启动。

    3.Kafka配置时host主机名字不能设置为127.0.0.1 !!!困扰了我18个小时的原因

     4.Kafka 测试

    为了避免重复的额部署、测试,程序能够使用,测试环境是必不可少的啦,建议测试方法如下:

    配置本地环境测试与生产环境测试的程序、与配置文件、启动命令;

    更建议本地使用编程工具(比如 Idea)进行调试,因为编程工具运行起来不需要部署,贼方便哦;

    本地测试OK,进行生产环境测试,只要您的测试与生产环境相似度很高,也就基本OK啦。

  • 相关阅读:
    JS获取单选框checked的value方法
    URL链接后面的参数解析,与decode编码解码;页面刷新回到顶部jquery
    JS原生增删,判断class是否存在方法
    转载:jquery.ajax之beforeSend方法使用介绍
    css3 filter(滤镜)属性汇总与使用介绍,来源W3C
    使用 HTML5 Geolocation 构建基于地理位置的 Web 应用学习网站分享
    js获取移动端触摸坐标
    jquery如何获取手机网页触屏坐标:ontouchstart 、ontouchend、ontouchmove
    js/jquery获取浏览器窗口可视区域高度和宽度以及滚动条高度实现代码
    JS获取浏览器可视区域的尺寸
  • 原文地址:https://www.cnblogs.com/bide/p/7081230.html
Copyright © 2011-2022 走看看