午夜毛片免费看,老师老少妇黄色网站,久久本道综合久久伊人,伊人黄片子

非阻塞請求處理方法及裝置與流程

文檔序號:11254574閱讀:1032來源:國知局
非阻塞請求處理方法及裝置與流程

本發(fā)明涉及一種非阻塞請求處理方法及裝置。



背景技術(shù):

onem2m標(biāo)準(zhǔn)組織致力于指定面向多個物聯(lián)網(wǎng)領(lǐng)域的統(tǒng)一的服務(wù)層標(biāo)準(zhǔn)。onem2mts-0001功能架構(gòu)定義了協(xié)議的總體框架并定義了三類功能實(shí)體:應(yīng)用實(shí)體ae、公共服務(wù)實(shí)體cse、以及網(wǎng)絡(luò)服務(wù)實(shí)體nse。在應(yīng)用實(shí)體ae和公共服務(wù)實(shí)體cse之間、在公共服務(wù)實(shí)體cse和公共服務(wù)實(shí)體cse之間、以及在公共服務(wù)實(shí)體cse和網(wǎng)絡(luò)服務(wù)實(shí)體nse之間均通過請求原語(requestprimitive)和響應(yīng)原語(responseprimitive)進(jìn)行交互。

根據(jù)請求原語和響應(yīng)原語交互方式的不同,onem2m定義了三種交互模式:阻塞請求、非阻塞請求同步、非阻塞請求異步。在圖1a、圖1b和圖1c中分別示出了這三種交互模式,并示出了三種交互模式之間的區(qū)別。

如圖1a所示,阻塞請求是指請求方發(fā)送請求后,一直保持會話連接,直至接收到接收方發(fā)送的執(zhí)行結(jié)果響應(yīng)。如圖1b所示,非阻塞請求同步是指請求方發(fā)送請求后,接收方立即發(fā)送響應(yīng)以向請求方通知已經(jīng)成功接收請求,然后請求方在接收到接收方發(fā)送的響應(yīng)消息后,間隔一段時間后主動向接收方發(fā)送請求以獲取執(zhí)行結(jié)果。如圖1c所示,非阻塞請求異步是指請求方發(fā)送請求后,接收方立即發(fā)送響應(yīng)以向請求方通知已經(jīng)成功接收請求,然后接收方執(zhí)行完畢后向接收方發(fā)送攜帶執(zhí)行結(jié)果的執(zhí)行完成通知。非阻塞請求同步和非阻塞請求異步適用于不同的場景,非阻塞請求同步適用于請求方不能接收通知消息的場景,非阻塞請求異步適用于請求方可接收通知消息的場景。

圖2中示出了非阻塞請求同步的一般交互流程。首先,在步驟s1,請求方發(fā)送資源請求;在步驟s2,接收方創(chuàng)建請求資源,并在請求資源中記錄資源請求的詳細(xì)信息,同時創(chuàng)建資源索引req-ref;在步驟s3,接收方將資源索引req-ref返回給接收方;在步驟s4,接收方執(zhí)行請求資源;在步驟s5,請求方向資源索引req-ref發(fā)送執(zhí)行結(jié)果獲取請求;在步驟s6,由于接收方 尚未執(zhí)行完成所述非阻塞請求,接收方向請求方發(fā)送請求未執(zhí)行完成響應(yīng);在步驟s7,請求方間隔一段時間后,重新向資源索引req-ref發(fā)送執(zhí)行結(jié)果獲取請求;在步驟s8,由于接收方尚未執(zhí)行完成所述非阻塞請求,接收方向請求方發(fā)送請求未執(zhí)行完成響應(yīng);在步驟s9,接收方執(zhí)行完成所述非阻塞請求,并記錄執(zhí)行結(jié)果;在步驟s10,請求方重新向資源索引req-ref發(fā)送執(zhí)行結(jié)果獲取請求;在步驟s11,接收方向請求方發(fā)送執(zhí)行結(jié)果響應(yīng)。

在圖2所示的非阻塞請求同步的交互流程中,在請求方收到資源索引req-ref后,請求方無法預(yù)知接收方執(zhí)行完成時間,需要多次向資源索引req-ref發(fā)送請求嘗試獲取執(zhí)行結(jié)果,相應(yīng)地接收方要多次向接收方發(fā)送未執(zhí)行完成響應(yīng),由此增加了請求方和接收方的工作負(fù)荷,增加了請求方和接收方的設(shè)備功耗。

因此,需要能夠降低非阻塞請求同步交互流程中由于頻繁的執(zhí)行結(jié)果獲取請求所引起的請求方和接收方的工作負(fù)荷和設(shè)備功耗。



技術(shù)實(shí)現(xiàn)要素:

為了解決上述技術(shù)問題,本發(fā)明提出了一種非阻塞請求處理方法和裝置,其通過在接收方接收到非阻塞請求后確定所述非阻塞請求的執(zhí)行完成預(yù)估時間并將所述執(zhí)行完成預(yù)估時間提供給接收方,可以避免接收方由于無法預(yù)知請求執(zhí)行完成時間而多次嘗試獲取執(zhí)行結(jié)果的情況,從而可以減輕由于頻繁的執(zhí)行結(jié)果獲取請求所引起的請求方和接收方的工作負(fù)荷和設(shè)備功耗。

根據(jù)本發(fā)明一方面,提供了一種非阻塞請求處理方法,應(yīng)用于接收方,包括:從請求方接收非阻塞請求;確定所述非阻塞請求的執(zhí)行完成預(yù)估時間;以及將所述執(zhí)行完成預(yù)估時間發(fā)送給所述請求方。

根據(jù)本發(fā)明實(shí)施例,所述確定所述非阻塞請求的執(zhí)行完成預(yù)估時間包括:根據(jù)執(zhí)行完成預(yù)估時間的確定策略確定所述非阻塞請求的執(zhí)行完成預(yù)估時間。

根據(jù)本發(fā)明實(shí)施例,根據(jù)以下至少一項來確定所述執(zhí)行完成預(yù)估時間的確定策略:所述請求方的指示;所述接收方的當(dāng)前狀態(tài);以及所述非阻塞請求的執(zhí)行參數(shù)。

根據(jù)本發(fā)明實(shí)施例,根據(jù)執(zhí)行完成預(yù)估時間的確定策略確定所述非阻塞請求的執(zhí)行完成預(yù)估時間包括:根據(jù)預(yù)定的執(zhí)行完成預(yù)估時間計算策略計算 所述非阻塞請求的執(zhí)行完成預(yù)估時間,其中,所述預(yù)定的執(zhí)行完成預(yù)估時間計算策略根據(jù)所述非阻塞請求的請求理想執(zhí)行時間、所述非阻塞請求的任務(wù)優(yōu)先級、以及接收方負(fù)荷量中的至少一項計算所述執(zhí)行完成預(yù)估時間;所述接收方負(fù)荷量包括以下至少一項:處理器占有率、內(nèi)存占有率、網(wǎng)絡(luò)占有率。

