您好,登錄后才能下訂單哦!
這篇文章主要講解了“SocketD協(xié)議基本概念是什么”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“SocketD協(xié)議基本概念是什么”吧!
SocketD 是一種二進(jìn)制的點(diǎn)對點(diǎn)通信協(xié)議,是一種新的網(wǎng)絡(luò)通信第七層協(xié)議。旨在用于分布式應(yīng)用程序中。從這個意義上講,SocketD可以是RSocket等其他類似協(xié)議的替代方案。它的消息協(xié)議規(guī)范具有異步,背壓的雙向,多路復(fù)用,斷線重連,基于消息等特性。暫時只提供Java實(shí)現(xiàn),目前做為Solon rpc的sockte通道協(xié)議。
說到這里就有一些疑問了,為什么要搞這個協(xié)議?難道程序員吃飽了撐得搞點(diǎn)新東西折騰自己?上面提到了RSocket。如果你對這個規(guī)范不熟悉就可補(bǔ)下課。但它用起來還是比較復(fù)雜,尤其是類似RxJava的接口風(fēng)格,感觀上更利于做響應(yīng)式計算。而SockteD更適應(yīng)傳統(tǒng)使用習(xí)慣,更專一的面向服務(wù)請求。
特性與RSocket非常像,這里簡單總結(jié)一下:
具有語言無關(guān)性的二進(jìn)制通信協(xié)議
異步非阻塞消息驅(qū)動通信,高性能
實(shí)現(xiàn)了網(wǎng)絡(luò)通信的背壓處理,在此基礎(chǔ)上進(jìn)行流量控制、連接恢復(fù)
天然支持雙向通信。如:單鏈接雙向RPC調(diào)用
更加適合分布式通信場景
SocketD定義了三種交互模型,以適應(yīng)不同應(yīng)用場景:
Send(msg):只發(fā)送不響應(yīng)。在不需要響應(yīng)時非常有用,例如非關(guān)鍵事件日志記錄。
SendAndResponse(msg):發(fā)送并等待響應(yīng)。類似Http的請求/響應(yīng)模型。它是異步和多路復(fù)用的。
SendAndCallback(msg, (msg2)->{}):發(fā)送并在有響應(yīng)時回調(diào)。類似Ajax異步回調(diào)。
容器消息,用于實(shí)現(xiàn)消息加密或壓縮之類非業(yè)務(wù)處理。內(nèi)容消息,用于承載業(yè)務(wù)內(nèi)容。
感謝各位的閱讀,以上就是“SocketD協(xié)議基本概念是什么”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對SocketD協(xié)議基本概念是什么這一問題有了更深刻的體會,具體使用情況還需要大家實(shí)踐驗證。這里是億速云,小編將為大家推送更多相關(guān)知識點(diǎn)的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。