dubbo與http1.0的區(qū)別
-
二進制協(xié)議:Dubbo使用自定義的二進制協(xié)議,而HTTP 1.0使用文本,發(fā)送一條相同的消息,http1.0會有更大的網(wǎng)絡(luò)開銷。文章來源:http://www.zghlxwxcb.cn/news/detail-695905.html
-
連接復用:Dubbo采用單一的多路復用NIO長鏈接,每個請求都有一個對應(yīng)的請求id,一個連接上可以進行多次并行處理請求和響應(yīng)。HTTP 1.0默認情況下不支持長連接,每個請求都需要建立一個新的TCP連接,這會導致較高的連接建立和關(guān)閉開銷,也無法并行處理請求。文章來源地址http://www.zghlxwxcb.cn/news/detail-695905.html
-
無用的請求頭:HTTP1.x 協(xié)議中,多余無用的字符太多了,比如回車符、換行符,這每一個字符都會占用一個字節(jié),這些字節(jié)占用了網(wǎng)絡(luò)帶寬,降低了網(wǎng)絡(luò)IO 的效率,dubbo則要清爽許多。
- triple協(xié)議基于的是HTTP2,rest協(xié)議目前基于的是HTTP1,都可以做到跨語言。
- triple協(xié)議兼容了gPRC(Triple服務(wù)可以直接調(diào)用gRPC服務(wù),反過來也可以),rest協(xié)議不行
- triple協(xié)議支持流式調(diào)用,rest協(xié)議不行
- rest協(xié)議更方便瀏覽器、客戶端直接調(diào)用,triple協(xié)議不行(原理上支持,當?shù)脤?/span>triple協(xié)議的底層實現(xiàn)比較熟悉才 行,得知道具體的請求頭、請求體是怎么生成的)
- dubbo協(xié)議是Dubbo3.0之前的默認協(xié)議,triple協(xié)議是Dubbo3.0之后的默認協(xié)議,優(yōu)先用Triple協(xié)議
- dubbo協(xié)議不是基于的HTTP,不夠通用,triple協(xié)議底層基于HTTP所以更通用(比如跨語言、跨異構(gòu)系統(tǒng)實現(xiàn)起 來比較方便)
- dubbo協(xié)議不支持流式調(diào)用
到了這里,關(guān)于常用通訊協(xié)議比較的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!