根據(jù)本發(fā)明實(shí)施例,根據(jù)該非阻塞請求的理想執(zhí)行時間、該非阻塞請求所對應(yīng)的任務(wù)優(yōu)先級的延遲時間、以及所述接收方負(fù)荷量所對應(yīng)的延遲時間來計算該非阻塞請求的執(zhí)行完成預(yù)估時間。

根據(jù)本發(fā)明實(shí)施例,根據(jù)執(zhí)行完成預(yù)估時間的確定策略確定所述非阻塞請求的執(zhí)行完成預(yù)估時間,包括:根據(jù)所記錄的各類歷史請求的執(zhí)行完成時間來確定所述非阻塞請求的執(zhí)行完成預(yù)估時間。

根據(jù)本發(fā)明實(shí)施例,根據(jù)所記錄的各類歷史請求的執(zhí)行完成時間來確定所述非阻塞請求的執(zhí)行完成預(yù)估時間包括:選擇與所述非阻塞請求匹配的至少一個歷史請求;獲取所述至少一個歷史請求的歷史執(zhí)行完成時間;以及根據(jù)所述至少一個歷史請求的歷史執(zhí)行完成時間,確定所述非阻塞請求的執(zhí)行完成預(yù)估時間。優(yōu)選地,根據(jù)所述非阻塞請求的請求種類以及請求操作對象,或者根據(jù)所述非阻塞請求的請求種類,來選擇與所述非阻塞請求匹配的所述至少一個歷史請求。優(yōu)選地,將所述至少一個歷史請求的歷史執(zhí)行完成時間的最大值確定為所述非阻塞請求的執(zhí)行完成預(yù)估時間。

根據(jù)本發(fā)明實(shí)施例,根據(jù)執(zhí)行完成預(yù)估時間的確定策略確定所述非阻塞請求的執(zhí)行完成預(yù)估時間,包括:根據(jù)預(yù)設(shè)的各類非阻塞請求的執(zhí)行完成預(yù)估時間,來確定所接收到的非阻塞請求的執(zhí)行完成估計時間。優(yōu)選地,按照請求類型、或者按照請求種類和請求操作對象對所接收到的非阻塞請求進(jìn)行分類以確定所接收到的非阻塞請求的請求分類,并且將與該請求分類對應(yīng)的預(yù)設(shè)執(zhí)行完成預(yù)估時間作為所接收到的非阻塞請求的執(zhí)行完成預(yù)估時間。

根據(jù)本發(fā)明實(shí)施例,在響應(yīng)原語中包括所述執(zhí)行完成預(yù)估時間,并且通過所述響應(yīng)原語將所述執(zhí)行完成預(yù)估時間發(fā)送給所述請求方。

根據(jù)本發(fā)明實(shí)施例,所述非阻塞請求處理方法還包括:在從請求方接收到所述非阻塞請求之后,創(chuàng)建請求資源以及資源索引;以及將所述資源索引發(fā)送給所述請求方。

根據(jù)本發(fā)明實(shí)施例,在響應(yīng)原語中包括所述資源索引和所述執(zhí)行完成預(yù)估時間,并且通過所述響應(yīng)原語將所述資源索引和所述執(zhí)行完成預(yù)估時間一 起發(fā)送給所述請求方。

根據(jù)本發(fā)明實(shí)施例,所述非阻塞請求處理方法還包括:在所述執(zhí)行完成預(yù)估時間之后,并且在接收到請求方的對所述非阻塞請求的執(zhí)行結(jié)果獲取請求之后,將對所述非阻塞請求的執(zhí)行結(jié)果發(fā)送給所述請求方。

根據(jù)本發(fā)明另一方面,提供了一種非阻塞請求處理方法,應(yīng)用于請求方,包括:向接收方發(fā)送非阻塞請求;以及從接收方接收所述非阻塞請求的執(zhí)行完成預(yù)估時間。

根據(jù)本發(fā)明實(shí)施例,通過響應(yīng)原語從所述接收方接收所述執(zhí)行完成預(yù)估時間。優(yōu)選地,通過響應(yīng)原語從所述接收方接收所述執(zhí)行完成預(yù)估時間以及所述接收方為所述非阻塞請求創(chuàng)建的請求資源的資源索引。

根據(jù)本發(fā)明另一方面,提供了一種非阻塞請求處理裝置,包括:請求接收模塊,被配置為從請求方接收非阻塞請求;時間預(yù)估模塊,被配置為確定所述非阻塞請求的執(zhí)行完成預(yù)估時間;以及響應(yīng)模塊,被配置為將所述執(zhí)行完成預(yù)估時間發(fā)送給所述請求方。

根據(jù)本發(fā)明實(shí)施例,所述時間預(yù)估模塊根據(jù)執(zhí)行完成預(yù)估時間的確定策略確定所述非阻塞請求的執(zhí)行完成預(yù)估時間。

根據(jù)本發(fā)明實(shí)施例,所述時間預(yù)估模塊根據(jù)以下至少一項來確定所述執(zhí)行完成預(yù)估時間的確定策略:所述請求方的指示;所述接收方的當(dāng)前狀態(tài);以及所述非阻塞請求的執(zhí)行參數(shù)。

根據(jù)本發(fā)明實(shí)施例,所述時間預(yù)估模塊根據(jù)預(yù)定的執(zhí)行完成預(yù)估時間計算策略計算所述非阻塞請求的執(zhí)行完成預(yù)估時間,其中,所述預(yù)先指定的執(zhí)行完成預(yù)估時間計算策略根據(jù)所述非阻塞請求的請求理想執(zhí)行時間、所述非阻塞請求的任務(wù)優(yōu)先級、以及接收方負(fù)荷量中的至少一項計算所述執(zhí)行完成預(yù)估時間;所述接收方負(fù)荷量包括以下至少一項:處理器占有率、內(nèi)存占有率、網(wǎng)絡(luò)占有率。

根據(jù)本發(fā)明實(shí)施例,所述時間預(yù)估模塊根據(jù)該非阻塞請求的理想執(zhí)行時間、該非阻塞請求所對應(yīng)的任務(wù)優(yōu)先級的延遲時間、以及所述接收方負(fù)荷量所對應(yīng)的延遲時間來計算該非阻塞請求的執(zhí)行完成預(yù)估時間。

根據(jù)本發(fā)明實(shí)施例,所述時間預(yù)估模塊選擇與所述非阻塞請求匹配的至少一個歷史請求;獲取所述至少一個歷史請求的歷史執(zhí)行完成時間;以及根據(jù)所述至少一個歷史請求的歷史執(zhí)行完成時間,確定所述非阻塞請求的執(zhí)行 完成預(yù)估時間。優(yōu)選地,所述時間預(yù)估模塊根據(jù)所述非阻塞請求的請求種類以及請求操作對象、或者根據(jù)所述非阻塞請求的請求種類,來選擇與所述非阻塞請求匹配的所述至少一個歷史請求。優(yōu)選地,所述時間預(yù)估模塊將所述至少一個歷史請求的歷史執(zhí)行完成時間的最大值確定為所述非阻塞請求的執(zhí)行完成預(yù)估時間。

