什么是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

转载于:https://www.cnblogs.com/powerjiajun/p/11426799.html

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