消息队列Kafka学习记录

Kafka其实只是众多消息队列中的一种,对于Kafka的具体释义我这里就不多说了,详见:http://baike.baidu.com/link?url=HWFYszYuMdP_lueFH5bmYnlmH--SlsarbzE1CcfMi9JqeQBR77jCu30MubmAyBqqOSSZy9qfnrp5y5a_8wYota

想要下载Kafka可以直接上官网:http://kafka.apache.org/ (强烈建议一定要上官网下载,其它地方下载的可能有问题)

Kafka下载成功之后,在libs文件夹下面就是相关的jar包,如果使用Java开发就可以直接引入项目即可。同时在bin文件夹下面就是运行Kafka所需要的文件,Windows里面表示在Windows上面运行所需要的文件。相关运行的命令如下:

复制代码
//跳转到指定目录,必须跳转到Kafka目录才能运行后面的命令
cd C:\soft\kafka_2.10-0.8.2.2

//启动zookeeper
bin\windows\zookeeper-server-start.bat config\zookeeper.properties
//启动server。注意和启动zookeeper的先后顺序,同时这两个启动项需要分别在dos下运行
bin\windows\kafka-server-start.bat config\server.properties

//创建一个主题 topic
bin\windows\kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

//查看所有创建的主题
bin\windows\kafka-topics.bat --list --zookeeper localhost:2181

//开始消费topic
bin\windows\kafka-console-consumer.bat --zookeeper localhost:2181 --topic mytest --from-beginning

//生产数据
bin\windows\kafka-console-producer.bat --broker-list localhost:9092 --topic mytest
复制代码

这是通过服务器直接操作kafka的常用命令,而Java调用Kafka除了引用上面提到的jar包之外就是编码了,具体编码可参考:http://www.cnblogs.com/liuming1992/p/6432626.html

Kafka中有很多的概念,比如groupid,partitions,topic等等。在使用之前一定要把这些概念搞清楚了才能写出可靠的代码。


 

上面都是Windows的相关命令,下面是Linux的命令

复制代码
//跳转到指定目录,必须跳转到Kafka目录才能运行后面的命令
cd /usr/local/kafka

//启动zookeeper
bin/zookeeper-server-start.sh config/zookeeper.properties
//启动server。注意和启动zookeeper的先后顺序,同时这两个启动项需要分别在dos下运行(可开启两个界面)
bin/kafka-server-start.sh config/server.properties

//创建一个主题 topic
./bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

//查看所有创建的主题
./bin/kafka-topics.sh --list --zookeeper localhost:2181

//开始消费topic
bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning

//生产数据
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
复制代码

 

posted @   段江涛IT  阅读(2489)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗
历史上的今天:
2016-05-25 C# DataTable列名不区分大小写
页脚HTML代码
点击右上角即可分享
微信分享提示