根據(jù)本發(fā)明實(shí)施例,所述時間預(yù)估模塊根據(jù)預(yù)設(shè)的各類非阻塞請求的執(zhí)行完成預(yù)估時間,來確定所接收到的非阻塞請求的執(zhí)行完成估計時間。優(yōu)選地,所述時間預(yù)估模塊按照請求種類、或者按照請求種類和請求操作對象對所接收到的非阻塞請求進(jìn)行分類以確定所接收到的非阻塞請求的請求分類,并且將與該請求分類對應(yīng)的預(yù)設(shè)執(zhí)行完成預(yù)估時間作為所接收到的非阻塞請求的執(zhí)行完成預(yù)估時間。

根據(jù)本發(fā)明實(shí)施例,所述響應(yīng)模塊將所述執(zhí)行完成預(yù)估時間包括在響應(yīng)原語中,并且通過所述響應(yīng)原語將所述執(zhí)行完成預(yù)估時間發(fā)送給所述請求方。

根據(jù)本發(fā)明實(shí)施例,所述非阻塞請求處理裝置還包括:資源創(chuàng)建模塊,被配置為創(chuàng)建請求資源以及資源索引;其中,所述響應(yīng)模塊被配置為將所述資源索引發(fā)送給所述請求方。

根據(jù)本發(fā)明實(shí)施例,所述響應(yīng)模塊將所述資源索引和所述執(zhí)行完成預(yù)估時間包括在響應(yīng)原語中,并且通過所述響應(yīng)原語將所述資源索引和所述執(zhí)行完成預(yù)估時間一起發(fā)送給所述請求方

根據(jù)本發(fā)明實(shí)施例,所述非阻塞請求處理裝置還包括:請求執(zhí)行模塊,被配置為執(zhí)行所述非阻塞請求;其中,所述請求接收模塊還被配置為從所述請求方接收執(zhí)行結(jié)果獲取請求,所述執(zhí)行結(jié)果獲取請求用于獲取對所述非阻塞請求的執(zhí)行結(jié)果;以及所述響應(yīng)模塊還被配置為將對所述非阻塞請求的執(zhí)行結(jié)果發(fā)送給所述請求方。

采用根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理方法和裝置,通過在接收到非阻塞請求后估計該非阻塞請求的執(zhí)行完成預(yù)估時間并將所估計的執(zhí)行完成預(yù)估時間發(fā)送給所述請求方,使得所述請求方能夠大致了解該非阻塞請求的預(yù)計執(zhí)行完成時間,在所述執(zhí)行完成預(yù)估時間后再向接收方發(fā)送所述執(zhí)行結(jié)果獲取請求,從而避免了所述請求方不斷發(fā)送執(zhí)行結(jié)果獲取請求嘗試獲取執(zhí)行結(jié)果的情況,并且降低了由于頻繁的執(zhí)行結(jié)果獲取請求所引起的請求方和接收方的工作負(fù)荷和設(shè)備功耗。

本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過在說明書、權(quán)利要求書以及附圖中所特別指出的結(jié)構(gòu)來實(shí)現(xiàn)和獲得。

附圖說明

通過結(jié)合附圖對本發(fā)明實(shí)施例進(jìn)行更詳細(xì)的描述,本發(fā)明的上述以及其它目的、特征和優(yōu)勢將變得更加明顯。附圖用來提供對本發(fā)明實(shí)施例的進(jìn)一步理解,并且構(gòu)成說明書的一部分,與本發(fā)明實(shí)施例一起用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的限制。在附圖中,相同的參考標(biāo)號通常代表相同部件或步驟。

圖1a、圖1b和圖1c分別示出了onem2m定義的三種交互模式的示意性交互過程;

圖2示出了非阻塞請求同步的一般交互流程;

圖3a和圖3b示出了根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理方法的示意性流程圖;

圖4示出了根據(jù)本發(fā)明實(shí)施例的請求方和接收方之間的示意性交互過程;

圖5示出了根據(jù)本發(fā)明實(shí)施例的請求方向接收方發(fā)送的響應(yīng)參數(shù)的示例;

圖6示出了根據(jù)本發(fā)明第一實(shí)施例的請求方和接收方之間的示意性交互過程;

圖7示出了根據(jù)本發(fā)明第一實(shí)施例的計算執(zhí)行完成預(yù)估時間的示意性表格;

圖8示出了根據(jù)本發(fā)明第二實(shí)施例的請求方和接收方之間的示意性交互流程圖;

圖9示出了根據(jù)本發(fā)明第二實(shí)施例的根據(jù)所記錄的各類歷史請求的執(zhí)行完成時間來確定所述非阻塞請求的執(zhí)行完成預(yù)估時間的方法;

圖10示出了根據(jù)本發(fā)明第二實(shí)施例的計算執(zhí)行完成預(yù)估時間的示意性表格;

圖11示出了根據(jù)本發(fā)明第三實(shí)施例的請求方和接收方之間的示意性交互流程圖;

圖12示出了根據(jù)本發(fā)明第三實(shí)施例的計算執(zhí)行完成預(yù)估時間的示意性表格;

圖13示出了根據(jù)本發(fā)明實(shí)施例的在接收方實(shí)現(xiàn)的非阻塞請求處理設(shè)備的示意性框圖;

圖14示出了根據(jù)本發(fā)明實(shí)施例的在接收方實(shí)現(xiàn)的非阻塞請求處理裝置的示意性框圖;

圖15示出了根據(jù)本發(fā)明實(shí)施例的在請求方實(shí)現(xiàn)的非阻塞請求處理設(shè)備的示意性框圖;

圖16示出了根據(jù)本發(fā)明實(shí)施例的在請求方實(shí)現(xiàn)的非阻塞請求處理裝置的示意性框圖。

具體實(shí)施方式

為了使得本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更為明顯,下面將參照附圖詳細(xì)描述本發(fā)明的示例實(shí)施例。顯然,所描述的示例實(shí)施例僅僅是本發(fā)明的一部分實(shí)施例,而不是本發(fā)明的全部實(shí)施例,本領(lǐng)域技術(shù)人員在沒有付出創(chuàng)造性勞動的情況下所得到的所有其它實(shí)施例都應(yīng)落入本發(fā)明的保護(hù)范圍之內(nèi)。

這里,需要注意的是,在附圖中,將相同的附圖標(biāo)記賦予基本上具有相同或類似結(jié)構(gòu)和功能的組成部分,并且將省略關(guān)于它們的重復(fù)描述。

以下將分別從接收方和請求方說明本發(fā)明實(shí)施例的非阻塞請求處理方法。

首先,參考圖3a,從接收方來描述根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理方法。

在步驟s31,接收方從請求方接收非阻塞請求。

在步驟s32,接收方確定所述非阻塞請求的執(zhí)行完成預(yù)估時間。

在步驟s33,接收方將所述執(zhí)行完成預(yù)估時間發(fā)送給所述請求方。

所述執(zhí)行完成預(yù)估時間可以是所述接收方執(zhí)行完成所述非阻塞請求的預(yù)估時間點(diǎn),也可以是從所述接收方接收到所述非阻塞請求的時間點(diǎn)到所述接收方執(zhí)行完成所述非阻塞請求的預(yù)估時間點(diǎn)的時間段。

