zoukankan      html  css  js  c++  java
  • kafka基本概念和hello world搭建

    什么是kafka?

    Kafka是由Apache软件基金会开发的一个开源流处理平台,由ScalaJava编写。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。
    简单地说就是一个实现消息的发送与高效消费的一个消息中间件。

    kafka可以帮助我们做什么?或者是解决什么问题?

    • 日志收集:一个公司可以用Kafka可以收集各种服务的log,通过kafka以统一接口服务的方式开放给各种consumer,例如Hadoop、Hbase、Solr等;
    • 消息系统:解耦和生产者和消费者、缓存消息等;
    • 用户活动跟踪与审计数据收集:Kafka经常被用来记录web用户或者app用户的各种活动,如浏览网页、搜索、点击等活动,这些活动信息被各个服务器发布到kafka的topic中,然后订阅者通过订阅这些topic来做实时的监控分析,或者装载到Hadoop、数据仓库中做离线分析和挖掘;
    • 运营指标:Kafka也经常用来记录运营监控数据。包括收集各种分布式应用的数据,生产各种操作的集中反馈,比如报警和报告;
    • 流式处理;

    5步快速搭建一个kafka的hello world

    1.首先按这篇博文指向的文档把kafka安装包下载好后,启动好zookeeper和kafka实例。
    kafka快速安装

    2.进入kafka安装目录,创建一个名为test的topic。

    bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test
    
    

    3.开启一个消费者,监听test。

    bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
    

    4.向名为test的topic发送消息。

    bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
    This is a message
    This is another message
    

    5.消费者已经输出了刚才发送的消息,hello world实例搭建完成。

    bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
    This is a message
    This is another message
    
  • 相关阅读:
    MongoDB 基础学习
    在 PostgreSQL 中使用码农很忙 IP 地址数据库
    在 MySQL 中使用码农很忙 IP 地址数据库
    编译opencv和opencv_contrib
    修改本次提交日志
    clone报告超过限制
    修改gitolite管理员
    libevent简介[翻译]11 连接监听:接收一个TCP连接
    libevent简介[翻译]11 Evbuffers:缓冲IO的功能函数
    Windows查看TCP连接数
  • 原文地址:https://www.cnblogs.com/powerjiajun/p/11426799.html
Copyright © 2011-2022 走看看