Kafka系列文章之安裝測試-第2篇

前言

上篇文章講解了 Kafka 的基礎概念和架構,瞭解了基本概念之後,必須得實踐一波了,所謂“實踐纔是檢驗真理的唯一辦法”,後續系列關於 Kafka 的文章都以 kafka_2.11-0.9.0.0 爲例;另外爲了讓大家快速入門,本文只提供單機版的安裝實戰教程,如果有想嘗試集羣方案的,後面在出一篇集羣安裝的教程,廢話不多說了,直接開幹。

安裝

1. 下載

版本號:kafka_2.11-0.9.0.0

下載地址:http://kafka.apache.org/downloads

2. 安裝

# 安裝目錄
$ pwd
/Users/my/software/study

# 減壓
$ sudo tar -zxvf kafka_2.11-0.9.0.0.tgz

# 重命名
$ sudo mv kafka_2.11-0.9.0.0.tgz kafka-0.9

# 查看目錄結構
$ cd kafka-0.9 && ls
LICENSE   NOTICE    bin       config    libs      site-docs

# 目錄結構介紹:
# bin: 			存放kafka 客戶端和服務端的執行腳本
# config:		存放kafka的一些配置文件
# libs:			存放kafka運行的的jar包
# site-docs:	存放kafka的配置文檔說明

# 配置環境變量,方便在任意目錄下運行kafka命令
# 博主使用的Mac,所以配置在了 ~/.bash_profile文件中,
# Linux中則配置在 ~/.bashrc 或者  ~/.zshrc文件中
$ vim ~/.bash_profile

export KAFKA_HOME=/Users/haikuan1/software/study/kafka-0.9
export PATH=$PATH:$JAVA_HOME:$KAFKA_HOME/bin

# 使得環境變量生效
$ source ~/.bash_profile

3.運行

3.1 啓動 zookeeper
# 啓動zookeeper,因爲kafka的元數據需要保存到zookeeper中
$ bin/zookeeper-server-start.sh config/zookeeper.properties

# 若出現如下信息,則證明zookeeper啓動成功了
[2020-04-25 16:23:44,493] INFO Server environment:user.dir=/Users/haikuan1/software/study/kafka-0.10 (org.apache.zookeeper.server.ZooKeeperServer)
[2020-04-25 16:23:44,505] INFO tickTime set to 3000 (org.apache.zookeeper.server.ZooKeeperServer)
[2020-04-25 16:23:44,505] INFO minSessionTimeout set to -1 (org.apache.zookeeper.server.ZooKeeperServer)
[2020-04-25 16:23:44,505] INFO maxSessionTimeout set to -1 (org.apache.zookeeper.server.ZooKeeperServer)
[2020-04-25 16:23:44,548] INFO binding to port 0.0.0.0/0.0.0.0:2181 (org.apache.zookeeper.server.NIOServerCnxnFactory)
3.2 啓動 Kafka server
# 以守護進程的方式啓動kafka服務端,去掉 -daemon 參數則關閉當前窗口服務端自動退出
$ bin/kafka-server-start.sh -daemon config/server.properties
3.3 kafka 基礎命令使用
# 1. 創建一個topic
# --replication-factor:指定副本個數
# --partition:指定partition個數
# --topic:指定topic的名字
$ bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partition 1 --topic mytopic

# 2. 查看創建成功的topic
$ kafka-topics.sh --list --zookeeper localhost:2181

# 3. 創建生產者和消費者

# 3.1 啓動kafka消費端
# --from-beginning:從頭開始消費,該特性也表明kafka消息具有持久性
$ bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic mytopic --from-beginning

# 3.2 啓動kafka生產端
# --broker-list:當前的Broker列表,即提供服務的列表
$ bin/kafka-console-producer.sh --broker-list localhost:9092 --topic mytopic

生產者消費者效果圖

4.使用 Java 連接 kafka 進行測試

4.1 創建一個 maven 工程,引入如下 pom 依賴
<dependency>
    <groupId>org.apache.kafka</groupId>
    <artifactId>kafka-clients</artifactId>
    <version>0.9.0.0</version>
</dependency>

<dependency>
    <groupId>org.apache.kafka</groupId>
    <artifactId>kafka_2.11</artifactId>
    <version>0.9.0.0</version>
</dependency>
4.2 消費者端代碼
消費者端代碼
4.3 生產者端代碼
生產者端代碼

4.4 消費者端效果圖

5.總結

本文介紹了 kafka 單機版安裝及簡單命令使用,然後使用 Java 實現了生產者和消費者的簡單功能,雖然內容可能比較簡單,但還是強烈建議大家手動去實踐一下,從而對 kafka 的架構有一個更深入的理解。下篇文章我們來介紹一下 Kafka 常用參數及其背後的原理,敬請期待。

關注作者,系列文章不迷路,白嫖點個再看鼓勵一下

關注作者,系列文章不迷路,白嫖點個再看鼓勵一下

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章