接下來,參考圖3b,從請求方來描述根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理方法。

在步驟s36,請求方向接收方發(fā)送非阻塞請求。

在步驟s37,請求方從接收方接收所述非阻塞請求的執(zhí)行完成預(yù)估時間。

根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理方法,通過在接收到非阻塞請求后估計該非阻塞請求的執(zhí)行完成預(yù)估時間并將所估計的執(zhí)行完成預(yù)估時間發(fā)送給所述請求方,使得所述請求方能夠大致了解該非阻塞請求的預(yù)計執(zhí)行完成時間,避免了所述請求方不斷發(fā)送執(zhí)行結(jié)果獲取請求嘗試獲取執(zhí)行結(jié)果的情況。

下面,將以onem2m協(xié)議為例來描述根據(jù)本發(fā)明實(shí)施例的請求方和接收方之間的交互過程。

根據(jù)本發(fā)明實(shí)施例,所述請求方可以為應(yīng)用實(shí)體ae,所述接收方可以為公共服務(wù)實(shí)體cse;或者所述請求方可以為公共服務(wù)實(shí)體cse,所述接收方可以為公共服務(wù)實(shí)體cse;或者所述請求方可以為公共服務(wù)實(shí)體cse,所述接收方可以為網(wǎng)絡(luò)服務(wù)實(shí)體nse。

在本說明書中,將以請求方為應(yīng)用實(shí)體ae并且接收方為公共服務(wù)實(shí)體cse為例來描述根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理方法。

如圖4所示,示出了根據(jù)本發(fā)明實(shí)施例的請求方和接收方之間的交互過程。

在步驟s41,請求方向接收方發(fā)送非阻塞請求,并且接收方接收該非阻塞請求。

在步驟s42,接收方確定所述非阻塞請求的執(zhí)行完成預(yù)估時間??蛇x地,接收方還創(chuàng)建請求資源,并且創(chuàng)建資源索引req-ref。此外,可選地,還可以在請求資源中記錄資源請求的詳細(xì)信息。例如,在onem2m協(xié)議下,所述請求資源(<request>)可以記錄所述非阻塞請求的相關(guān)信息,包括:請求方、接收方、請求id、請求內(nèi)容、請求狀態(tài)、請求執(zhí)行結(jié)果等等。

在步驟s43,接收方將所述非阻塞請求的執(zhí)行完成預(yù)估時間發(fā)送給所述請求方??蛇x地,接收方將所創(chuàng)建的資源索引req-ref與所述非阻塞請求的執(zhí)行完成預(yù)估時間同時發(fā)送給所述請求方,并且接收方接收所述資源索引req-ref和所述執(zhí)行完成預(yù)估時間。

然后,在步驟s441,所述請求方等待所述執(zhí)行完成預(yù)估時間。同時,在步驟s442,所述接收方執(zhí)行所述接收到的非阻塞請求并記錄執(zhí)行結(jié)果。

在步驟s45,所述請求方向所述接收方發(fā)送執(zhí)行結(jié)果獲取請求,所述接 收方接收所述執(zhí)行結(jié)果獲取請求,所述執(zhí)行結(jié)果獲取請求用于獲取對所述非阻塞請求的執(zhí)行結(jié)果??蛇x地,所述請求方向所述接收方發(fā)送針對所述資源索引req-ref的執(zhí)行結(jié)果獲取請求。

在步驟s46,所述接收方將對所述非阻塞請求的執(zhí)行結(jié)果發(fā)送給所述請求方,并且所述請求方接收所述執(zhí)行結(jié)果。

根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理方法,通過將請求的執(zhí)行完成預(yù)估時間發(fā)送給請求方,請求方可以在等待所述執(zhí)行完成預(yù)估時間后再向接收方發(fā)送所述執(zhí)行結(jié)果獲取請求,從而避免了所述請求方不斷發(fā)送執(zhí)行結(jié)果獲取請求嘗試獲取執(zhí)行結(jié)果的情況,并且降低了由于頻繁的執(zhí)行結(jié)果獲取請求所引起的請求方和接收方的工作負(fù)荷和設(shè)備功耗。

應(yīng)了解,onem2m協(xié)議基于資源,接收方創(chuàng)建請求資源并創(chuàng)建資源索引,然后在請求方和接收方之間通過資源索引進(jìn)行信息交互。然而,應(yīng)用非阻塞請求的其他協(xié)議可以不基于資源,在此情況下,接收方無需創(chuàng)建請求資源并創(chuàng)建資源索引,也就是說:步驟s42、s43和s45中與請求資源創(chuàng)建和資源索引交互的內(nèi)容不是必需的。

如圖5所示,示出了根據(jù)本發(fā)明實(shí)施例的接收方向請求方提供請求的執(zhí)行完成預(yù)估時間的響應(yīng)原語。根據(jù)本發(fā)明實(shí)施例,在接收方向請求方提供的響應(yīng)原語中增加響應(yīng)參數(shù):結(jié)果預(yù)估時間(resultestimatedtimestamp)。所述結(jié)果預(yù)估時間響應(yīng)參數(shù)用于指示所述接收方執(zhí)行完成所述非阻塞請求并且所述請求方可以獲得所述非阻塞請求的執(zhí)行結(jié)果的時間。

作為示例,響應(yīng)原語還包括以下響應(yīng)參數(shù)中的至少一部分:響應(yīng)狀態(tài)碼(responsestatuscode)、請求標(biāo)識符(requestidentifier)、內(nèi)容(包含req-ref)、發(fā)送至(to)、源自(from)、發(fā)起時間(originatingtimestamp)、結(jié)果到期時間(resultexpirationtimestamp)、事件類型(eventcategory)。

下面,將參考圖6來描述根據(jù)本發(fā)明第一實(shí)施例的非阻塞請求處理方法。

根據(jù)本發(fā)明第一實(shí)施例,根據(jù)執(zhí)行完成預(yù)估時間的確定策略確定所述非阻塞請求的執(zhí)行完成預(yù)估時間,包括:根據(jù)預(yù)先指定的執(zhí)行完成預(yù)估時間計算策略計算所述非阻塞請求的執(zhí)行完成預(yù)估時間。

根據(jù)本發(fā)明第一實(shí)施例,在接收方預(yù)先指定執(zhí)行完成預(yù)估時間計算策略,并且根據(jù)該預(yù)先指定的執(zhí)行完成預(yù)估時間計算策略計算所述非阻塞請求的執(zhí)行完成預(yù)估時間。

在步驟s61,請求方向接收方發(fā)送非阻塞請求,并且接收方接收該非阻塞請求。

在步驟s62,接收方根據(jù)該預(yù)先指定的執(zhí)行完成預(yù)估時間計算策略計算所述非阻塞請求的執(zhí)行完成預(yù)估時間??蛇x地,接收方創(chuàng)建請求資源,創(chuàng)建資源索引req-ref,并且還可以在請求資源中記錄資源請求的詳細(xì)信息。

在步驟s63,接收方將所述非阻塞請求的執(zhí)行完成預(yù)估時間發(fā)送給所述請求方??蛇x地,接收方將所創(chuàng)建的資源索引req-ref與所述非阻塞請求的執(zhí)行完成預(yù)估時間一起發(fā)送給所述請求方,并且接收方接收所述資源索引req-ref和所述執(zhí)行完成預(yù)估時間。

