kafka应用讲解及应用场景(三)
一、 验证
1、进入bin目录
cd bin
2、ls查看脚本
会发现下面有很多脚本文件,由于我是要创建一个topic所有直接打开kafka-topics.sh脚本查看命令
打开脚本后发现里面有很多命令,里面命令都有提示,平时操作不知道怎么写时可以查看
由于我要创建的topic要设置分区和副本,所以需要的命令有下面这五个
- --create是创建命令
- --topic是创建topic的名字
- --bootstrap-server指连接到哪个节点
- --partitions指定多少个分区
- --replication-factor副本
3、创建命令
./bin/kafka-topics.sh --create --topic test --bootstrap-server 192.168.32.122:9092 --partitions 1 --replication-factor 1
里面日志非常详细可以看下,里面写了副本名称例如set(test-0)还有他存放位置及刷新时间
4、查看信息
cd /root/kafka/kafka-logs
可以看到里面有个test-0信息
进入test-0可以看到里面详细信息,但里面消息是空的
5、查看topic信息命令
./bin/kafka-topics.sh --describe --topic test --bootstrap-server 192.168.32.122:9092
6、发送消息
进入ls bin/可以看到里面的发送消息和消费消息的脚本,所以平时如果需要什么命令可以自己进去查看
发送消息
./bin/kafka-console-producer.sh --bootstrap-server 192.168.32.122:9092 --topic test
7、消费消息
另起一台服务器,发送命令
./bin/kafka-console-consumer.sh --bootstrap-server 192.168.32.122:9092 --topic test --from-beginning
这样就可以一边发消息一边消费了
二、kafka应用场景
2.1 消息
kafka 更好的替换传统的消息系统,消息系统被用于各种场景(解耦数据生产者,缓存未处理的消息),与大多数消息系统比较,kafka 有更好的吞吐量,内置分区,副本和故障转移等功能,这有利于处理大规模的消息。
根据官方的经验,通常消息传递使用较低的吞吐量,但可能要求较低的端到端延迟,kafka 提供强大的持久性来满足这一要求。在这方面,Kafka 可以与传统的消息传递系统(ActiveMQ 和 RabbitMQ)相媲美。但是RabbitMQ可以顺序消费但kafka很难实现。
2.2 跟踪网站活动
kafka 的最初始作用就是是将用户活动跟踪管道重建为一组实时发布-订阅源。 把网站活动(浏览网页、搜索或其他的用户操作)发布到中心 topic,其中每个活动类型有一个 topic。 这些订阅源提供一系列用例,包括实时处理、实时监视、对加载到Hadoop或离线数据仓库系统的数据进行离线处理和报告等。每个用户浏览网页时都生成了许多活动信息,因此活动跟踪的数据量通常非常大。这就非常使用使用 kafka。
2.3 日志聚合
许多人使用 kafka来替代日志聚合解决方案。日志聚合系统通常从服务器收集物理日志文件,并将其置于一个中心系统(可能是文件服务器或HDFS)进行处理。kafka 从这些日志文件中提取信息,并将其抽象为一个更加清晰的消息流。 这样可以实现更低的延迟处理且易于支持多个数据源及分布式数据的消耗。与 Scribe 或 Flume 等以日志为中心的系统相比,Kafka具备同样出色的性能、更强的耐用性(因为复制功能)和更低的端到端延迟。
2.4 流处理
从0.10.0.0开始,kafka 支持轻量,但功能强大的流处理。kafka消息处理包含多个阶段。其中原始输入数据是从kafka主题消费的,然后汇总,丰富,或者以其他的方式处理转化为新主题以供进一步消费或后续处理。例如,一个推荐新闻文章,文章内容可能从“articles”主题获取;然后进一步处理内容,得到一个处理后的新内容,最后推荐给用户。这种处理是基于单个主题的实时数据流。除了Kafka Streams,还有 Apache Storm 和 Apache Samza 也是不错的流处理框架。
2.5 事件采集
Event sourcing是一种应用程序设计风格,按时间来记录状态的更改。 Kafka 可以存储非常多的日志数据,为基于 event sourcing 的应用程序提供强有力的支持。
2.6 提交日志
kafka 可以从外部为分布式系统提供日志提交功能。 日志有助于记录节点和行为间的数据,采用重新同步机制可以从失败节点恢复数据。 Kafka的日志压缩 功能支持这一用法。 这一点与Apache BookKeeper 项目类似。
kafka应用讲解及应用场景(三)的更多相关文章
- redis5种数据结构讲解及使用场景
string list hash set zset 探究 Redis 4 的 stream 类型 redis提供了5中数据结构,理解每种数据结构的特点对于redis开发运维非常重要. 一.字符 ...
- Kafka的特点及使用场景
Kafka是分布式发布-订阅消息系统.它最初由LinkedIn公司开发,之后成为Apache项目的一部分.Kafka是一个分布式的,可划分的,冗余备份的持久性的日志服务.它主要用于处理活跃的流式数据. ...
- Kafka从入门到放弃(三)—— 详说消费者
之前介绍了Kafka以及生产者,包括它的一些特性和参数,这回写一下消费者. 之前没看得可以点击链接阅读. Kafka从入门到放弃(一) -- 初识Kafka Kafka从入门到放弃(二) -- 详说生 ...
- ionic 2 起航 控件的使用 客户列表场景(三)
我们来看看客户列表的搜索控件是怎么工作的吧. 1.打开customer.html <ion-content> <ion-searchbar [(ngModel)]="sea ...
- kafka客户端和服务端开发(三)
前面我们已经搭建了kafka的单机和集群环境,分别写了简单的实例代码,对于代码里面使用到的参数并没有做解释.下面我们来详细说一下各个参数的作用. 1. 创建kafka生产者 kafka生产者有3个必选 ...
- 深入理解Kafka核心设计及原理(三):消费者
转载请注明出处:https://www.cnblogs.com/zjdxr-up/p/16114877.html 深入理解Kafka核心设计及原理(一):初识Kafka 深入理解Kafka核心设计及原 ...
- 毕向东JAVA视频讲解笔记(前三课)
1,定义一个类,因为java程序都定义类中,java程序都是以类的形式存在的,类的形式其实就是一个字节码文件最终体现. 2,定义一个主函数.为了让该类可以独立运行. 3,因为演示hello world ...
- asp.net core microservices 架构之分布式自动计算(三)-kafka日志同步至elasticsearch和kibana展示
一 kafka consumer准备 前面的章节进行了分布式job的自动计算的概念讲解以及实践.上次分布式日志说过日志写进kafka,是需要进行处理,以便合理的进行展示,分布式日志的量和我们对日志的重 ...
- 【原创】阿里三面:搞透Kafka的存储架构,看这篇就够了
阅读本文大约需要30分钟.这篇文章干货很多,希望你可以耐心读完. 你好, 我是华仔,在这个 1024 程序员特殊的节日里,又和大家见面了. 从这篇文章开始,我将对 Kafka 专项知识进行深度剖析, ...
随机推荐
- GIMP 一键均匀添加多条参考线 一键均匀切分图片
添加参考线 #!/usr/bin/env python2 # -*- coding: utf-8 -*- from gimpfu import * # orientation: ORIENTATION ...
- 剑指offer计划5(查找算法中等版)---java
1.1.题目1 剑指 Offer 04. 二维数组中的查找 1.2.解法 其实就是暴力解法的升级版,从最后一行开始判断,通过num当前的大小, 如果还是大于目标值则行数-1,若是小于则列数+1 1.3 ...
- Python网络爬虫——京东商城商品列表
Python_网络爬虫--京东商城商品列表 最近在拓展自己知识面,想学习一下其他的编程语言,处于多方的考虑最终选择了Python,Python从发布之初就以庞大的用户集群占据了编程的一席之地,pyth ...
- Docker(36)- docker run 的流程和原理
背景 目前项目组上, Docker 用的非常重,所有微服务都是通过 docker 来部署的 所以不能仅仅会命令,还得会一些原理的东西,特此补一篇基础点的,后面再更加深入一些 docker 原理 本篇学 ...
- pyRevit开发:如何创建轴网
必看部分: Document获取: 必看文章 如何添加基本项目引用 基础部分: 创建轴网 基本思路: 首先添加引用 获取当前项目文档 创建轴网定位线 创建轴网 设置轴网名称 实现代码: import ...
- Linux 配置Maven(避免踩坑篇)
前言:请各大网友尊重本人原创知识分享,谨记本人博客:南国以南i 一.访问Maven官网下载压缩文件. 二.下载好的maven安装包放在磁盘的 /usr/local/ 目录下,如下图: 三.解压该压缩文 ...
- Vue组件传值(二)之 非父子组件传值
Vue中非父子组件之间是如何实现通信的? 本章主要讲的是非父子组件传值,父子组件传值请看上一篇文章. 1.创建新的Vue实例引入项目中,通过$emit.$on来实现非父子组件传值: 1 <!DO ...
- java版gRPC实战之四:客户端流
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- 消息队列之 kafka 集群搭建
我们先弄清楚kafka集群环境首先需要些什么 JDK 10+ Zookeeper Kafka 2.x 首先准备三台虚拟机 centos7 ,更改IP地址为静态地址分别为,29.30.31 cd /et ...
- PHPCMS V9轻松完成WAP手机网站搭建全教程
---恢复内容开始--- 应用PHPCMS V9轻松完成WAP手机网站搭建全教程 用PHPCMS最新发布的V9搭建了PHPCMS研究中心网站(http://www.17huiyi.net)完成后,有用 ...