麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

讓Thrift支持雙向通信

2019-11-11 06:19:58
字體:
供稿:網(wǎng)友

【問題】

Thrift采用了C/S模型,不支持雙向通信:client只能遠(yuǎn)程調(diào)用server端的RPC接口,但client端則沒有RPC供server端調(diào)用,這意味著,client端能夠主動(dòng)與server端通信,但server端不能主動(dòng)與client端通信而只能被動(dòng)地對client端的請求作出應(yīng)答。這種RPC模式在某些應(yīng)用中存在缺陷,比如:有些應(yīng)用,在大部分情況下,client端會(huì)主動(dòng)向server端發(fā)請求或者向server端發(fā)送數(shù)據(jù),而在少部分情況下,server端也需要主動(dòng)向client發(fā)送一些命令,告知進(jìn)行某些操作。

為了解決該問題,通常有三種方案可供選:

方案一:輪詢

該方案很容易想到:client端周期性地向server端詢問是否需要進(jìn)行某些操作,如果需要,則什么也不做,如果需要,則按照server的應(yīng)答(response)要求進(jìn)行操作。該方案的不足是延遲較大、且會(huì)浪費(fèi)大量資源,造成不必要的訪問開銷。

方案二:雙client/server

通信雙方都既是client,也是server。該方案需要在通信雙方之間建立兩個(gè)通信通道,開啟兩個(gè)端口,這比較繁瑣,且很不優(yōu)雅。但仍是目前普遍采用的一套方案。

client/server <————————-> client/server

方案三:異步共享通道

Thrit底層實(shí)際上是socket,而socket是支持雙向傳輸?shù)?,因此,我們完全可以通過修改thrift本身實(shí)現(xiàn)雙向傳輸。有興趣的讀者可參考:

http://joelpm.com/2009/04/03/thrift-bidirectional-async-rpc.html


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 国产视频在线观看免费 | 热@国产 | 久久亚洲成人 | 久久久成人精品视频 | 久久国产秒 | 久久久久国 | 色污视频在线观看 | 亚洲一区二区观看播放 | 国产精品视频在线观看免费 | 国产成人高潮免费观看精品 | 国产精品久久久久久久久久久久久久久久 | 日韩黄色一级视频 | 久久蜜桃香蕉精品一区二区三区 | 亚洲成人综合网站 | 久久精品国产久精国产 | 性 毛片| 成人毛片100部免费观看 | h视频在线免费看 | 午夜视频国产 | 免费黄色在线 | 午夜视频色 | 亚洲成人精品一区二区 | 国产精品刺激对白麻豆99 | 黄色成人在线播放 | 国产亚洲精品久久久久久大师 | 欧美日韩经典在线 | 欧美成人精品一级 | 国产中文一区 | 日韩欧美综合在线 | 国产精品成人av片免费看最爱 | 欧美第1页 | 国产亚洲欧美日韩在线观看不卡 | 成人午夜免费在线视频 | 9191色| 黄污在线观看 | 成人国产视频在线观看 | 国产精品av久久久久久网址 | 中国美女一级黄色片 | 日本羞羞的午夜电视剧 | 黄色欧美精品 | 国产精品99久久99久久久二 |