[實踐]apollo+MQTT協議發送與訂閱消息,測試工具用MQTTLents

參考:原文鏈接

寫在前面的話:
mac 本來實踐一下看看
先下載好MQTTLents和安裝java,此處不再贅述,可自行谷歌


實踐

1、下載apollo
https://archive.apache.org/dist/activemq/activemq-apollo/1.7.1/
在這裏插入圖片描述
2、解壓並啓動apollo
在這裏插入圖片描述

  • 雙擊上面的可執行文件彈出terminal或在命令行執行如下命令,可能會有如下提示:沒有設置JAVA_HOME
xxxxxxx@localhost  /xxxxxxx/study/python3_demo  /Users/xxxxxxx/Downloads/apache-apollo-1.7.1/bin/apollo
Error: JAVA_HOME is not defined correctly.
  We cannot execute /System/Library/Frameworks/JavaVM.framework/Home/bin/java
  • 設置JAVA_HOME:注意–此處sudo 修改/etc/profile是沒用的。必須修改~/.bash_profile。
 xxxxxxx@localhost  /xxxxxxx/study/python3_demo  vim ~/.bash_profile
......
export JAVA_8_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_201.jdk/Contents/Home
export JAVA_HOME=$JAVA_8_HOME
export PATH=$JAVA_HOME/bin:$PATH:.:$JMETER_HOME/bin:$PATH:~/Library/Python/2.7/lib/python/site-packages
......
  • 使環境變量生效
 xxxxxxx@localhost  /xxxxxxx/study/python3_demo  source ~/.bash_profile
  • 啓動apollo
 xxxxxxx@localhost  /xxxxxxx/study/python3_demo  
 /Users/wangjie/Downloads/apache-apollo-1.7.1/bin/apollo
usage: apollo [--log <log_level>] <command> [<args>]

The most commonly used apollo commands are:
    create           creates a new broker instance
    disk-benchmark   Benchmarks your disk's speed
    help             Display help information
    version          Displays the broker version

See apollo help <command>' for more information on a specific command.
# 啓動命令如下:create + 自動以name + broker目錄,缺一不可,否則會報錯
 xxxxxxx@localhost  /xxxxxxx/study/python3_demo  /Users/xxxxxxx/Downloads/apache-apollo-1.7.1/bin/apollo create myapollo /Users/xxxxxxx/Downloads/apache-apollo-1.7.1/broker
Creating apollo instance at: /Users/xxxxxxx/Downloads/apache-apollo-1.7.1/broker
Generating ssl keystore...

Warning:
JKS 密鑰庫使用專用格式。建議使用 "keytool -importkeystore -srckeystore keystore -destkeystore keystore -deststoretype pkcs12" 遷移到行業標準格式 PKCS12。

You can now start the broker by executing:

   "/Users/xxxxx/Downloads/apache-apollo-1.7.1/broker/bin/apollo-broker" run

Or you can run the broker in the background using:

   "/Users/xxxxx/Downloads/apache-apollo-1.7.1/broker/bin/apollo-broker-service" start

xxxxxxx@localhost  /xxxxxxx/study/python3_demo  /Users/xxxxxxx/Downloads/apache-apollo-1.7.1/broker/bin/apollo-broker run

    _____                .__  .__
   /  _  \ ______   ____ |  | |  |   ____
  /  /_\  \\____ \ /  _ \|  | |  |  /  _ \
 /    |    \  |_> >  <_> )  |_|  |_(  <_> )
 \____|__  /   __/ \____/|____/____/\____/
         \/|__|  Apache Apollo (1.7.1)


Loading configuration file '/Users/xxxxxxx/Downloads/apache-apollo-1.7.1/broker/etc/apollo.xml'.
INFO  | OS     : Mac OS X 10.14.3
INFO  | JVM    : Java HotSpot(TM) 64-Bit Server VM 1.8.0_201 (Oracle Corporation)
INFO  | Apollo : 1.7.1 (at: /Users/xxxxxxx/Downloads/apache-apollo-1.7.1)
INFO  | OS is restricting the open file limit to: 10240
INFO  | Starting store: leveldb store at /Users/xxxxxxx/Downloads/apache-apollo-1.7.1/broker/data
INFO  | Accepting connections at: tcp://0.0.0.0:61613
INFO  | Accepting connections at: tls://0.0.0.0:61614
INFO  | Accepting connections at: ws://0.0.0.0:61623/
INFO  | Accepting connections at: wss://0.0.0.0:61624/
INFO  | Administration interface available at: https://127.0.0.1:61681/
INFO  | Administration interface available at: http://127.0.0.1:61680/

4、瀏覽器打開:各種協議的端口如上
http://127.0.0.1:61680/ admin登錄進入管理頁面(用戶名和密碼admin/password),可以新增幾個topics。
在這裏插入圖片描述
ok了,看着apollo是可以了。

5、打開MQTTLens,連接apollo服務,相關注意事項都在圖中了
在這裏插入圖片描述
點擊下方保存後,進入如下界面,如果沒連接成功,左側myapollo的按鈕不是綠色而是紅色。下圖中的1和2就是之前在apollo頁面新增的,填寫好1之後一定要點擊右側的subscribe按鈕,會在下方生成一個類似消息打印的下拉框。然後在3輸入想要發送的message,就可以點擊右側2的publish發送消息了。這時候發送成功會在下方顯示成功的消息。如下圖:
在這裏插入圖片描述
6、值得一提的是:apollo目錄下有一個example,其中有個文件,可以雙擊點開然後也可以連接apollo,來發布和訂閱topic消息,從而可以和mqttlens互動,達到聊天室的功能。
在這裏插入圖片描述
雙擊上圖的index.html即可進入如下頁面:
在這裏插入圖片描述

在這裏插入圖片描述
8、未完待續…

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