HiveMQ broker maven项目转化及运行环境搭建
一 安裝目標
1 實現在本地環境開發和運行hiveMq Server端
二 安裝軟件準備 (僅windows)
?1 JDK 11
? ? hiveMQ broker運行環境目前僅支持jdk11及以上版本;推薦oracle官方版本?jdk-11.0.3_windows-x64_bin?
?
?2 gradle
? ?hiveMQ的默認構建方式為gradle,本地需要安裝gradle環境,目前hiveMQ僅支持gradle 4.0+ 以上的版本構建;推薦版本 gradle5.4.1
?
?3 Intellij IDEA
? ?由于JDK11是18年9月份發布的,比較新,老版本的idea不能很好的支持,需要下載安裝新版本的idea,推薦最新版本 2019.1.2
?
三 環境構建注意事項
?1 jdk11安裝后,不會自動安裝JRE,需要使用命令行來生成JRE環境
?在jdk11的安裝目錄下執行如下命令即可生成:?
| bin\jlink.exe --module-path jmods --add-modules java.desktop --output jre |
注意: 鑒于大多數同學本機的開發環境jdk版本為8,安裝jdk11后,需要對環境變量做路徑切換,否則會影響gradle構建環境使用的jdk版本,可能會帶來問題,下面介紹;
2 gradle 安裝后,注意檢查gradle依賴的JDK版本 否則項目構建不成功
3 項目clone后,注意切換idea的jdk版本為11
?
三 服務驗證
?1 啟動服務端 TCP協議
指定com.hivemq.HiveMQServer的main方法為啟動方法并運行,hiveMq啟動默認端口號1883
| 2019-05-28 09:24:55,047 INFO - Starting HiveMQ Community Edition Server 2019-05-28 09:24:55,056 INFO - HiveMQ version: Development Snapshot 2019-05-28 09:24:55,056 INFO - HiveMQ home directory: E:\IDEAWorkspace\mygit\hivemq-community-edition\${HOME}\hivemq4home 2019-05-28 09:24:56,516 WARN - The logging configuration file E:\IDEAWorkspace\mygit\hivemq-community-edition\${HOME}\hivemq4home\conf\logback.xml does not exist. Using HiveMQ default logging configuration. 2019-05-28 09:24:56,533 ERROR - The configuration file folder E:\IDEAWorkspace\mygit\hivemq-community-edition\${HOME}\hivemq4home\conf does not exist. Using HiveMQ default config 2019-05-28 09:24:56,550 INFO - This HiveMQ ID is WT4J5 2019-05-28 09:24:58,329 INFO - Starting HiveMQ extension system. 2019-05-28 09:24:58,354 INFO - Starting TCP listener on address 0.0.0.0 and port 1883 2019-05-28 09:24:59,053 INFO - Started TCP Listener on address 0.0.0.0 and on port 1883 2019-05-28 09:24:59,053 INFO - Started HiveMQ in 4027ms |
2 啟動client端驗證消息傳遞
?可以使用支持mqtt3.x 5.x的client工具,比如eclipse的paho或mqtt-hivemq-client
?指定服務端的tcp鏈接地址、topic、clientId
| public static final String HOST = "tcp://10.200.182.73:1884"; public static final String TOPIC = "topic01"; private static final String clientid = "myClient"; |
?
四 對gradle做maven項目轉換
1 修改配置文件中的gradle下載鏈接為本地的gradle壓縮包或者安裝目錄,否則每次構建都會進行gradle文件下載
2 修改build.gradle文件添加gradle轉化maven的項目配置信息如下
| apply plugin: 'java' sourceCompatibility = 10 targetCompatibility = 10 version = '2019.1'task writeNewPom {pom {project {inceptionYear '2008'licenses {license {name 'The Apache Software License, Version 2.0'url 'http://www.apache.org/licenses/LICENSE-2.0.txt'distribution 'repo'}}}}.writeTo("$buildDir/../pom.xml") } |
使用gradle的task命令執行writeNewPom對項目進行轉換,成功后會在根目錄下生成pom.xml文件,即可使用maven進行構建
注意:生成的pom文件并沒有對子moduler生成,后期需完善,目前是采用將子moduler的package包合并到了主項目中
?
五? 使用tsung對hivemq broker進行壓力測試
虛擬環境下3000qps cpu使用率80% 僅供參考
總結
以上是生活随笔為你收集整理的HiveMQ broker maven项目转化及运行环境搭建的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: rateLimiter令牌桶限流算法
- 下一篇: maven工程xml文件路径问题