然后,在步驟s641,所述請求方等待所述執(zhí)行完成預(yù)估時間。同時,在步驟s642,所述接收方執(zhí)行所述非阻塞請求并記錄執(zhí)行結(jié)果。

在步驟s65,所述請求方向所述接收方發(fā)送執(zhí)行結(jié)果獲取請求,所述接收方接收所述執(zhí)行結(jié)果獲取請求,所述執(zhí)行結(jié)果獲取請求用于獲取對所述非阻塞請求的執(zhí)行結(jié)果??蛇x地,所述請求方向所述接收方發(fā)送針對所述資源索引req-ref的執(zhí)行結(jié)果獲取請求。

在步驟s66,所述接收方將對所述非阻塞請求的執(zhí)行結(jié)果發(fā)送給所述請求方,并且所述請求方接收所述執(zhí)行結(jié)果。

根據(jù)本發(fā)明第一實(shí)施例,所述預(yù)先指定的執(zhí)行完成預(yù)估時間計算策略可以考慮以下至少一項:請求理想執(zhí)行時間、任務(wù)優(yōu)先級、以及接收方負(fù)荷量,即所述預(yù)先指定的執(zhí)行完成預(yù)估時間計算策略根據(jù)請求理想執(zhí)行時間、任務(wù)優(yōu)先級、以及接收方負(fù)荷量中的至少一項計算所述執(zhí)行完成預(yù)估時間。此外,根據(jù)本發(fā)明第一實(shí)施例,所述接收方負(fù)荷量可以包括以下至少一項:處理器占有率、內(nèi)存占有率、網(wǎng)絡(luò)占有率。

例如,對于接收方接收到的每個非阻塞請求,可以按照其需要的資源,將非阻塞請求劃分為以下請求類型:處理器消耗型、存儲消耗型、網(wǎng)絡(luò)消耗型、處理器和存儲消耗型、處理器和網(wǎng)絡(luò)消耗型、存儲和網(wǎng)絡(luò)消耗型、處理器和存儲和網(wǎng)絡(luò)消耗型。

對于接收方接收到的所述非阻塞請求,可以根據(jù)該非阻塞請求的指令數(shù)以及單位指令執(zhí)行時間,來計算該非阻塞請求的理想執(zhí)行時間。

優(yōu)選地,對于每個非阻塞請求,可以根據(jù)該非阻塞請求的理想執(zhí)行時間、該非阻塞請求所對應(yīng)的任務(wù)優(yōu)先級的延遲時間、以及所述接收方負(fù)荷量所對 應(yīng)的延遲時間來計算該非阻塞請求的執(zhí)行完成預(yù)估時間。

根據(jù)本發(fā)明第一實(shí)施例,對于不同請求類型的非阻塞請求,所述接收方負(fù)荷量的具體體現(xiàn)方式也不同。

具體的,對于處理器消耗型的非阻塞請求,所述接收方負(fù)荷量包括處理器占有率;對于存儲消耗型的非阻塞請求,所述接收方負(fù)荷量包括存儲占有率;對于網(wǎng)絡(luò)消耗型的非阻塞請求,所述接收方負(fù)荷量包括網(wǎng)絡(luò)占有率;對于處理器和存儲消耗型的非阻塞請求,所述接收方負(fù)荷量包括處理器占有率和存儲占有率;對于處理器和網(wǎng)絡(luò)消耗型的非阻塞請求,所述接收方負(fù)荷量包括處理器占有率和網(wǎng)絡(luò)占有率;對于存儲和網(wǎng)絡(luò)消耗型的非阻塞請求,所述接收方負(fù)荷量包括存儲占有率和網(wǎng)絡(luò)占有率;對于處理器和存儲和網(wǎng)絡(luò)消耗型的非阻塞請求,所述接收方負(fù)荷量包括處理器占有率、存儲占有率和網(wǎng)絡(luò)占有率。

如圖7所示,示出了根據(jù)本發(fā)明第一實(shí)施例的計算執(zhí)行完成預(yù)估時間的示意性表格。

例如,對于處理器消耗型的非阻塞請求,執(zhí)行完成預(yù)估時間可以為:單位指令執(zhí)行時間(a1微秒/指令)×該非阻塞請求的指令數(shù)(a2指令)+該非阻塞請求的任務(wù)優(yōu)先級所對應(yīng)的延遲時間(t1x)+當(dāng)前處理器占有率所對應(yīng)的延遲時間(t2x)。

例如,對于存儲消耗型的非阻塞請求,執(zhí)行完成預(yù)估時間可以為:單位指令執(zhí)行時間(b1微秒/指令)×該非阻塞請求的指令數(shù)(b2指令)+該非阻塞請求的任務(wù)優(yōu)先級所對應(yīng)的延遲時間(t1x)+當(dāng)前存儲占有率所對應(yīng)的延遲時間(t3x)。

例如,對于網(wǎng)絡(luò)消耗型的非阻塞請求,執(zhí)行完成預(yù)估時間可以為:單位指令執(zhí)行時間(c1微秒/指令)×該非阻塞請求的指令數(shù)(c2指令)+該非阻塞請求的任務(wù)優(yōu)先級所對應(yīng)的延遲時間(t1x)+當(dāng)前網(wǎng)絡(luò)占有率所對應(yīng)的延遲時間(t4x)?!啊痢睘槌朔ㄟ\(yùn)算符號,“+”為加法運(yùn)算符號。

下面,參考圖8來描述根據(jù)本發(fā)明第二實(shí)施例的非阻塞請求處理方法。

根據(jù)本發(fā)明第二實(shí)施例,根據(jù)執(zhí)行完成預(yù)估時間的確定策略確定所述非阻塞請求的執(zhí)行完成預(yù)估時間,具體包括:根據(jù)所記錄的各類歷史請求的執(zhí)行完成時間來確定當(dāng)前接收到的所述非阻塞請求的執(zhí)行完成預(yù)估時間。

根據(jù)本發(fā)明第二實(shí)施例,在接收方預(yù)先記錄各類歷史請求的執(zhí)行完成時 間,并且在從請求方接收到非阻塞請求之后,根據(jù)所記錄的各類歷史請求的執(zhí)行完成時間來確定當(dāng)前接收到的所述非阻塞請求的執(zhí)行完成預(yù)估時間。

在步驟s81,請求方向接收方發(fā)送非阻塞請求,并且接收方接收該非阻塞請求。

在步驟s82,接收方接收到非阻塞請求后根據(jù)所記錄的各類歷史請求的執(zhí)行完成時間來確定所述非阻塞請求的執(zhí)行完成預(yù)估時間??蛇x地,接收方創(chuàng)建請求資源,創(chuàng)建資源索引req-ref,并且還可以在請求資源中記錄資源請求的詳細(xì)信息。

