扎心了!面试官:你都工作三年了,怎么连消息中间件都没有接触过啊


小爱今天去面试了,面试官问小爱平时用的消息中间件是哪一个,谈谈对其的看法。

小爱懵了,因为小爱平时做的项目都是传统软件,根本就没有用过消息中间件。

被面试官这么一问,小爱有点不知所措。

面试官说:你都工作三年了,怎么连消息中间件都没有接触过啊。

小爱听了都不好意思了。

作为一名java后端程序员,对于消息中间件是需要掌握的。

消息队列已经逐渐成为软件通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能,成为异步RPC的主要手段之一。

现在主流的消息中间件,有老牌的ActiveMQ、RabbitMQ,炙手可热的Kafka,阿里巴巴自主开发RocketMQ等。

下面我们来了解下Kafka安装与使用

Kafka是使用scala编写的运行于jvm虚拟机上的程序,基本上是运行在linux服务器上,但也可以在windows上使用,今天我们用windows来体验下kafka

 

首先确保你的机器上安装了jdk,kafka需要java运行环境,以前的kafka还需要zookeeper,新版的kafka已经内置了一个zookeeper环境,所以不需要单独安装zookeeper,可以直接使用。

1、下载

在kafka官网下载到最新的kafka安装包,选择下载二进制版本的tgz文件

2、因为下载的是tgz文件,所以不需要安装,解压就好了。

 

Kafka目录介绍

  • /bin 操作kafka的可执行脚本,还包含windows下脚本

  • /config 配置文件所在目录

  • /libs 依赖库目录

  • /logs 日志数据目录,目录kafka把server端日志分为5种类型,分为:server,request,state,log-cleaner,controller

 

 

· 

运行

 

不用修改任何配置文件,我们只需要知道 zookeeper的默认端口是2181,生产者的默认端口是9092就好。

 

 

如果只需要进行简单的尝试的话,把下载好的文件解压到任意目录即可,这里我下载解压d盘kafka文件夹。

 

1、启动zookeeper

· 

 

D:\kafka\kafka_2.12-2.5.0\bin\windows\zookeeper-server-start.bat D:\kafka\kafka_2.12-2.5.0\config\zookeeper.properties

启动zookeeper成功后会看到如下的输出

从日志中我们可以得知,其默认端口为2181。

2、启动kafka

D:\kafka\kafka_2.12-2.5.0\bin\windows\kafka-server-start.bat D:\kafka\kafka_2.12-2.5.0\config\server.properties

3、创建topic

创建一个名为 topic-xiaoai 的主题,包含一个分区,只有一个副本

 D:\kafka\kafka_2.12-2.5.0\bin\windows\kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic  topic-xiaoai 

查看topic

D:\kafka\kafka_2.12-2.5.0\bin/kafka-topics.sh --list --zookeeper localhost:2181

 

4、生产消息

D:\kafka\kafka_2.12-2.5.0\bin\windows\kafka-console-producer.bat --broker-list localhost:9092 --topic topic-xiaoai

 

启动生产者之后进入编辑页面,发送了 "hello",

 

 

不要关闭这个终端,再打开一个新的终端

5、消费消息

 D:\kafka\kafka_2.12-2.5.0\bin\windows\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic topic-xiaoai  --from-beginning

 

当消费者启动之后,收到了之前生产者发送的 “hello”。

 

这样只要我们在生产窗口输入,在对应的消息窗口就会有输出

了解了kafka的安装和使用,接下来我们就可以编写对应代码,实现我们需要的功能了。代码编写下期再分享。

由于笔者水平有限,文中纰漏之处在所难免,权当抛砖引玉,不妥之处,请大家批评指正。

 -END-

作者:洪生鹏  白天搬砖,晚上写故事。技术交流、媒体合作、品牌宣传请添加微信: hsp-88ios

猜你喜欢

面试官:订单时常出现重复支付,该怎么办?

更多惊喜,请长按二维码识别关注

你若喜欢,别忘了点【在看

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值