• 老王带你走过 Kafka 入门教程


    Apache Kafka是分布式发布-订阅消息系统,在 kafka官网上对 kafka 的定义:一个分布式发布-订阅消息传递系统。 它最初由LinkedIn公司开发.

    Linkedin于2010年贡献给了Apache基金会并成为顶级开源项目。Kafka是一种快速、可扩展的、设计内在就是分布式的,分区的和可复制的提交日志服务。

    主要构建如下:

    1、话题(Topic):是特定类型的消息流。消息是字节的有效负载(Payload),话题是消息的分类名或种子(Feed)名;

    2、生产者(Producer):是能够发布消息到话题的任何对象;

    3、服务代理(Broker):已发布的消息保存在一组服务器中,它们被称为代理(Broker)或Kafka集群;

    4、消费者(Consumer):可以订阅一个或多个话题,并从Broker拉数据,从而消费这些已发布的消息;

    kfaka最简单的生产者与消费者相关操作:

    pom.xml引入依赖jar包

    生产者:

    消费者:

     

    修改配置文件相关配置

    启动 zookeeper 服务
    bin/zookeeper-server-start.sh config/zookeeper.properties

    启动 kafka Broker 服务
    bin/kafka-server-start.sh config/server.properties

    创建一个单分区单副本的 topic: topicLog
    bin/kafka-topics.sh --create --zookeeper localhost:26005 --replication-factor 1 --partitions 1 --topic topicLog
    Created topic "topicLog".

    注:记得设置jdk
    export JAVA_HOME=/home/tomcat/jdk-1.8 
    export PATH=$JAVA_HOME/bin:$PATH

    bin/kafka-console-producer.sh --broker-list 172.17.0.8:26006 --topic topicLog
    bin/kafka-console-consumer.sh --zookeeper 172.17.0.8:26005 --topic topicLog --from-beginning


    bin/kafka-topics.sh --zookeeper localhost:26005 --delete --topic topicLog


    但是运行命令后,topic并没有被删除,使用 “bin/kafka-topics.sh –list –zookeeper localhost:26005”

    仍然可以查到。此时我们需要修改config/server.properties文件中的 “delete.topic.enable=true”

    来打开这个功能。此时我们再执行上面的 –delete 操作,即可删除topic了。

    综述:我们现在项目中均是以kafka作为生产者。由storm 或者logstash去消费相关消息。从而实现我们的相关的业务分析。数据分析。

    —————————————————————————————————

    推荐阅读:

    ElasticSearch(head)

    6 个重构方法可帮你提升 80% 的代码质量

    filebeat+kafka+strom+logstash+es 舆情采集系统

    大数据核心技术

  • 相关阅读:
    HDU 5569 matrix
    HDU 2795 Billboard
    HDU 1394 Minimum Inversion Number
    HDU 1754 I Hate It
    HDU 1166 敌兵布阵
    FOJ 2206 函数求解
    hihoCoder 1252 Kejin Game
    hihoCoder 1257 Snake Carpet(很简单的构造方法)
    2015 ACM / ICPC 亚洲区域赛总结(长春站&北京站)
    HDU 2485 Destroying the bus stations
  • 原文地址:https://www.cnblogs.com/Javame/p/9545960.html
Copyright © 2020-2023  润新知