在步驟s83,接收方將所述非阻塞請求的執(zhí)行完成預(yù)估時間發(fā)送給所述請求方??蛇x地,接收方將所創(chuàng)建的資源索引req-ref與所述非阻塞請求的執(zhí)行完成預(yù)估時間一起發(fā)送給所述請求方,并且接收方接收所述資源索引req-ref和所述執(zhí)行完成預(yù)估時間。

然后,在步驟s841,所述請求方等待所述執(zhí)行完成預(yù)估時間。同時,在步驟s842,所述接收方執(zhí)行所述非阻塞請求并記錄執(zhí)行結(jié)果。

在步驟s85,所述請求方向所述接收方發(fā)送執(zhí)行結(jié)果獲取請求,所述接收方接收所述執(zhí)行結(jié)果獲取請求,所述執(zhí)行結(jié)果獲取請求用于獲取對所述非阻塞請求的執(zhí)行結(jié)果??蛇x地,所述請求方向所述接收方發(fā)送針對所述資源索引req-ref的執(zhí)行結(jié)果獲取請求。

在步驟s86,所述接收方將對所述非阻塞請求的執(zhí)行結(jié)果發(fā)送給所述請求方,并且所述請求方接收所述執(zhí)行結(jié)果。

下面,參考圖9來描述根據(jù)本發(fā)明第二實(shí)施例的根據(jù)所記錄的各類歷史請求的執(zhí)行完成時間來確定所述非阻塞請求的執(zhí)行完成預(yù)估時間的方法。

在步驟s91,選擇與所述非阻塞請求匹配的至少一個歷史請求。

可選地,可以根據(jù)所述非阻塞請求的請求種類,來選擇與所述非阻塞請求匹配的所述至少一個歷史請求。

可選地,可以根據(jù)所述非阻塞請求的請求種類以及請求操作對象,來選擇與所述非阻塞請求完全匹配的至少一個歷史請求,或者選擇與所述非阻塞請求匹配度較高的至少一個歷史請求。

如圖10所示,示出了根據(jù)本發(fā)明第二實(shí)施例的各類歷史請求的請求種類、請求操作對象以及歷史執(zhí)行完成時間。

例如,根據(jù)onem2m協(xié)議,非阻塞請求的請求種類可以包括:創(chuàng)建 (create)、取得(retrieve)、更新(update)、刪除(delete)、以及通知(notify)。

例如,根據(jù)onem2m協(xié)議,非阻塞請求的請求操作對象可以包括:cse資源(csebase)、ae資源(ae)、遠(yuǎn)程ae資源(remoteae)、容器資源(container)等。

在步驟s92,獲取所述至少一個歷史請求的歷史執(zhí)行完成時間。

在步驟s93,根據(jù)所述至少一個歷史請求的歷史執(zhí)行完成時間,確定所述非阻塞請求的執(zhí)行完成預(yù)估時間。

如圖10所示,根據(jù)所述非阻塞請求的請求種類以及請求操作對象選擇了一個與所述非阻塞請求接近的歷史請求,將該歷史請求的歷史執(zhí)行完成時間作為所述非阻塞請求的執(zhí)行完成預(yù)估時間。

此外,例如,在根據(jù)所述非阻塞請求的請求種類以及請求操作對象選擇了多個與所述非阻塞請求接近的歷史請求時,可以選擇所述多個歷史請求的歷史執(zhí)行完成時間的最大值作為所述非阻塞請求的執(zhí)行完成預(yù)估時間;或者可以選擇所述多個歷史請求的歷史執(zhí)行完成時間的平均值作為所述非阻塞請求的執(zhí)行完成預(yù)估時間。

再例如,在根據(jù)所述非阻塞請求的請求種類選擇了多個與所述非阻塞請求接近的歷史請求時,可以選擇所述多個歷史請求的歷史執(zhí)行完成時間的最大值作為所述非阻塞請求的執(zhí)行完成預(yù)估時間。

下面,將參考圖11來描述根據(jù)本發(fā)明第三實(shí)施例的非阻塞請求處理方法。

根據(jù)本發(fā)明第三實(shí)施例,根據(jù)執(zhí)行完成預(yù)估時間的確定策略確定所述非阻塞請求的執(zhí)行完成預(yù)估時間,包括:根據(jù)預(yù)設(shè)的各類非阻塞請求的執(zhí)行完成預(yù)估時間,來確定所接收到的非阻塞請求的執(zhí)行完成估計時間。

根據(jù)本發(fā)明第三實(shí)施例,在接收方預(yù)設(shè)各類非阻塞請求的執(zhí)行完成預(yù)估時間,并且在從請求方接收到非阻塞請求之后,將與所接收到的非阻塞請求最接近的一類非阻塞請求的預(yù)設(shè)執(zhí)行完成預(yù)估時間作為所接收到的非阻塞請求的執(zhí)行完成估計時間。

在步驟s111,請求方向接收方發(fā)送非阻塞請求,并且接收方接收該非阻塞請求。

在步驟s112,接收方根據(jù)各類非阻塞請求的預(yù)設(shè)執(zhí)行完成預(yù)估時間來確定所接收到的非阻塞請求的執(zhí)行完成估計時間??蛇x地,接收方創(chuàng)建請求資 源,創(chuàng)建資源索引req-ref,并且還可以在請求資源中記錄資源請求的詳細(xì)信息。

例如,所述接收方可以按照請求種類、或者按照請求種類和請求操作對象對所接收到的非阻塞請求進(jìn)行分類以確定當(dāng)前接收到的非阻塞請求的請求分類,并且將與該請求分類對應(yīng)的預(yù)設(shè)執(zhí)行完成預(yù)估時間作為當(dāng)前接收到的非阻塞請求的執(zhí)行完成預(yù)估時間。

在步驟s113,接收方將所述非阻塞請求的執(zhí)行完成預(yù)估時間發(fā)送給所述請求方??蛇x地,接收方將所創(chuàng)建的資源索引req-ref與所述非阻塞請求的執(zhí)行完成預(yù)估時間一起發(fā)送給所述請求方,并且接收方接收所述資源索引req-ref和所述執(zhí)行完成預(yù)估時間。

然后,在步驟s1141,所述請求方等待所述執(zhí)行完成預(yù)估時間。同時,在步驟s1142,所述接收方執(zhí)行所述非阻塞請求并記錄執(zhí)行結(jié)果。可選地,在步驟s1142,所述接收方根據(jù)所述非阻塞請求的實(shí)際執(zhí)行完成時間來更新與所述非阻塞請求對應(yīng)的類別的執(zhí)行完成預(yù)估時間。

在步驟s115,所述請求方向所述接收方發(fā)送執(zhí)行結(jié)果獲取請求,所述接收方接收所述執(zhí)行結(jié)果獲取請求,所述執(zhí)行結(jié)果獲取請求用于獲取對所述非阻塞請求的執(zhí)行結(jié)果??蛇x地,所述請求方向所述接收方發(fā)送針對所述資源索引req-ref的執(zhí)行結(jié)果獲取請求。

在步驟s116,所述接收方將對所述非阻塞請求的執(zhí)行結(jié)果發(fā)送給所述請求方,并且所述請求方接收所述執(zhí)行結(jié)果。

