消息傳輸方法、裝置及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本申請涉及通信技術(shù)領(lǐng)域,具體涉及消息處理技術(shù)領(lǐng)域,尤其涉及消息傳輸方法、 裝置及系統(tǒng)。
【背景技術(shù)】
[0002] 隨著移動(dòng)網(wǎng)絡(luò)和移動(dòng)終端的推廣普及,上游的服務(wù)請求端和下游的服務(wù)提供端之 間進(jìn)行通信時(shí),所傳輸?shù)男畔⒘吭絹碓酱螅瑫r(shí)用戶所期待的服務(wù)響應(yīng)時(shí)間也越來越短。
[0003] 在現(xiàn)有技術(shù)中,系統(tǒng)之間或同一個(gè)系統(tǒng)的兩個(gè)不同部分之間主要存在兩種通信方 式:同步通信方式和異步通信方式。在同步通信方式中,發(fā)送方向接收方發(fā)送請求消息后, 只有在接收到接收方的響應(yīng)消息后,才能執(zhí)行后續(xù)的操作。由于發(fā)送方必須等待接收方的 響應(yīng)后才能執(zhí)行其它操作,因此不能充分利用系統(tǒng)的資源,通信效率較低。而在異步通信方 式中,發(fā)送方向接收方發(fā)送請求消息后,無需等待接收方的響應(yīng),可以繼續(xù)執(zhí)行其它操作。 這種通信方式雖然可以提高通信效率,但是需要耗費(fèi)較多的內(nèi)存去維護(hù)收發(fā)雙方的請求隊(duì) 列和響應(yīng)隊(duì)列,影響了系統(tǒng)性能。
【發(fā)明內(nèi)容】
[0004] 鑒于現(xiàn)有技術(shù)中的上述缺陷或不足,期望能夠提供一種提高通信效率、減少系統(tǒng) 消耗的方案。為了實(shí)現(xiàn)上述一個(gè)或多個(gè)目的,本申請?zhí)峁┝讼鬏敺椒?、裝置及系統(tǒng)。
[0005] 第一方面,本申請?zhí)峁┝艘环N消息傳輸方法,該方法包括:接收請求端通過同步通 信方式發(fā)送的請求消息;判斷對所述請求消息的響應(yīng)時(shí)間是否超出時(shí)長閾值;若是,則通 知所述請求端啟用異步輪詢通信方式,以使得所述請求端通過輪詢獲取對所述請求消息的 響應(yīng)結(jié)果。
[0006] 第二方面,本申請?zhí)峁┝肆硪环N消息傳輸方法,該方法包括:通過同步通信方式向 接收端發(fā)送請求消息;響應(yīng)于接收到啟用異步輪詢通信方式的通知,對所述接收端進(jìn)行輪 詢;通過所述輪詢獲取對所述請求消息的響應(yīng)結(jié)果;其中,所述啟用異步輪詢通信方式的 通知是所述接收端在判斷出其對所述請求消息的響應(yīng)時(shí)間超出時(shí)長閾值時(shí)返回的。
[0007] 第三方面,本申請還提供了一種消息傳輸裝置,該裝置包括:接收模塊,用于接收 請求端通過同步通信方式發(fā)送的請求消息;判斷模塊,用于判斷對所述請求消息的響應(yīng)時(shí) 間是否超出時(shí)長閾值;通知模塊,用于若對所述請求消息的響應(yīng)時(shí)間超出時(shí)長閾值,則通知 所述請求端啟用異步輪詢通信方式,以使得所述請求端通過輪詢獲取對所述請求消息的響 應(yīng)結(jié)果。
[0008] 第四方面,本申請又提供了另一種消息傳輸裝置,該裝置包括:發(fā)送模塊,用于通 過同步通信方式向接收端發(fā)送請求消息;輪詢模塊,用于響應(yīng)于接收到啟用異步輪詢通信 方式的通知,對所述接收端進(jìn)行輪詢;獲取模塊,用于通過所述輪詢獲取對所述請求消息的 響應(yīng)結(jié)果;其中,所述啟用異步輪詢通信方式的通知是所述接收端在判斷出其對所述請求 消息的響應(yīng)時(shí)間超出時(shí)長閾值時(shí)返回的。
[0009] 第五方面,本申請?zhí)峁┝艘环N消息傳輸系統(tǒng),該系統(tǒng)包括上述第三方面所提供的 消息傳輸裝置和上述第四方面所提供的消息傳輸裝置。
[0010] 本申請?zhí)峁┑南鬏敺椒?、裝置及系統(tǒng),能夠首先通過同步通信方式發(fā)送請求 信息,若同步響應(yīng)超時(shí),則可以通過異步輪詢的方式獲取對請求消息的響應(yīng)結(jié)果。在優(yōu)先使 用同步通信方式時(shí),若接收端能夠快速對請求消息做出響應(yīng),則在保證通信速度的同時(shí)避 免了對系統(tǒng)內(nèi)存的損耗。而在接收端對請求消息的響應(yīng)超時(shí)時(shí),可以轉(zhuǎn)到異步通信方式,從 而避免因?yàn)殚L時(shí)間的等待增加整個(gè)系統(tǒng)的時(shí)延。通過將同步通信方式和異步通信方式組 合,可以最大化地提高通信效率,并減少對系統(tǒng)資源的損耗。
【附圖說明】
[0011] 通過閱讀參照以下附圖所作的對非限制性實(shí)施例的詳細(xì)描述,本申請的其它特 征、目的和優(yōu)點(diǎn)將會(huì)變得更明顯:
[0012] 圖1示出了可以應(yīng)用本申請實(shí)施例的示例性系統(tǒng)架構(gòu);
[0013] 圖2示出了根據(jù)本申請一個(gè)實(shí)施例的消息傳輸方法的示例性流程圖;
[0014] 圖3示出了根據(jù)本申請另一個(gè)實(shí)施例的消息傳輸方法的示例性流程圖;
[0015] 圖4示出了根據(jù)本申請一個(gè)實(shí)施例的另一種消息傳輸方法的示例性流程圖;
[0016] 圖5示出了根據(jù)本申請一個(gè)實(shí)施例的消息傳輸裝置的結(jié)構(gòu)示意圖;
[0017] 圖6示出了根據(jù)本申請一個(gè)實(shí)施例的另一種消息傳輸裝置的結(jié)構(gòu)示意圖;
[0018] 圖7示出了根據(jù)本申請一個(gè)實(shí)施例的消息傳輸系統(tǒng)的結(jié)構(gòu)示意圖;
[0019] 圖8示出了適于用來實(shí)現(xiàn)本申請實(shí)施例的終端設(shè)備或服務(wù)器的計(jì)算機(jī)系統(tǒng)的結(jié) 構(gòu)示意圖。
【具體實(shí)施方式】
[0020] 下面結(jié)合附圖和實(shí)施例對本申請作進(jìn)一步的詳細(xì)說明??梢岳斫獾氖牵颂幩?述的具體實(shí)施例僅僅用于解釋相關(guān)發(fā)明,而非對該發(fā)明的限定。另外還需要說明的是,為了 便于描述,附圖中僅示出了與有關(guān)發(fā)明相關(guān)的部分。
[0021 ] 需要說明的是,在不沖突的情況下,本申請中的實(shí)施例及實(shí)施例中的特征可以相 互組合。下面將參考附圖并結(jié)合實(shí)施例來詳細(xì)說明本申請。
[0022] 圖1示出了可以應(yīng)用本申請實(shí)施例的示例性系統(tǒng)架構(gòu)100。
[0023] 如圖1所示,系統(tǒng)架構(gòu)100可以包括終端設(shè)備101、102、網(wǎng)絡(luò)103和服務(wù)器104。網(wǎng) 絡(luò)103用以在終端設(shè)備101、102和服務(wù)器104之間提供通信鏈路的介質(zhì)。網(wǎng)絡(luò)103可以包 括各種連接類型,例如有線、無線通信鏈路或者光纖電纜等等。
[0024] 用戶110可以使用終端設(shè)備101、102通過網(wǎng)絡(luò)103與服務(wù)器104交互,以接收或 發(fā)送消息等。終端設(shè)備1〇1、1〇2上可以安裝有各種客戶端應(yīng)用,例如網(wǎng)頁瀏覽器、即時(shí)通信 工具、郵箱客戶端、社交平臺軟件等。
[0025] 終端設(shè)備10U102可以是各種電子設(shè)備,包括但不限于個(gè)人電腦、智能手機(jī)、智能 手表、平板電腦、個(gè)人數(shù)字助理等等。
[0026] 服務(wù)器104可以是提供各種服務(wù)的服務(wù)器。服務(wù)器可以對接收到的數(shù)據(jù)進(jìn)行存 儲(chǔ)、分析等處理,并將處理結(jié)果反饋給終端設(shè)備。
[0027] 需要說明的是,本申請實(shí)施例所提供的兩種消息傳輸方法中的一種可以由終端設(shè) 備10U102執(zhí)行,另一種可以由服務(wù)器104執(zhí)行。類似的,本申請實(shí)施例所提供的兩種消息 傳輸裝置中的一種可以設(shè)置于終端設(shè)備1〇1、1〇2中,另一種可以設(shè)置于服務(wù)器104中。
[0028] 應(yīng)該理解,圖1中的終端設(shè)備、網(wǎng)絡(luò)和服務(wù)器的數(shù)目僅僅是示意性的。根據(jù)實(shí)現(xiàn)需 要,可以具有任意數(shù)目的終端設(shè)備、網(wǎng)絡(luò)和服務(wù)器。
[0029] 請參考圖2,其示出了根據(jù)本申請一個(gè)實(shí)施例的消息傳輸方法的示例性流程圖。
[0030] 如圖2所示,在步驟201中,接收請求端通過同步通信方式發(fā)送的請求消息。
[0031] 在本實(shí)施例中,消息的接收端可以首先接收由請求端通過有線網(wǎng)絡(luò)或無線網(wǎng)絡(luò)所 發(fā)送的請求消息。該請求消息可以用于請求接收端執(zhí)行某個(gè)操作、提供某項(xiàng)服務(wù)或某些信 息。由于該請求消息是通過同步通信方式發(fā)送的,而在同步通信方式中,發(fā)送方向接收方發(fā) 送請求消息后,只有在接收到接收方的響應(yīng)消息后,才能執(zhí)行后續(xù)的操作。因此,請求端在 通過某一線程發(fā)送該請求消息后,這個(gè)線程會(huì)一直等待接收端對該請求消息的響應(yīng)結(jié)果, 而不再去執(zhí)行其他操作。
[0032] 在本實(shí)施例中,上述無線網(wǎng)絡(luò)包括但不限于基于3G技術(shù)、基于WiFi技術(shù)、基于藍(lán) 牙技術(shù)、基于WiMAX技術(shù)、基于Zigbee技術(shù)、基于UWB (ultra wideband)技術(shù)或者基于其它 未來將開發(fā)的無線技術(shù)的無線網(wǎng)絡(luò)。
[0033] 接著,在步驟202中,判斷對請求消息的響應(yīng)時(shí)間是否超出時(shí)長閾值。
[0034] 當(dāng)在上述步驟201中接收到請求端發(fā)送的請求消息后,接收端可以進(jìn)一步對請求 消息的特點(diǎn)和其本身的系統(tǒng)運(yùn)行情況,來預(yù)估對該請求消息的響應(yīng)時(shí)間。具體地,接收端可 以確定出請求消息的類型、請求包大小、請求端的ID、發(fā)起請求的時(shí)間以及與請求業(yè)務(wù)相關(guān) 的各類信息。然后結(jié)合接收端當(dāng)前的CPU性能及運(yùn)行情況、內(nèi)存占用率等信息,來預(yù)估接收 端對該請求消息的響應(yīng)時(shí)間。響應(yīng)時(shí)間是指接收端從接收到請求信息開始,到做出針對該 請求信息的響應(yīng)結(jié)果為止所經(jīng)過的時(shí)長。當(dāng)確定出響應(yīng)時(shí)間后,可以將響應(yīng)時(shí)間與時(shí)長閾 值進(jìn)行比較,從而確定出響應(yīng)時(shí)間是否超出時(shí)長閾值??蛇x地,時(shí)長閾值可以是預(yù)先設(shè)置好 的,其具體數(shù)值可以根據(jù)歷史經(jīng)驗(yàn)數(shù)據(jù)或?qū)嶋H的應(yīng)用需求來確定。
[0035] 最后,在步驟203中,若是,則通知請求