做网站的参考书,做网站开发还会有前途吗,装饰公司网站模板下载,wordpress登录于未登录菜单Kafka简介 Kafka是由Apache软件基金会开发的一个开源流处理平台#xff0c;由Scala和Java编写。Kafka是一种高吞吐量的分布式发布订阅消息系统#xff0c;它可以处理消费者在网站中的所有动作流数据。 这种动作#xff08;网页浏览#xff0c;搜索和其他用户的行动#xf…Kafka简介 Kafka是由Apache软件基金会开发的一个开源流处理平台由Scala和Java编写。Kafka是一种高吞吐量的分布式发布订阅消息系统它可以处理消费者在网站中的所有动作流数据。 这种动作网页浏览搜索和其他用户的行动是在现代网络上的许多社会功能的一个关键因素。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。 对于像Hadoop一样的日志数据和离线分析系统但又要求实时处理的限制这是一个可行的解决方案。Kafka的目的是通过Hadoop的并行加载机制来统一线上和离线的消息处理也是为了通过集群来提供实时的消息。
一丶主要特性
Kafka [1]是一种高吞吐量 [2]的分布式发布订阅消息系统有如下特性通过O(1)的磁盘数据结构提供消息的持久化这种结构对于即使数以TB的消息存储也能够保持长时间的稳定性能。高吞吐量 [2]即使是非常普通的硬件Kafka也可以支持每秒数百万 [2]的消息。支持通过Kafka服务器和消费机集群来分区消息。支持Hadoop并行数据加载
二丶Kafka场景应用 日志收集一个公司可以用Kafka可以收集各种服务的log通过kafka以统一接口服务的方式开放给各种consumer例如hadoop、Hbase、Solr等。
消息系统解耦和生产者和消费者、缓存消息等。
用户活动跟踪Kafka经常被用来记录web用户或者app用户的各种活动如浏览网页、搜索、点击等活动这些活动信息被各个服务器发布到kafka的topic中然后订阅者通过订阅这些topic来做实时的监控分析或者装载到hadoop、数据仓库中做离线分析和挖掘。
运营指标Kafka也经常用来记录运营监控数据。包括收集各种分布式应用的数据生产各种操作的集中反馈比如报警和报告。
流式处理比如spark streaming和storm事件源
三丶Kafka场景应用 Consumergroup各个consumer可以组成一个组每个消息只能被组中的一个consumer消费如果一个消息可以被多个consumer消费的话那么这些consumer必须在不同的组。消息状态在Kafka中消息的状态被保存在consumer中broker不会关心哪个消息被消费了被谁消费了只记录一个offset值指向partition中下一个要被消费的消息位置这就意味着如果consumer处理不好的话broker上的一个消息可能会被消费多次。消息持久化Kafka中会把消息持久化到本地文件系统中并且保持极高的效率。消息有效期Kafka会长久保留其中的消息以便consumer可以多次消费当然其中很多细节是可配置的。批量发送Kafka支持以消息集合为单位进行批量发送以提高push效率。push-and-pull :Kafka中的Producer和consumer采用的是push-and-pull模式即Producer只管向broker push消息consumer只管从broker pull消息两者对消息的生产和消费是异步的。Kafka集群中broker之间的关系不是主从关系各个broker在集群中地位一样我们可以随意的增加或删除任何一个broker节点。负载均衡方面 Kafka提供了一个 metadata API来管理broker之间的负载对Kafka0.8.x而言对于0.7.x主要靠zookeeper来实现负载均衡。同步异步Producer采用异步push方式极大提高Kafka系统的吞吐率可以通过参数控制是采用同步还是异步方式。分区机制partitionKafka的broker端支持消息分区Producer可以决定把消息发到哪个分区在一个分区中消息的顺序就是Producer发送消息的顺序一个主题中可以有多个分区具体分区的数量是可配置的。分区的意义很重大后面的内容会逐渐体现。离线数据装载Kafka由于对可拓展的数据持久化的支持它也非常适合向Hadoop或者数据仓库中进行数据装载。插件支持现在不少活跃的社区已经开发出不少插件来拓展Kafka的功能如用来配合Storm、Hadoop、flume相关的插件。
四丶Kafka的安装应用 1.kafka的安装下载 官网下载Index of /dist/zookeeper 网盘下载链接https://pan.baidu.com/s/1zv_s7K7Rav9cZsxgNMmz1w?pwdDMDM 提取码DMDM 2.解压即安装并在当前解压路径下创建logs目录 3.修改配置在*\config目录下
注意反双斜杠
log.dirsD:\\bigdata\\kafka\\2.12-3.5.1\\logs4.修改 listeners 参数值这里我是改为本地 5.启动zookeeper因为kafka基于zookeeper运行
打开winr,cmd输入zkServer
显示 6.启动kafka在kafka的解压目录输入以下命令
.\bin\windows\kafka-server-start.bat .\config\server.properties显示 五丶Kafka的相关命令操作 1.创建topics打开前面两个窗口的前提下
1.D:\softwareIT\kafka_3.5.1\bin\windows 目录下cmd 打开黑窗口2.输入kafka-topics.bat --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test2.创建topics打开前面两个窗口的前提下
kafka-topics.bat --bootstrap-server localhost:9092 --list3.同样在windows目录下打开黑窗口(生产者)
kafka-console-producer.bat --broker-list localhost:9092 --topic test4.同样在windows目录下打开黑窗口(消费者)
kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test --from-beginning这里可以看到消费者这里haha打印了。
结尾安装到这儿介绍就完了喜欢的朋友点个赞吧下一章将介绍springbootkafka的基础应用