根據(jù)本發(fā)明第三實(shí)施例,根據(jù)各類非阻塞請求的執(zhí)行完成預(yù)估時間,來確定所接收到的非阻塞請求的執(zhí)行完成估計時間,包括:所述接收方可以按照請求種類、或者按照請求種類和請求操作對象對所接收到的非阻塞請求進(jìn)行分類。從請求分類和執(zhí)行完成預(yù)估時間的對應(yīng)關(guān)系中確定出與所述非阻塞請求的請求分類相匹配的執(zhí)行完成預(yù)估時間作為所接收到的非阻塞請求的執(zhí)行完成預(yù)估時間。

如前所述,按照請求種類,可以將非阻塞請求劃分為:創(chuàng)建(create)、取得(retrieve)、更新(update)、刪除(delete)、以及通知(notify)。對于每個請求種類,可以預(yù)設(shè)該請求種類的執(zhí)行完成預(yù)估時間。例如,對于每個請求種類,可以根據(jù)該請求種類的各歷史請求的歷史執(zhí)行完成時間的最大值來預(yù)設(shè)該請求種類的執(zhí)行完成預(yù)估時間。

如圖12所示,示出了根據(jù)本發(fā)明第三實(shí)施例的為每個請求種類預(yù)設(shè)該請求種類的執(zhí)行完成預(yù)估時間的示例。

可替換地,如前所述,可以進(jìn)一步按照請求操作對象,將每個請求種類進(jìn)一步劃分為多個請求子類:csebase、ae、remotecse、container等。對于每個請求子類,可以根據(jù)該請求子類的各歷史請求的歷史執(zhí)行完成時間的最大值來預(yù)設(shè)該請求子類的執(zhí)行完成預(yù)估時間。參考圖10所示,t11、t12、…t54等可以分別表示各個請求子類對應(yīng)的最大歷史執(zhí)行完成時間。

具體地,在每次執(zhí)行完成非阻塞請求之后,在該非阻塞請求的實(shí)際執(zhí)行完成時間大于該非阻塞請求所對應(yīng)的請求分類(即,請求種類或請求子類)的預(yù)設(shè)執(zhí)行完成預(yù)估時間的情況下,都將該非阻塞請求所對應(yīng)的請求分類(即,請求種類或請求子類)的預(yù)設(shè)執(zhí)行完成預(yù)估時間更新為該非阻塞請求的實(shí)際執(zhí)行完成時間;反之,在該非阻塞請求的實(shí)際執(zhí)行完成時間不大于該非阻塞請求所對應(yīng)的請求分類(即,請求種類或請求子類)的預(yù)設(shè)執(zhí)行完成預(yù)估時間的情況下,保持該非阻塞請求所對應(yīng)的請求分類(即,請求種類或請求子類)的預(yù)設(shè)執(zhí)行完成預(yù)估時間不變。

應(yīng)了解,onem2m協(xié)議是基于資源請求的協(xié)議,接收方創(chuàng)建請求資源并創(chuàng)建資源索引,然后在請求方和接收方之間通過資源索引進(jìn)行信息交互。然而,應(yīng)用非阻塞請求的其他協(xié)議可以不基于資源請求,在此情況下,接收方無需創(chuàng)建資源并創(chuàng)建資源索引,也就是說:在本發(fā)明第一至第三實(shí)施例中,步驟s62、s63、s65、s82、s83、s85、s112、s113、s115中與資源創(chuàng)建和資源索引交互的內(nèi)容不是必需的。

下面,將參考圖13來描述根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理設(shè)備,該非阻塞請求處理設(shè)備在非阻塞請求的接收方實(shí)現(xiàn)。

根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理設(shè)備包括通信模塊131、處理器132和存儲器133。

通信模塊131被配置為與外部進(jìn)行數(shù)據(jù)通信,以便從外部接收各種請求,例如從請求方接收任務(wù)執(zhí)行請求以及執(zhí)行結(jié)果獲取請求,并且將各種響應(yīng)消息發(fā)送至外部,例如向請求方發(fā)送請求接收響應(yīng)以及執(zhí)行結(jié)果響應(yīng)。

存儲器133被配置為存儲程序指令。

處理器132被配置為執(zhí)行在存儲器中存儲的程序指令以執(zhí)行如上所述的根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理方法,并且可以實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例 的非阻塞請求處理裝置。

下面,將參考圖14來描述根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理裝置,該非阻塞請求處理裝置在非阻塞請求的接收方實(shí)現(xiàn)。

所述非阻塞請求處理裝置可以包括請求接收模塊141、資源創(chuàng)建模塊142、時間預(yù)估模塊143、請求執(zhí)行模塊144、以及響應(yīng)模塊145。

所述請求接收模塊141被配置為接收非阻塞請求,并且相應(yīng)地執(zhí)行根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理方法的步驟s31、s41、s61、s81和s111。此外,所述請求接收模塊141還被配置為接收執(zhí)行結(jié)果獲取請求,并且相應(yīng)地執(zhí)行根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理方法的步驟s45、s65、s85和s115。

所述資源創(chuàng)建模塊142被配置為所述請求接收模塊141接收的非阻塞請求創(chuàng)建請求資源以及資源索引req-ref,并且相應(yīng)地執(zhí)行根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理方法的步驟s42、s62、s82和s112的一部分。

所述時間預(yù)估模塊143被配置為確定所述非阻塞請求的執(zhí)行完成預(yù)估時間,并且相應(yīng)地執(zhí)行根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理方法的步驟s42、s62、s82和s112的一部分。

根據(jù)本發(fā)明實(shí)施例,所述時間預(yù)估模塊143可以被配置為根據(jù)執(zhí)行完成預(yù)估時間的確定策略確定所述非阻塞請求的執(zhí)行完成預(yù)估時間。可選地,所述時間預(yù)估模塊143可以被配置為根據(jù)以下至少一項來確定所述執(zhí)行完成預(yù)估時間的確定策略:所述請求方的指示;所述接收方的當(dāng)前狀態(tài);以及所述非阻塞請求的執(zhí)行參數(shù)。

根據(jù)本發(fā)明實(shí)施例,所述時間預(yù)估模塊143可以被配置為根據(jù)預(yù)先指定的執(zhí)行完成預(yù)估時間計算策略計算所述非阻塞請求的執(zhí)行完成預(yù)估時間(如根據(jù)本發(fā)明第一實(shí)施例的非阻塞請求處理方法的步驟s62)。如在本發(fā)明第一實(shí)施例中所描述的,所述預(yù)先指定的執(zhí)行完成預(yù)估時間計算策略可以考慮以下至少一項:請求理想執(zhí)行時間、任務(wù)優(yōu)先級、以及接收方負(fù)荷量;所述接收方負(fù)荷量可以包括以下至少一項:處理器占有率、內(nèi)存占有率、網(wǎng)絡(luò)占有率。

