NATS連線協議具體解釋

2021-09-07 12:51:52 字數 1471 閱讀 9963

nats的連線協議是乙個簡單的、基於文字的公布/訂閱風格的協議。

client連線到gnatsd(natsserver)。並與gnatsd進行通訊。通訊基於普通的tcp/ip套接字,並定義了非常小的操作集,換行表示終止。

與傳統的、使用了二進位制訊息格式的訊息通訊系統不同。使用了基於文字的nats協議,使得client實現非常easy。能夠方便地選擇多種程式語言或指令碼語言來實現。

以下的**描寫敘述了nats協議訊息,要注意操作名是大寫和小寫不敏感的,因此sub foo 1\r\n和sub foo 1\r\n是等價的。

——————————————————————————————————

操作名 | 傳送端 | 描寫敘述

——————————————————————————————————

info server 初始化tcp/ip連線後傳送給client

connect client 傳送給server指定連線資訊

pub client 公布訊息到主題或reply主題

sub client 訂閱主題(或主題萬用字元)

unsub client 取消訂閱主題(或自己主動取消訂閱)

msg server 交付一條訊息負載給訂閱者

ping 兩端 保持連線有效的ping活躍訊息

pong 兩端 保持連線有效的pong活躍訊息

+ok server 確認具體(verbose)模式下協議訊息的合法

-err server 指示協議錯誤。會導致client斷開連線

——————————————————————————————————

telnet demo.nats.io 4222

trying 107.170.221.32...

connected to demo.nats.io.

escape character is '^]'.

info

connect

語法connect

有效的選項例如以下:

描寫敘述:

connect訊息與info訊息類似,一旦client與natsserver建立了tcp/ip套接字連線,且server接收到info訊息,client還能夠傳送connect訊息到natsserver,以便提供關於當前連線的更具體的資訊和安全資訊。

樣例:以下是來自golangclient的乙個樣例:

connect \r\n
大多數client都設定了verbose模式為false(預設設定),這意味著server在接收到訊息後不會傳送+ok訊息給client。

linux diff具體解釋

diff是unix系統的乙個非常重要的工具程式。它用來比較兩個文字檔案的差異,是 版本號管理的基石之中的乙個。你在命令列下,輸入 diff 變動前的檔案 變動後的檔案 diff就會告訴你,這兩個檔案有何差異。它的顯示結果不太好懂,以下我就來說明,怎樣讀懂diff。一 diff的三種格式 因為歷史原因...

linux select具體解釋

linux select 具體解釋 select 系統呼叫時用來讓我們的程式監視多個檔案控制代碼的狀態變化的。程式會停在 select 這裡等待,直到被監視的檔案控制代碼有乙個或多個發生了狀態改變。關於檔案控制代碼,事實上就是乙個整數,通過 socket 函式的宣告就明確了 int socket i...

TCP IP具體解釋學習筆記 位址解析協議ARP

一 概述 我們知道,ip協議是用來在不同的物理網路之間資料傳輸的。要在不同的網路之間資料傳輸,至少須要將ip協議所用的位址轉換成特定網路所使用的實體地址。一般來說。就是將ipv4位址轉換為mac位址。要想與乙個特定的裝置進行資料交換,光知道它的ip位址是不夠的。還須要知道它的實體地址。而位址解析協議...