Windows下本地RabbitMQ服務的安裝(V3.01)
RabbitMQ安裝:
一、RaibbitMQ伺服器安裝
1. 準備工作。如果之前安裝過RabbitMQ軟體,若想重新安裝,必須先把之前的RabbitMQ相關軟體解除安裝。
安裝具體過程:
1.右鍵,管理員身份執行:otp_win32_R16801.exe(不同版本可能命名字不一樣),選擇next
如果不是管理員身份執行,啟動Rabbitmq不能成功:Failed to start service RabbitMQ. Error: 拒絕訪問。
解決辦法:解除安裝,清理登錄檔重新安裝erlang,先解除安裝RabbitMQ和Erlang,再清理登錄檔。
清理的時候如果找不到登錄檔項,可以用登錄檔的搜尋功能搜尋:RabbitMQ、ErlSrv,將對應的項全部刪除。
2.預設安裝在C盤,建議程式安裝在非系統盤比如D盤(如果安裝在C盤可能會出現一些許可權問題),修改好安裝路徑後,選next:
3.進入安裝程式,選擇install,即可完成安裝:
3. 安裝RabbitMQ伺服器軟體。到這個頁面下載:
安裝具體過程:
1. 雙擊rabbitmq-server-3.1.1.exe。選擇next:
2. 預設安裝在C盤,直接安裝即可。
4. 還需要配置環境變數:
4.1給path變數新增內容,在其後面增加:;%RABBITMQ_SERVER%\sbin (注意前面的分號),然後確定即可
4.2 新增環境變數:RABBITMQ_SERVER
環境變數RABBITMQ_SERVER 的值為:D:\My-Softwar-Installed\RabbitMQ Server\rabbitmq_server-3.1.3
現在開啟windows命令列(“cmd”),輸入rabbitmq-service
如果出現如下所示提示,即表示環境變數配置成功。
安裝完成之後可以在系統的服務中看到RabbitMQ這個服務。
5. Rabbit還自帶監控功能. cmd進到sbin目錄,鍵入rabbitmq-plugins enable rabbitmq_management啟用監控管理,然後重啟Rabbitmq伺服器。 開啟網址http://localhost:55672
預設使用者名稱為guest,密碼:guest
如果沒有出現以上頁面,嘗試在windows命令列中輸入(以管理員方式執行):
rabbitmq-plugins enable rabbitmq_management
然後執行下面的命令來安裝:
rabbitmq-service stop
rabbitmq-service install
rabbitmq-service start
二、 使用VS2010編譯RibbitMQ
3. 將 rabbitmq-codegen 中的內容拷貝到 rabbitmq-c-master 中的 codegen 目錄下(如果沒有該目錄請自行建立).
4. 下載cmake並安裝。
按下一步直接安裝:
這裡可以更改路徑(注意安裝路徑不要包含中文),安裝完畢即可。這時桌面會生成一個cmake_gui的快捷方式。
5. 使用cmake編譯rabbitmq-c原始碼。
開啟cmake。
source處(紅圈處)填你的rabbitmq-c-master原始碼路徑,比如我放在d:/rabbitmq-c-master;下面的build處(黃圈處)填你source處的下面build資料夾(如果沒有build資料夾則建立一個)
點configure,這時會詢問選擇何種編譯器,選擇VS2010。
點finish。這時cmake會開始編譯,但是一會他可能會彈出如下錯誤資訊:
直接把ENABLE_SSL_SUPPORT去掉,再按configure即可。
等編譯完成,再點Generate按鈕。整個編譯過程即完成。
6. 開啟VS2010。用VS2010開啟rabbit-c-master/build下的rabbitmq-c.sln專案
7. 點選生成/生成解決方案(或按F7)
8. 專案此時會生成好:
9. 將D:\rabbitmq-c-master\build\librabbitmq\Debug下(注意D:\rabbitmq-c-master\build為前面cmake編譯生成檔案路徑,下同)的rabbitmq.1.dll動態連線庫拷到D:\rabbitmq-c-master\rabbitmq-c-master\build\examples\Debug資料夾下。
10. 現在所有的rabbit-c的example都可以運行了。至此,可以按照https://github.com/alanxz/rabbitmq-c 上的說明,執行測試了。
開啟“cmd”,進入到D:\rabbitmq-c-master\build\examples\Debug資料夾下:
輸入amqp_listen.exe localhost 5672 amq.direct test:
再在另一個cmd中也到達D:\rabbitmq-c-master\build\examples\Debug
輸入amqp_sendstring.exe localhost 5672 amq.direct test
“hello world”
執行之後如果第一個終端出現如下介面,則說明整個rabbitMQ配置成功。
至此,說明Raabit-C客戶端與服務端都以成功。
RabbitMQ使用說明
一、 基本概念:
(一)基本概念
RabbitMQ是流行的開源訊息佇列系統,用erlang語言開發。我曾經對這門語言挺有興趣,學過一段時間,後來沒堅持。RabbitMQ是AMQP(高階訊息佇列協議)的標準實現。如果不熟悉AMQP,直接看RabbitMQ的文件會比較困難。不過它也只有幾個關鍵概念,這裡簡單介紹。
RabbitMQ的結構圖如下:
幾個概念說明:
Broker:簡單來說就是訊息佇列伺服器實體。
Exchange:訊息交換機,它指定訊息按什麼規則,路由到哪個佇列。 Queue:訊息佇列載體,每個訊息都會被投入到一個或多個佇列。 Binding:繫結,它的作用就是把exchange和queue按照路由規則繫結起來。 Routing Key:路由關鍵字,exchange根據這個關鍵字進行訊息投遞。 vhost:虛擬主機,一個broker裡可以開設多個vhost,用作不同使用者的許可權分離。 producer:訊息生產者,就是投遞訊息的程式。 consumer:訊息消費者,就是接受訊息的程式。 channel:訊息通道,在客戶端的每個連線裡,可建立多個channel,每個channel代表一個會話任務。訊息佇列的使用過程大概如下:
(1)客戶端連線到訊息佇列伺服器,開啟一個channel。
(2)客戶端宣告一個exchange,並設定相關屬性。 (3)客戶端宣告一個queue,並設定相關屬性。 (4)客戶端使用routing key,在exchange和queue之間建立好繫結關係。 (5)客戶端投遞訊息到exchange。exchange接收到訊息後,就根據訊息的key和已經設定的binding,進行訊息路由,將訊息投遞到一個或多個佇列裡。
exchange也有幾個型別,完全根據key進行投遞的叫做Direct交換機,例如,繫結時設定了routing key為”abc”,那麼客戶端提交的訊息,只有設定了key為”abc”的才會投遞到佇列。對key進行模式匹配後進行投遞的叫做Topic交換機,符號”#”匹配一個或多個詞,符號”*”匹配正好一個詞。例如”abc.#”匹配”abc.def.ghi”,”abc.*”只匹配”abc.def”。還有一種不需要key的,叫做Fanout交換機,它採取廣播模式,一個訊息進來時,投遞到與該交換機繫結的所有佇列。
RabbitMQ支援訊息的持久化,也就是資料寫在磁碟上,為了資料安全考慮,我想大多數使用者都會選擇持久化。訊息佇列持久化包括3個部分:
(1)exchange持久化,在宣告時指定durable => 1 (2)queue持久化,在宣告時指定durable => 1 (3)訊息持久化,在投遞時指定delivery_mode => 2(1是非持久化)如果exchange和queue都是持久化的,那麼它們之間的binding也是持久化的。如果exchange和queue兩者之間有一個持久化,一個非持久化,就不允許建立繫結。
RabbitMQ-C客戶端使用說明 rabbitmq-c是一個用於C語言的,與AMQP server進行互動的client庫,AMQP協議為版本0-9-1。rabbitmq-c與server進行互動前需要首先進行login操作,在操作後,可以根據AMQP協議規範,執行一系列操作。 這裡,根據專案需求,只進行部分介面說明,文後附demo的github地址。 介面描述: amqp_connection_state_t amqp_new_connection(void); 介面說明:宣告一個新的amqp connection int amqp_open_socket(char const *hostname, int portnumber); 介面說明:獲取socket. |
引數說明:hostname RabbitMQ server所在主機
portnumber RabbitMQ server監聽埠
void amqp_set_sockfd(amqp_connection_state_t state,int sockfd);
介面說明:將amqp connection和sockfd進行繫結
amqp_rpc_reply_t amqp_login(amqp_connection_state_t state, char const *vhost,int channel_max,int frame_max,int heartbeat,amqp_sasl_method_enum sasl_method, ...);
介面說明:用於登入RabbitMQ server,主要目的為了進行許可權管理;
引數說明:state amqp connection
vhost rabbit-mq的虛機主機,是rabbit-mq進行許可權管理的最小單位
channel_max 最大連結數,此處設成0即可
frame_max 和客戶端通訊時所允許的最大的frame size.預設值為131072,增大這個值有助於提高吞吐,降低這個值有利於降低時延
heartbeat 含義未知,預設值填0
sasl_method 用於SSL鑑權,預設值參考後文demo
amqp_channel_open_ok_t *amqp_channel_open(amqp_connection_state_t state, amqp_channel_t channel);
介面說明:用於關聯conn和channel
amqp_exchange_declare_ok_t *amqp_exchange_declare(amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t exchange, amqp_bytes_t type, amqp_boolean_t passive, amqp_boolean_t durable, amqp_table_t arguments);
介面說明:宣告declare
引數說明:state
channel
exchange
type "fanout" "direct" "topic"三選一
passive
curable
arguments
amqp_queue_declare_ok_t *amqp_queue_declare(amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t queue, amqp_boolean_t passive, amqp_boolean_t durable, amqp_boolean_t exclusive, amqp_boolean_t auto_delete, amqp_table_t arguments);
介面說明:宣告queue
引數說明:state amqp connection
channel
queue queue name
passive
durable 佇列是否持久化
exclusive 當前連線不在時,佇列是否自動刪除
aoto_delete 沒有consumer時,佇列是否自動刪除
arguments 用於拓展引數,比如x-ha-policy用於mirrored queue
amqp_queue_bind_ok_t *amqp_queue_bind(amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t queue, amqp_bytes_t exchange, amqp_bytes_t routing_key, amqp_tab le_t arguments);
介面說明:宣告binding
amqp_basic_qos_ok_t *amqp_basic_qos(amqp_connection_state_t state, amqp_channel_t channel, uint32_t prefetch_size, uint16_t prefetch_count, amqp_boolean_t global);
介面說明:qos是 quality of service,我們這裡使用主要用於控制預取訊息數,避免訊息按條數均勻分配,需要和no_ack配合使用
引數說明:state
channel
prefetch_size 以bytes為單位,0為unlimited
prefetch_count 預取的訊息條數
global
amqp_basic_consume_ok_t *amqp_basic_consume(amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t queue, amqp_bytes_t consumer_tag, amqp_boolean_t no_local, amqp_boolean_t no_ack, amqp_boolean_t exclusive, amqp_table_t arguments);
介面說明:開始一個queue consumer
引數說明:state
channel
queue
consumer_tag
no_local
no_ack 是否需要確認訊息後再從佇列中刪除訊息
exclusive
arguments
int amqp_basic_ack(amqp_connection_state_t state,amqp_channel_t channel,uint64_t delivery_tag,amqp_boolean_t multiple);
int amqp_basic_publish(amqp_connection_state_t state,amqp_channel_t channel,amqp_bytes_t exchange,amqp_bytes_t routing_key,amqp_boolean_t mandatory,amqp_boolean_t immediate,struct amqp_basic_properties_t_ const *properties,amqp_bytes_t body);
介面說明:釋出訊息
引數說明:state
channel
exchange
routing_key 當exchange為預設“”時,此處填寫queue_name,當exchange為direct,此處為binding_key
mandatory 參見參考文獻2
immediate 同上
properties 更多屬性,如何設定訊息持久化,參見文後demo
body 訊息體
amqp_rpc_reply_t amqp_channel_close(amqp_connection_state_t state,amqp_channel_t channel,int code);
amqp_rpc_reply_t amqp_connection_close(amqp_connection_state_t state,int code);
int amqp_destroy_connection(amqp_connection_state_t state);
如何consume訊息,參見文後demo。
demo
RabbitMQ-C客戶端使用說明 rabbitmq-c是一個用於C語言的,與AMQP server進行互動的client庫,AMQP協議為版本0-9-1。rabbitmq-c與server進行互動前需要首先進行login操作,在操作後,可以根據AMQP協議規範,執行一系列操作。 這裡,根據專案需求,只進行部分介面說明,文後附demo的github地址。 介面描述: amqp_connection_state_t amqp_new_connection(void); 介面說明:宣告一個新的amqp connection int amqp_open_socket(char const *hostname, int portnumber); 介面說明:獲取socket. 引數說明:hostname RabbitMQ server所在主機 portnumber RabbitMQ server監聽埠 void amqp_set_sockfd(amqp_connection_state_t state,int sockfd); 介面說明:將amqp connection和sockfd進行繫結 amqp_rpc_reply_t amqp_login(amqp_connection_state_t state, char const *vhost,int channel_max,int frame_max,int heartbeat,amqp_sasl_method_enum sasl_method, ...); 介面說明:用於登入RabbitMQ server,主要目的為了進行許可權管理; 引數說明:state amqp connection vhost rabbit-mq的虛機主機,是rabbit-mq進行許可權管理的最小單位 channel_max 最大連結數,此處設成0即可 frame_max 和客戶端通訊時所允許的最大的frame size.預設值為131072,增大這個值有助於提高吞吐,降低這個值有利於降低時延 heartbeat 含義未知,預設值填0 sasl_method 用於SSL鑑權,預設值參考後文demo amqp_channel_open_ok_t *amqp_channel_open(amqp_connection_state_t state, amqp_channel_t channel); 介面說明:用於關聯conn和channel amqp_exchange_declare_ok_t *amqp_exchange_declare(amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t exchange, amqp_bytes_t type, amqp_boolean_t passive, amqp_boolean_t durable, amqp_table_t arguments); 介面說明:宣告declare 引數說明:state channel exchange type "fanout" "direct" "topic"三選一 passive curable arguments amqp_queue_declare_ok_t *amqp_queue_declare(amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t queue, amqp_boolean_t passive, amqp_boolean_t durable, amqp_boolean_t exclusive, amqp_boolean_t auto_delete, amqp_table_t arguments); 介面說明:宣告queue 引數說明:state amqp connection channel queue queue name passive durable 佇列是否持久化 exclusive 當前連線不在時,佇列是否自動刪除 aoto_delete 沒有consumer時,佇列是否自動刪除 arguments 用於拓展引數,比如x-ha-policy用於mirrored queue amqp_queue_bind_ok_t *amqp_queue_bind(amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t queue, amqp_bytes_t exchange, amqp_bytes_t routing_key, amqp_tab le_t arguments); 介面說明:宣告binding amqp_basic_qos_ok_t *amqp_basic_qos(amqp_connection_state_t state, amqp_channel_t channel, uint32_t prefetch_size, uint16_t prefetch_count, amqp_boolean_t global); 介面說明:qos是 quality of service,我們這裡使用主要用於控制預取訊息數,避免訊息按條數均勻分配,需要和no_ack配合使用 引數說明:state channel prefetch_size 以bytes為單位,0為unlimited prefetch_count 預取的訊息條數 global amqp_basic_consume_ok_t *amqp_basic_consume(amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t queue, amqp_bytes_t consumer_tag, amqp_boolean_t no_local, amqp_boolean_t no_ack, amqp_boolean_t exclusive, amqp_table_t arguments); 介面說明:開始一個queue consumer 引數說明:state channel queue consumer_tag no_local no_ack 是否需要確認訊息後再從佇列中刪除訊息 exclusive arguments int amqp_basic_ack(amqp_connection_state_t state,amqp_channel_t channel,uint64_t delivery_tag,amqp_boolean_t multiple); int amqp_basic_publish(amqp_connection_state_t state,amqp_channel_t channel,amqp_bytes_t exchange,amqp_bytes_t routing_key,amqp_boolean_t mandatory,amqp_boolean_t immediate,struct amqp_basic_properties_t_ const *properties,amqp_bytes_t body); 介面說明:釋出訊息 引數說明:state channel exchange routing_key 當exchange為預設“”時,此處填寫queue_name,當exchange為direct,此處為binding_key mandatory 參見參考文獻2 immediate 同上 properties 更多屬性,如何設定訊息持久化,參見文後demo body 訊息體 amqp_rpc_reply_t amqp_channel_close(amqp_connection_state_t state,amqp_channel_t channel,int code); amqp_rpc_reply_t amqp_connection_close(amqp_connection_state_t state,int code); int amqp_destroy_connection(amqp_connection_state_t state); 如何consume訊息,參見文後demo。 demo 編譯需要librabbitmq.a庫,同時需要rabbitmq-c提供的幾個標頭檔案(amqp.h和amqp_framing.h)以及utils.c檔案,這些在github project頁面均可獲得。 參考文獻 |
nt main(int argc, const char **argv) {
const char *hostname = "localhost"; // 主機名
int port = 5672; // 埠
const char *exchange = ""; //交換機為預設時設為空字串
const char *queuename = "QueueName1"; // 佇列名
amqp_socket_t *socket = NULL;
int sockfd;
int channelid = 1; // 預設開啟的頻道
amqp_connection_state_t conn;
conn = amqp_new_connection(); // 新建一個連線
socket = amqp_tcp_socket_new(conn); // 新建一個套接字
die_on_error(sockfd = amqp_socket_open(socket,hostname, port), "Opening socket"); //開啟套接字
die_on_amqp_error(amqp_login(conn, "/", 0, 131072, 0, AMQP_SASL_METHOD_PLAIN, "guest", "guest"),"Logging in"); // 登入伺服器
amqp_channel_open(conn, channelid); // 開啟一個頻道
die_on_amqp_error(amqp_get_rpc_reply(conn), "Opening channel"); // ampq_get_rpc_reply 是一個清除某些全域性變數的函式
amqp_queue_declare(conn,channelid,amqp_cstring_bytes(queuename),0,1,0,0,amqp_empty_table); // 宣告一個佇列,注意對照API看引數資訊
amqp_basic_qos(conn,channelid,0,1,0); //基本服務處理,可實現預先處理多少個資訊
amqp_basic_consume(conn,channelid,amqp_cstring_bytes(queuename),amqp_empty_bytes,0,1,0,amqp_empty_table); // 開始一個佇列消費
die_on_amqp_error(amqp_get_rpc_reply(conn), "Consuming");
{
相關推薦
Windows下本地RabbitMQ服務的安裝(V3.01)
RabbitMQ安裝: 一、RaibbitMQ伺服器安裝 1. 準備工作。如果之前安裝過RabbitMQ軟體,若想重新安裝,必須先把之前的RabbitMQ相關軟體解除安裝。 安裝具體過程: 1.右鍵,管理員身份執行:otp_win32_R16801.exe(
Windows下當地RabbitMQ服務的安裝
frame download mlu all 以及 銷毀 number 接受 sign Windows下本地RabbitMQ服務的安裝 本文參考:劉若澤相關技術文檔 當然這些內容頁可以通過RabbitMQ官方網站獲得。 RabbitMQ配置說明手冊 一、Rai
Windows下啟動RabbitMQ服務及安裝詳解
安裝詳解步驟如下及問題的解決: RabbitMQ Service預設是自動勾選中的,這裡我們取消勾選。如選中啟動RabbitMQ服務時會報如下圖錯誤: 安裝完成後,Erlang和RabbitMQ環境變數是沒有配置的,需要自己手動去配置,如下圖:
Windows下mysql5.7服務安裝
一、下載壓縮包,根據電腦自行選擇版本 下載連結 二、解壓壓縮包,並新建my-default.ini [client] port=3306 default-character-set=u
windows 下部署 tomcat服務,不能在本地計算機中起動Tomcat參考特定錯誤程式碼4
因為專案需要在一臺windows伺服器中部署兩個獨立的tomcat服務(推薦部署教程http://blog.csdn.net/qq_38042891/article/details/78926994),部署第一臺非常順利,第二臺,讓我搞了1天,一直報 讓我搞的頭都大了, 原來是我一
Windows下使用service.bat安裝tomcat服務, 啟動停止tomcat服務
在專案開發過程中,以前只是在MyEclipse中配置、啟動、停止tomcat伺服器如果只想在機器中使用tomcat伺服器,而不想安裝MyEclipse,可以使用service.bat將tomcat安裝到計算機中的服務管理系統services.msc,就可以使用DOS命令啟動或
CentOS7下RabbitMQ服務安裝配置
一:環境安裝 這些開源性的產品沒多少是建議使用者部署在windows上的,不過rabbitmq除外,為了更加貼近實際的應用場景,我們這裡還是部署在centos7上。 1. 安裝erlang 剛才也說了,rabbitmq只不過是erlang開發的一個成
Windows下用cmd命令安裝及解除安裝服務(
第一種方法: 1. 開始 -執行 -cmd 2. cd到C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727(Framework版本號按IIS配置) 3. 安裝服務: 執行命令列 InstallUtil.exe E:/test.exe
Windows下的RabbitMQ安裝:集群與鏡像
min windows 增加 原因 host alt 子節點 amp 寫法 RabbitMq本身支持集群,但其本身並不支持負載均衡。 Erlang的集群中各節點是經由過程一個magic cookie來實現的,cookie存放位置為: C:\Users\用戶名\.erla
Windows 下的rabbitmq安裝與命令
man strong rabbit 用戶密碼 服務 修改用戶密碼 新建用戶 user -s 一、RabbitMQ安裝 1:下載並安裝erlang 原因:RabbitMQ服務端代碼是使用並發式語言Erlang編寫的,安裝Rabbit MQ的前提 是安裝Erlang。
Windows下配置啟動面安裝版本mysql
mysql一,下載Zip版本的免安裝版本的Mysql,並解壓之安裝目錄下面二,在Windows的Path中添加Mysql的Bin目錄,使得可訪問mysql等命令。*遇到奇怪問題,在win10的path加入了mysql運行記錄。但是執行mysql依然未找到。此時mysql的bin目錄為path中的最後一項。後來
Windows下VTK6.0.0安裝詳解(CMake使用說明)
操作 工具 generate 其中 con htm 目錄下的文件 ima 新建 操作系統:Windows7,用到工具:Visual studio、CMake。 1.準備工作 VTK下載: 下載最新VTK穩定版(6.0.0,截至2013年7月)http://www.vtk
Windows下搭建Redis服務器
targe 文件夾 cnblogs 成功 tps cache ase view tar Redis服務器是當下比較流行的緩存服務器,Redis通常被人拿來和Memcached進行對比。在我看來,應當是各具優勢吧,雖然應用場景基本類似,但總會根據項目的不同來進行不通的選用。
Windows下Mongodb以服務形式啟動的方法
echo 方法 自己 驗證 etc mon 日誌 麻煩 服務器 這兩周做網站,自己搞定了服務器、數據庫和前端,接觸的知識非常多,為了防止以後忘記,特此記錄一下。 這篇隨筆主要記錄了Mongodb以服務形式啟動的方法。 1.mongodb的啟動參數 (1)指定mongodb的
Windows 下制作CentOS7安裝U盤
big 成功 raw 屬於 ror 方式 entos clas mage 本文屬於另類的U盤制作方法(更多U盤安裝見U盤安裝CentOS ),如何安裝CentOS,請參考《安裝指南》 以下列出了,完整的制作步驟: 1、下載安裝鏡像 選擇一個合適的鏡像網站,比如網易的。
windows下如何下載並安裝Python
.py back 版本號 eight word height win path lin 1.打開Python官網,點download中的windows(或者打開網址https://www.python.org/downloads/windows/) 2.下載exe後綴的可
windows下python3.6版本安裝pygame
項目文件 fff text http word apple details cin 找到 參考:http://blog.csdn.net/a380331382/article/details/77063152 首先,進入這個網站:http://www.lfd.uci.e
windows下配置mongodb服務
mongodb安裝在bin目錄同級目錄下創建文件mg.conf並寫如以下內容:dbpath=D:\Program Files\MongoDB\Server\3.2\data #數據庫路徑 logpath=D:\Program Files\MongoDB\Server\3.2\logs\mongo.log #
windows下搭建seafile服務器,擁有自己的個人雲盤,不再擔心網盤丟
seafile個人雲盤1、 下載所需環境、軟件(Python 2.7.11 32 位版本)註意:一定要使用 Python 2.7.11 32 位版本。64 位版本或不是 2.7.11 的版本不能工作。2、雙擊安裝python-2.7.11,一直next知道完成。配置python環境變量:右擊這臺電
轉 【MQTT】在Windows下搭建MQTT服務器
代碼 教程 userdata 圖片 ... 程序 password 命令 pass MQTT簡介 MQ 遙測傳輸 (MQTT) 是輕量級基於代理的發布/訂閱的消息傳輸協議,設計思想是開放、簡單、輕量、易於實現。這些特點使它適用於受限環境。該協議的特點有: 使用發布/訂閱