根據(jù)本發(fā)明實(shí)施例,所述時間預(yù)估模塊143可以被配置為根據(jù)所記錄的各類歷史請求的執(zhí)行完成時間來確定所述非阻塞請求的執(zhí)行完成預(yù)估時間(如根據(jù)本發(fā)明第二實(shí)施例的非阻塞請求處理方法的步驟s82)。如在本發(fā)明 第二實(shí)施例中所描述的,所述時間預(yù)估模塊143可以根據(jù)所述非阻塞請求的請求種類、或者根據(jù)所述非阻塞請求的請求種類以及請求操作對象來選擇與所述非阻塞請求接近的所述至少一個歷史請求,然后可以根據(jù)所述至少一個歷史請求的歷史執(zhí)行完成時間來確定所述非阻塞請求的執(zhí)行完成預(yù)估時間。例如,在僅選擇了一個與所述非阻塞請求接近的歷史請求,將該歷史請求的歷史執(zhí)行完成時間作為所述非阻塞請求的執(zhí)行完成預(yù)估時間。再例如,在選擇了多個與所述非阻塞請求接近的歷史請求時,可以選擇所述多個歷史請求的歷史執(zhí)行完成時間的最大值作為所述非阻塞請求的執(zhí)行完成預(yù)估時間;或者可以選擇所述多個歷史請求的歷史執(zhí)行完成時間的平均值作為所述非阻塞請求的執(zhí)行完成預(yù)估時間。

根據(jù)本發(fā)明實(shí)施例,所述時間預(yù)估模塊143可以被配置為根據(jù)預(yù)設(shè)的各類非阻塞請求的執(zhí)行完成預(yù)估時間來確定所接收到的非阻塞請求的執(zhí)行完成估計時間(如根據(jù)本發(fā)明第三實(shí)施例的非阻塞請求處理方法的步驟s112)。如在本發(fā)明第三實(shí)施例中所描述的,所述時間預(yù)估模塊143可以按照請求種類、或者按照請求種類和請求操作對象對所接收到的非阻塞請求進(jìn)行分類以確定當(dāng)前接收到的非阻塞請求的請求分類,并且將與該請求分類對應(yīng)的預(yù)設(shè)執(zhí)行完成預(yù)估時間作為當(dāng)前接收到的非阻塞請求的執(zhí)行完成預(yù)估時間。

所述請求執(zhí)行模塊144被配置為執(zhí)行所述非阻塞請求,可選地記錄執(zhí)行結(jié)果,并且相應(yīng)地執(zhí)行根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理方法的步驟s442、s642、s842和s1142。

所述響應(yīng)模塊145被配置為在所述請求接收模塊141接收到所述非阻塞請求并且所述時間預(yù)估模塊143確定了所述執(zhí)行完成預(yù)估時間之后,將所述執(zhí)行完成預(yù)估時間發(fā)送給所述請求方,并且相應(yīng)地執(zhí)行根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理方法的步驟s33、s43、s63、s83和s113。優(yōu)選地,所述響應(yīng)模塊145被配置為在所述請求接收模塊141接收到所述非阻塞請求、所述資源創(chuàng)建模塊142創(chuàng)建了請求資源并創(chuàng)建了資源索引req-ref、并且所述時間預(yù)估模塊143確定了所述執(zhí)行完成預(yù)估時間之后,將所創(chuàng)建的資源索引req-ref與所述執(zhí)行完成預(yù)估時間一起發(fā)送給所述請求方,并且相應(yīng)地執(zhí)行根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理方法的步驟s43、s63、s83和s113。

此外,所述響應(yīng)模塊145還被配置為在所述請求接收模塊141接收到執(zhí)行結(jié)果獲取請求并且所述請求執(zhí)行模塊144執(zhí)行完成所述非阻塞請求之后, 將對所述非阻塞請求的執(zhí)行結(jié)果發(fā)送給所述請求方,并且相應(yīng)地執(zhí)行根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理方法的步驟s46、s66、s86和s116。

下面,將參考圖15來描述根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理設(shè)備,該非阻塞請求處理設(shè)備在非阻塞請求的請求方實(shí)現(xiàn)。

根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理設(shè)備包括通信模塊151、處理器152和存儲器153。

通信模塊151被配置為與外部進(jìn)行數(shù)據(jù)通信,以便向接收方發(fā)送各種請求并從接收方接收各種響應(yīng),例如向接收方發(fā)送非阻塞請求,從接收方接收請求接收響應(yīng),向接收方發(fā)送執(zhí)行結(jié)果獲取請求,并從接收方接收執(zhí)行結(jié)果響應(yīng)。

存儲器133被配置為存儲程序指令。

處理器132被配置為執(zhí)行在存儲器中存儲的程序指令以執(zhí)行如上所述的根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理方法,并且可以實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理裝置。

下面,將參考圖16來描述根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理裝置,該非阻塞請求處理裝置在非阻塞請求的請求方實(shí)現(xiàn)。

所述非阻塞請求處理裝置可以包括請求發(fā)送模塊161、定時器162、以及響應(yīng)接收模塊163。

所述請求發(fā)送模塊161被配置為向接收方發(fā)送非阻塞請求。

所述響應(yīng)接收模塊163被配置為從接收方接收所述非阻塞請求的執(zhí)行完成預(yù)估時間。

所述定時器162被配置為對所述執(zhí)行完成預(yù)估時間進(jìn)行計時。

在所述定時器162對所述執(zhí)行完成預(yù)估時間計時完畢時,所述請求發(fā)送模塊161向接收方發(fā)送執(zhí)行結(jié)果獲取請求。然后,所述響應(yīng)接收模塊163從所述接收方接收所述非阻塞請求的執(zhí)行結(jié)果。

根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理設(shè)備和非阻塞請求處理裝置,通過在接收到非阻塞請求后估計該非阻塞請求的執(zhí)行完成預(yù)估時間并將所估計的執(zhí)行完成預(yù)估時間發(fā)送給所述請求方,使得所述請求方能夠大致了解該非阻塞請求的預(yù)計執(zhí)行完成時間,避免了所述請求方不斷發(fā)送執(zhí)行結(jié)果獲取請求嘗試獲取執(zhí)行結(jié)果的情況。具體地,請求方可以在發(fā)送非阻塞請求之后,先等待所述執(zhí)行完成預(yù)估時間,然后再向接收方發(fā)送所述執(zhí)行結(jié)果獲取請求, 從而避免了所述請求方不斷發(fā)送執(zhí)行結(jié)果獲取請求嘗試獲取執(zhí)行結(jié)果的情況,并且降低了由于頻繁的執(zhí)行結(jié)果獲取請求所引起的請求方和接收方的工作負(fù)荷和設(shè)備功耗。

此外,根據(jù)本發(fā)明實(shí)施例,還提供一種計算機(jī)可讀存儲介質(zhì),其上記錄了計算機(jī)程序代碼,在所述計算機(jī)程序代碼被計算機(jī)或處理器運(yùn)行時,實(shí)現(xiàn)如上所述的根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理裝置并執(zhí)行如上所述的根據(jù)本發(fā)明實(shí)施例的非阻塞請求處理方法。

在上面詳細(xì)描述了本發(fā)明的各個實(shí)施例。然而,本領(lǐng)域技術(shù)人員應(yīng)該理解,在不脫離本發(fā)明的原理和精神的情況下,可對這些實(shí)施例進(jìn)行各種修改,組合或子組合,并且這樣的修改應(yīng)落入本發(fā)明的范圍內(nèi)。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1