• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    復雜任務的并行處理方法和裝置制造方法及圖紙

    技術編號:8532482 閱讀:168 留言:0更新日期:2013-04-04 15:16
    本發明專利技術公開了一種復雜任務的并行處理方法和裝置。所述方法包括:請求處理單元將接收到的客戶端請求分解為多個無依賴關系的子任務,并將每一個子任務均發送給一個獨立的工作單元進行處理;請求處理單元接收各個工作單元返回的成功處理結果或失敗處理結果;當在預定時間段內接收到所有子任務的成功處理結果時,請求處理單元將所有的成功處理結果進行合并操作后發送給相應的客戶端;而當有至少一個子任務未在預定時間段內返回成功處理結果時,請求處理單元中斷所有未完成的子任務的處理,并對已完成的需要進行回滾操作的子任務進行回滾操作。本發明專利技術可以有效地提高單個請求的響應速度,降低響應時間,提高服務器側的資源使用效率。

    【技術實現步驟摘要】

    本專利技術涉及計算機
    ,特別涉及一種復雜任務的并行處理方法和裝置
    技術介紹
    在現有的軟件系統中,客戶端(Client) /服務器(Server)模式的使用十分廣泛。在該模式中,一般都是由Client提交請求,然后Client等待Server返回結果;Server接收到Client的請求后,根據該請求進行相應的處理,然后將處理結果返回給Client。由于一個Server —般可以連接多個Client,因此Server端通常被設計為可同時處理多個并發的請求,所有同時到達的請求可以互相不受干擾的進行并行處理;而在很多關鍵的重要應用中,客戶端對于請求的響應時間也有一定的要求。隨著各種實際應用的復雜度的增加、并發用戶數量的不斷提高以及所需處理的數據類型的逐步擴展,Client/Server模式的設計也出現了很多進化。目前,常用的Client/Server模式有以下的幾種模式1、分層模式將原來單一的Server端分為多個中間層,每一層功能定義明確,如接口層、業務邏輯層、數據服務層等。其中,所述的分層可以是邏輯分層或物理分層。2、緩存技術將經常訪問的數據緩存儲起來以備后續步驟中重復使用。3、分布式技術將處理或計算分布到多個節點進行,以提高可擴展性。4、異步處理模式為了解決請求過于復雜、處理時間長和不可控的問題,Client被設計為提交請求后即返回,而不等待處理結果;而Server端則在處理完畢后將以某種方式通知Client。然而,在現有技術中的Client/Server模式的實現方式中,對于單個請求的處理機制上沒有太多的實現方式,通常情況下都是將單個請求進行串行處理,并使用分層模式進行負載均衡,使用緩存技術提高訪問速度。而如果同步方式無法滿足限定時間內的處理,則將使用復雜的異步處理模式。因此,對于復雜的請求處理時,如果Client/Server模式中采用同步模式,則將造成處理緩慢的問題,導致用戶的體驗度不佳。而且,如果不能在限定時限內完成相應的處理,則可能會造成請求處理能力的下降。雖然在現有的復雜任務處理方法中使用了緩存技術來提高數據訪問的效率,但對于關鍵任務的作用卻并不大。而且,雖然通過使用分布式技術進行線性擴展系統負載以解決高并發、海量數據的問題,但上述分布式技術對于單個請求反而會降低響應速度。此外,如果在Client/Server模式中采用異步處理模式,則會極大地增加整個系統設計的復雜度,從而不利于具體實現及擴展。綜上可知,由于現有技術中的復雜任務的處理方法具有如上所述的缺點,因此在對復雜任務進行處理時,如何有效提高單個請求的響應速度、降低響應時間和提高服務器側的資源使用效率,已經是本領域中亟需解決的問題。
    技術實現思路
    根據本專利技術,提供了一種復雜任務的并行處理方法和裝置,從而可有效地提高單個請求的響應速度,降低響應時間,提高服務器側的資源使用效率。根據本專利技術的一種復雜任務的并行處理方法,其包括A、請求處理單元將接收到的客戶端請求分解為多個無依賴關系的子任務,并將每一個子任務均發送給一個獨立的工作單元進行處理;B、請求處理單元接收各個工作單元返回的成功處理結果或失敗處理結果;C、當在預定時間段內接收到所有子任務的成功處理結果時,請求處理單元將所有的成功處理結果進行合并操作后發送給相應的客戶端;而當有至少一個子任務未在預定時間段內返回成功處理結果時,請求處理單元中斷所有未完成的子任務的處理,并對已完成的需要進行回滾操作的子任務進行回滾操作。其中,所述步驟A包括請求處理單元從接收到的客戶端請求中獲取所需服務的參數;為所述客戶端請求生成一個全局唯一的流水號;根據所述客戶端請求涉及的服務調用,按預定義規則將所述客戶端請求分解為多個無依賴關系的子任務;在各個子任務之中綁定與各子任務相關的參數。其中,所述在各個子任務之中綁定與各子任務相關的參數包括將與各子任務相關的參數與相應的子任務綁定,形成相應的閉包對象;其中,所述閉包對象中包括調用方法和調用方法所需參數的對象。其中,所述與各子任務相關的參數中還可進一步包括子任務所屬的客戶端請求的流水號。其中,所述步驟B還進一步包括當工作單元向請求處理單元返回成功處理結果時,所述工作單元將其所處理的子任務標識為已完成。其中,所述步驟B還進一步包括當所述已完成的子任務為質變操作時,工作單元根據所述已完成的子任務所屬客戶端請求的流水號,在預設的回滾執行條目中記錄該已完成的子任務;其中,所述質變操作為更改狀態的操作或寫入數據的操作。其中,預先設置一個初始值為O的觸發變量,則所述步驟B還進一步包括當請求處理單元接收到一個工作單元返回的成功處理結果時,所述請求處理單元將所述觸發變量的值增加一。其中,所述步驟C包括Cl、當預設的定時器超時時,執行步驟C5 ;否則,執行步驟C2 ;其中,所述定時器的定時時長等于預先設置的預定時間段的長度;C2、當接收到的處理結果為成功處理結果時,執行步驟C3 ;否則,執行步驟C5 ;C3、當所有子任務均已被成功處理時,執行步驟C4 ;否則,返回執行步驟B ;C4、將所有的處理結果進行合并操作后發送給相應的客戶端,結束流程;C5、中斷所有未完成的子任務的處理,并對所有已完成的子任務進行回滾操作。其中,該方法還進一步包括當預設的定時器超時時,請求處理單元向客戶端返回處理超時的信息。其中,該方法還進一步包括當接收到的處理結果不是成功處理結果時,請求處理單元向客戶端返回處理失敗的信息。其中,判斷所有子任務均已被成功處理的方法為判斷所述觸發變量的值是否等于所有子任務的總數目;如果是,則所有子任務均已被成功處理;否則,至少有一個子任務仍未被成功處理。其中,所述步驟C4還進一步包括刪除與所述客戶端請求的流水號相對應的回滾執行條目。其中,所述刪除與所述客戶端請求的流水號相對應的回滾執行條目包括請求處理單元可向預先設置的垃圾收集單元發送丟棄指令,所述丟棄指令中攜帶有客戶端請求的流水號;所述垃圾收集單元根據所述丟棄指令刪除與所述流水號相對應的回滾執行條目。其中,所述對所有已完成的子任務進行回滾操作包括對與所述客戶端請求的流水號相對應的回滾執行條目中存儲的所有子任務進行回滾操作。其中,所述對與所述客戶端請求的流水號相對應的回滾執行條目中存儲的所有子任務進行回滾操作包括請求處理單元向預先設置的垃圾收集單元發送執行指令,所述執行指令中攜帶有客戶端請求的流水號;所述垃圾收集單元根據所述執行指令對與所述流水號相對應的回滾執行條目中存儲的所有子任務進行回滾操作。其中,所述中斷所有未完成的子任務的處理包括向所有未完成的子任務所對應的工作單元發送中斷指令;所述工作單元根據接收到的中斷指令中斷對未完成的子任務的處理。本專利技術實施例中還提供了一種復雜任務的并行處理裝置,其包括請求處理單元、垃圾收集單元和多個工作單元;所述請求處理單元,用于將接收到的客戶端請求分解為多個無依賴關系的子任務,并將每一個子任務均發送給一個獨立的工作單元;還用于接收各個工作單元返回的成功處理結果或失敗處理結果,并當在預定時間段內接收到所有子任務的成功處理結果時,將所有的成功處理結果進行合并操作后發送給相應的客戶端;當有至少一個子任務未在預定時間段內返回成功處理結果時,向所有未完成的子任務所對應的工作單元發送中斷指令本文檔來自技高網
    ...

    【技術保護點】
    一種復雜任務的并行處理方法,所述方法包括:A、請求處理單元將接收到的客戶端請求分解為多個無依賴關系的子任務,并將每一個子任務均發送給一個獨立的工作單元進行處理;B、請求處理單元接收各個工作單元返回的成功處理結果或失敗處理結果;C、當在預定時間段內接收到所有子任務的成功處理結果時,請求處理單元將所有的成功處理結果進行合并操作后發送給相應的客戶端;而當有至少一個子任務未在預定時間段內返回成功處理結果時,請求處理單元中斷所有未完成的子任務的處理,并對已完成的需要進行回滾操作的子任務進行回滾操作。

    【技術特征摘要】
    1.一種復雜任務的并行處理方法,所述方法包括A、請求處理單元將接收到的客戶端請求分解為多個無依賴關系的子任務,并將每一個子任務均發送給一個獨立的工作單元進行處理;B、請求處理單元接收各個工作單元返回的成功處理結果或失敗處理結果;C、當在預定時間段內接收到所有子任務的成功處理結果時,請求處理單元將所有的成功處理結果進行合并操作后發送給相應的客戶端;而當有至少一個子任務未在預定時間段內返回成功處理結果時,請求處理單元中斷所有未完成的子任務的處理,并對已完成的需要進行回滾操作的子任務進行回滾操作。2.如權利要求1所述的復雜任務的并行處理方法,其中,所述步驟A包括請求處理單元從接收到的客戶端請求中獲取所需服務的參數;為所述客戶端請求生成一個全局唯一的流水號;根據所述客戶端請求涉及的服務調用,按預定義規則將所述客戶端請求分解為多個無依賴關系的子任務;在各個子任務之中綁定與各子任務相關的參數;和所述在各個子任務之中綁定與各子任務相關的參數包括將與各子任務相關的參數與相應的子任務綁定,形成相應的閉包對象;其中,所述閉包對象中包括調用方法和調用方法所需參數的對象。3.如權利要求1所述的復雜任務的并行處理方法,其中,所述步驟B還進一步包括 當工作單元向請求處理單元返回成功處理結果時,所述工作單元將其所處理的子任務標識為已完成;當所述已完成的子任務為質變操作時,工作單元根據所述已完成的子任務所屬客戶端請求的流水號,在預設的回滾執行條目中記錄該已完成的子任務;其中,所述質變操作為更改狀態的操作或寫入數據的操作。4.如權利要求3所述的復雜任務的并行處理方法,其中,預先設置一個初始值為O的觸發變量,則所述步驟B還進一步包括當請求處理單元接收到一個工作單元返回的成功處理結果時,所述請求處理單元將所述觸發變量的值增加一;所述步驟C包括Cl、當預設的定時器超時時,執行步驟C5 ;否則,執行步驟C2 ;其中,所述定時器的定時時長等于預先設置的預定時間段的長度;C2、當接收到的處理結果為成功處理結果時,執行步驟C3 ;否則,執行步驟C5 ;C3、當所有子任務均已被成功處理時,執行步驟C4 ;否則,返回執行步驟B ;C4、將所有的處理結果進行合并操作后發送給相應的客戶端,結束流程;C5、中斷所有未完成的子任務的處理,并對所有已完成的子任務進行回滾操作。5.如權利要求4所述的復雜任務的并行處理方法,其中,所述方法還進一步包括當預設的定時器超時時,請求處理單元向客戶端返回處理超時的信息;當接收到的處理結果不是成功處理結果時,請求處理單...

    【專利技術屬性】
    技術研發人員:紀震寰
    申請(專利權)人:青島海信傳媒網絡技術有限公司
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 18禁无遮挡无码国产免费网站 | 本道久久综合无码中文字幕| 亚洲av中文无码乱人伦在线播放| 无码人妻一区二区三区在线| 亚洲精品无码日韩国产不卡av| 久久久人妻精品无码一区| 无码性午夜视频在线观看| 无码中文av有码中文a| 久久久久亚洲AV成人无码| 曰韩无码无遮挡A级毛片| 久久亚洲精品无码AV红樱桃| 亚洲国产精品成人AV无码久久综合影院 | 午夜精品久久久久久久无码| 日韩人妻无码精品一专区| 一本色道无码道在线| 一本大道在线无码一区| 无码久久精品国产亚洲Av影片| 无翼乌工口肉肉无遮挡无码18| 久久精品无码一区二区WWW| 国模吧无码一区二区三区| 国产乱人伦中文无无码视频试看| 无码毛片视频一区二区本码 | 无码人妻精品一区二区三区在线| 国产午夜无码福利在线看网站| 亚洲av日韩av无码av| 无码国产精品一区二区免费模式| 久久人妻少妇嫩草AV无码蜜桃 | 国产丰满乱子伦无码专区| 国产免费午夜a无码v视频| 日韩av无码国产精品| 无码不卡av东京热毛片| 日韩精品无码一区二区三区不卡| 亚洲成a人片在线观看无码专区| 亚洲午夜无码AV毛片久久| 亚洲?V无码乱码国产精品| yy111111少妇影院无码| 国产麻豆天美果冻无码视频| 国产精品一级毛片无码视频| 精品亚洲成α人无码成α在线观看 | 久久久久成人精品无码| 精品久久久久久无码人妻热|