TW201732692A - 檢查分布式業務處理完整度的方法及裝置 - Google Patents

檢查分布式業務處理完整度的方法及裝置 Download PDF

Info

Publication number
TW201732692A
TW201732692A TW105143943A TW105143943A TW201732692A TW 201732692 A TW201732692 A TW 201732692A TW 105143943 A TW105143943 A TW 105143943A TW 105143943 A TW105143943 A TW 105143943A TW 201732692 A TW201732692 A TW 201732692A
Authority
TW
Taiwan
Prior art keywords
service
service subsystem
subsystem
processing
joint identifier
Prior art date
Application number
TW105143943A
Other languages
English (en)
Other versions
TWI662486B (zh
Inventor
fang-yu Dou
Original Assignee
Alibaba Group Services Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Services Ltd filed Critical Alibaba Group Services Ltd
Publication of TW201732692A publication Critical patent/TW201732692A/zh
Application granted granted Critical
Publication of TWI662486B publication Critical patent/TWI662486B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5019Ensuring fulfilment of SLA
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • Computer And Data Communications (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Hardware Redundancy (AREA)

Abstract

本發明實施例公開了一種檢查分散式業務處理完整度的方法和裝置。一種方法,對於入口業務子系統需要傳遞至的每一第一級業務子系統,產生入口業務子系統與第一級業務子系統的聯合標識,並做互斥或處理,得到第一檢驗值;對於每一普通業務子系統,在完成處理後記錄上級業務子系統傳遞的聯合標識;產生該普通業務子系統與傳遞至的下級業務子系統的聯合標識;將記錄的聯合標識與產生的聯合標識及第一校驗值做互斥或處理,並更新第一校驗值;每一葉子業務子系統在完成處理後記錄上級業務子系統傳遞的聯合標識;將記錄的聯合標識與第一校驗值做互斥或處理,並更新第一校驗值。利用上述實施例,可以實現用較少的空間儲存分散式系統的業務處理情況。

Description

檢查分布式業務處理完整度的方法及裝置
本發明關於分散式業務技術領域,特別關於一種檢查分散式業務處理完整度的方法及裝置。
分散式業務系統能以更加靈活、高效的處理業務。
通過分散式業務系統的處理,可以將傳統的系統拆分為一系列相對獨立,又能基於業務的關聯關係相連的子系統,從而並行且協調完成業務的整體處理。例如目前的電商平臺(如支付寶系統)、當地語系化搜索服務平臺(如58同城)、會員註冊行銷系統等,都可以以分散式業務系統來靈活處理各類業務。
以會員註冊行銷系統為例,針對會員註冊行銷業務涉及的各個功能,可以包括不同的業務子系統,例如包括:註冊頁面系統A、會員註冊系統B、APP推送系統C、認證關聯系統D、行銷系統E、短信系統H、郵件系統I。如圖1所示,整體業務可以按照上述業務子系統拆分,並按照拆分後業務的內在關聯關係執行以下處理:
S1:註冊頁面系統A接收會員註冊行銷請求(假設 該請求的業務流水號為No.001);該會員註冊行銷請求,可以是前臺伺服器接收到用戶端發送的註冊請求後向分散式業務系統中的註冊頁面系統A發送的會員註冊行銷請求。
S2:註冊頁面系統A解析該會員註冊行銷請求對應的會員註冊相關資料,進行相應業務處理;並確定該會員註冊行銷請求對應的會員註冊相關資料如果符合業務條件1,則將該會員註冊行銷請求對應的會員註冊相關資料發送至業務條件1對應的會員註冊系統B,如果符合業務條件2,則將該資料發送至業務條件2對應的APP推送系統C;這裡,業務條件1例如為新註冊,業務條件2例如為通過手機註冊。
S3:會員註冊系統B解析該會員註冊行銷請求對應的會員註冊相關資料,進行相應業務處理;並確定該解析得到的該會員註冊行銷請求對應的會員註冊相關資料如果符合業務條件3,則將該資料發送至認證關聯系統D,如果符合業務條件4,則將該資料發送至行銷系統E;
S4:認證關聯系統D基於接收到的該資料進行相應業務處理;
S5:行銷系統E解析該會員註冊行銷請求對應的會員註冊相關資料,進行相應業務處理;並確定該解析該會員註冊行銷請求對應的會員註冊相關資料如果符合業務條件5,則將該資料發送至短信系統H,如果符合業務條件6, 則將該資料發送至郵件系統I;
S6:短信系統H和郵件系統I分別基於接收到的資料進行相應業務處理。
短信系統H和郵件系統I分別基於接收到的資料進行相應業務處理,可以完成行銷任務。
在多個子系統協同完成一次業務時,由於業務約束(如紅包不符合使用條件、帳戶餘額不足等)、系統故障(如網路或系統超時或中斷、資料庫約束不滿足等)等因素,都可能造成分散式業務處理過程的中斷。這種中斷會導致執行了部分任務的資料與其它資料的不一致,而這種不一致可能對後續業務產生嚴重後果。因此,為了保障資料的一致性,需要檢查分散式任務的處理完整度。
現有技術中檢查分散式任務的處理完整度的一種方法,是將每個業務子系統的業務處理結果記錄在表格中,這種表格如表1:
上述方式儲存的資料量較大。特別是對於目前大型的互聯網業務,一個業務很有可能觸發幾十個子系統進行不 同的子業務的處理。那麼對於一條業務流水來說,可能需要一個記錄幾十條資料的表格,儲存量較大。
本發明實施例的目的是提供一種檢查分散式業務處理完整度的方法及裝置,以減少資料儲存量。
為解決上述技術問題,本發明實施例提供一種檢查分散式業務處理完整度的方法及裝置是這樣實現的:一種檢查分散式業務處理完整度的方法,分散式業務系統接收業務請求並按照業務條件將該業務逐級傳遞至後續業務子系統;監控分散式系統中各業務子系統的業務處理狀態,並包括:當入口業務子系統接收到業務請求並需要傳遞至第一級業務子系統時,對於需要傳遞至的每一第一級業務子系統,產生入口業務子系統與第一級業務子系統的聯合標識,並將產生的該聯合標識做互斥或處理,得到第一檢驗值;對於每一普通業務子系統,在完成處理後記錄上級業務子系統傳遞的聯合標識;對於普通業務子系統傳遞至的每一下級業務子系統,產生該普通業務子系統與傳遞至的下級業務子系統的聯合標識;每一普通業務子系統將記錄的聯合標識與產生的聯合標識及第一校驗值做互斥或處理,並更新第一校驗值;對於每一葉子業務子系統,在完成處理後記錄上級業 務子系統傳遞的聯合標識;每一葉子業務子系統將記錄的聯合標識與第一校驗值做互斥或處理,並更新第一校驗值。
一種分散式業務處理的完整度檢查裝置,分散式業務系統接收業務請求並按照業務條件將該業務逐級傳遞至後續業務子系統,包括:監控單元,用於監控該分散式系統中各業務子系統的業務處理狀態;第一產生單元,當入口業務子系統接收到業務請求並需要傳遞至第一級業務子系統時,對於需要傳遞至的每一第一級業務子系統,產生入口業務子系統與第一級業務子系統的聯合標識;第一互斥或單元,用於將第一產生單元產生的該聯合標識做互斥或處理,得到第一檢驗值;記錄單元,對於每一業務子系統,在完成處理後記錄上級業務子系統傳遞的聯合標識;第二產生單元,對於普通業務子系統傳遞至的每一下級業務子系統,產生該普通業務子系統與傳遞至的下級業務子系統的聯合標識;第二互斥或單元,對於每一普通業務子系統,將記錄的聯合標識與產生的聯合標識及第一校驗值做互斥或處理,並更新第一校驗值;對每一葉子業務子系統,將記錄的聯合標識與第一校驗值做互斥或處理,並更新第一校驗值。
一種檢查分散式業務處理完整度的方法,分散式系統中任一業務子系統傳遞業務請求至下一級業務子系統時,產生本業務子系統與傳遞至的下一級業務子系統的聯合標識;當分散式系統中任一業務子系統在完成處理後,記錄上一級業務子系統傳遞至該業務子系統的聯合標識;且包括:對於入口業務子系統,對該業務子系統中產生的聯合標識進行互斥或處理得到檢驗值;對於入口業務子系統之外的每一級業務子系統,對該級業務子系統中記錄的聯合標識及產生的聯合標識與上一級業務子系統的檢驗值進行互斥或處理;得到最終的檢驗值。
一種分散式業務處理的完整度檢查裝置,包括:第三產生單元,分散式系統中任一業務子系統傳遞業務請求至下一級業務子系統時,產生本業務子系統與傳遞至的下一級業務子系統的聯合標識;記錄單元,當分散式系統中任一業務子系統在完成處理後,記錄上一級業務子系統傳遞至該業務子系統的聯合標識;第三互斥或單元,對於入口業務子系統,對該業務子系統中產生的聯合標識進行互斥或處理得到檢驗值;第四互斥或單元,對於入口業務子系統之外的每一級業務子系統,對該級業務子系統中記錄的聯合標識及產生的聯合標識與上一級業務子系統的檢驗值進行互斥或處 理;得到最終的檢驗值。
一種檢查分散式業務處理完整度的方法,分散式系統中每一業務子系統傳遞業務請求至下一級業務子系統時,產生本業務子系統與傳遞至的下一級業務子系統的聯合標識;當分散式系統中每一業務子系統在完成處理後,記錄上一級業務子系統傳遞的聯合標識;且包括:將每一業務子系統中記錄的聯合標識及產生的聯合標識進行互斥或處理,得到最終的檢驗值。
一種分散式業務處理的完整度檢查裝置,包括:第四產生單元,分散式系統中每一業務子系統傳遞業務請求至下一級業務子系統時,產生本業務子系統與傳遞至的下一級業務子系統的聯合標識;記錄單元,當分散式系統中任一業務子系統在完成處理後,記錄上一級業務子系統傳遞至該業務子系統的聯合標識;第七互斥或單元,將每一業務子系統中記錄的聯合標識及產生的聯合標識進行互斥或處理,得到最終的檢驗值。
由以上本發明各實施例提供的技術方案可見,本發明實施例不需要像現有技術那樣通過龐大的表格記錄每個業務子系統,而是通過所述規則進行互斥或運算,能夠用較少的空間儲存分散式系統的業務處理情況。
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的圖式作簡單地介紹,顯而易見地,下面描述中的圖式僅僅是本發明中記載的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些圖式獲得其他的圖式。
圖1為現有技術一種檢查分散式業務處理完整度的方法的示意圖;圖2為本發明一實施例提供的一種檢查分散式業務處理完整度的架構圖;圖3為本發明一實施例提供的一種檢查分散式業務處理完整度方法的流程圖。
本發明實施例提供一種檢查分散式業務處理完整度的方法及裝置。
為了使本技術領域的人員更好地理解本發明中的技術方案,下面將結合本發明實施例中的圖式,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都應當屬於本發明保護的範圍。
本發明給出了一種檢查分散式業務處理完整度的方法實施例。下面結合圖2和圖3詳細描述本發明實施例。圖2所示的註冊頁面系統A可以為入口業務子系統。分散式系統中,入口業務子系統可以連接第一級業務子系統;第一級業務子系統中可以包括與入口業務子系統存在業務連接關係的一個或多個業務子系統。類似的,第一級業務子系統可以連接第二級業務子系統;第二級業務子系統可以包括與第一級業務子系統存在業務連接關係的一個或多個業務子系統。類似的,第二級業務子系統可以連接第三級業務子系統;第三級業務子系統可以包括與第二級業務子系統存在業務連接關係的一個或多個業務子系統;等等。圖2所示的分散式系統中包括一個入口業務子系統,第一級業務子系統,第二級業務子系統和第三級業務子系統。本領域技術人員知道,不同的分散式系統中,可以包括相同、更多或更少的業務子系統層級,例如包括五級業務子系統。這裡僅僅是舉例而並不做限定。
上述分散式系統中,除了入口業務子系統外,第一級至第n級業務子系統可以設置普通業務子系統和葉子業務子系統。該普通業務子系統,可以與上級業務子系統存在業務連接,且與下一級業務子系統存在業務連接。該葉子業務子系統,可以僅與上級業務子系統存在業務連接,而不存在有業務連接的下一級業務子系統。
如圖2中,第一級業務子系統中的會員註冊系統B即是普通業務子系統,APP推送系統C即是葉子業務子系 統;第二級業務子系統中的認證關聯系統D為葉子業務子系統,行銷系統E是普通業務子系統;第三級業務子系統中的短信系統H和郵件系統I均是葉子業務子系統。
系統P所在框內表示另一分散式系統。通常,對於提供綜合業務的網路服務提供商,可以具有多個分散式業務系統,以處理不同的業務。
本發明一種檢查分散式業務處理完整度的方法實施例,流程可以如圖3所示,包括:
S310:分散式業務系統接收業務請求並按照業務條件將該業務逐級傳遞至後續業務子系統。
例如圖2所示,一分散式業務系統包括註冊頁面系統A,會員註冊系統B,APP推送系統C,認證關聯系統D,行銷系統E,短信系統H,郵件系統I。整體業務可以按照上述業務子系統拆分,並按照拆分後業務的內在關聯關係執行以下處理:
S1:註冊頁面系統A接收會員註冊行銷請求(假設該請求的業務流水號為No.001);該會員註冊行銷請求,可以是前臺伺服器接收到用戶端發送的註冊請求後向分散式業務系統中的註冊頁面系統A發送的會員註冊行銷請求。
S2:註冊頁面系統A解析該會員註冊行銷請求對應的會員註冊相關資料,進行相應業務處理;並確定該會員註冊行銷請求對應的會員註冊相關資料如果符合業務條件1,則將該會員註冊行銷請求對應的會員註冊相關資料發 送至業務條件1對應的會員註冊系統B,如果符合業務條件2,則將該資料發送至業務條件2對應的APP推送系統C;這裡,業務條件1例如為新註冊,業務條件2例如為通過手機註冊。
S3:會員註冊系統B解析該會員註冊行銷請求對應的會員註冊相關資料,進行相應業務處理;並確定該解析得到的該會員註冊行銷請求對應的會員註冊相關資料如果符合業務條件3,則將該資料發送至認證關聯系統D,如果符合業務條件4,則將該資料發送至行銷系統E;
S4:認證關聯系統D基於接收到的該資料進行相應業務處理;
S5:行銷系統E解析該會員註冊行銷請求對應的會員註冊相關資料,進行相應業務處理;並確定該解析該會員註冊行銷請求對應的會員註冊相關資料如果符合業務條件5,則將該資料發送至短信系統H,如果符合業務條件6,則將該資料發送至郵件系統I;
S6:短信系統H和郵件系統I分別基於接收到的資料進行相應業務處理。
短信系統H和郵件系統I分別基於接收到的資料進行相應業務處理,可以完成行銷任務。
上述過程中:註冊頁面系統A為入口業務子系統;會員註冊系統B,APP推送系統C,行銷系統E為中間業務子系統;認證關聯系統D,短信系統H,郵件系統I為葉 子業務子系統。其中,會員註冊系統B和APP推送系統C為第一級業務子系統;認證關聯系統D和行銷系統E為第二級業務子系統;短信系統H和郵件系統I為第三級業務子系統。
S320:當入口業務子系統接收到業務請求並需要傳遞至第一級業務子系統時,對於需要傳遞至的每一第一級業務子系統,產生入口業務子系統與第一級業務子系統的聯合標識,並將產生的該聯合標識做互斥或處理,得到第一檢驗值。
這裡,為了便於理解,分散式業務系統例如為會員行銷系統,則入口業務子系統例如為註冊頁面系統A,相應地,業務處理請求例如為會員註冊行銷請求。
另外,該業務請求可以具有業務流水號,例如為No.001。
該入口業務子系統接收到業務請求之後,可以對業務請求進行處理,並可以按照預設業務條件將相關資料傳遞至第一級業務子系統。這裡的第一級業務子系統例如為圖2中所示的會員註冊系統B和APP推送系統C。
對於需要傳遞至的每一第一級業務子系統,產生入口業務子系統與每一第一級業務子系統的聯合標識。例如,對於會員註冊系統B,可以產生入口業務子系統與第一級業務子系統的聯合標識,即產生註冊頁面系統A與會員註冊系統B的聯合標識,例如為tokenAB;對於APP推送系統C,可以產生入口業務子系統與第一級業務子系統的 聯合標識,即產生註冊頁面系統A與APP推送系統C的聯合標識,例如為tokenAC。
對入口業務子系統與每一第一級業務子系統的聯合標識做互斥或處理,得到第一檢驗值。
數學計算中的互斥或處理規則如下:a ⊕ a=0
a ⊕ 0=a
a ⊕ (b ⊕ c)=(a ⊕ b) ⊕ c
即一個數與它自身互斥或結果為0,同時互斥或運算子滿足結合律。
例如,將上述會員註冊系統B和APP推送系統C產生的聯合標識tokenAB和tokenAC做互斥或處理,結果為tokenAB ⊕ tokenAC。該tokenAB ⊕ tokenAC即為第一檢驗值。
需要說明的是,如果需要傳遞至的每一第一級業務子系統僅包括一個第一級業務子系統,比如說,圖2的例子中,在僅滿足條件1時,需要傳遞至的第一級業務子系統只包括會員註冊系統B,則此時只會產生註冊頁面系統A與會員註冊系統B的聯合標識tokenAB,此時就不存在互斥或處理的情況。本發明中,S310包括這裡的需要傳遞至的每一第一級業務子系統僅包括一個第一級業務子系統,無需做互斥或處理的情況。
S330:對於每一普通業務子系統,在完成處理後記錄上級業務子系統傳遞的聯合標識;對於普通業務子系統傳 遞至的每一下級業務子系統,產生該普通業務子系統與傳遞至的下級業務子系統的聯合標識;每一普通業務子系統將記錄的聯合標識與產生的聯合標識及第一校驗值做互斥或處理,並更新第一校驗值;對於每一葉子業務子系統,在完成處理後記錄上級業務子系統傳遞的聯合標識;每一葉子業務子系統將記錄的聯合標識與第一校驗值做互斥或處理,並更新第一校驗值。
S320之後,入口業務子系統可以將產生的聯合標識傳遞至對應的第一級業務子系統。結合圖2即註冊頁面系統A將產生的聯合標識tokenAB傳遞至會員註冊系統B,將產生的聯合標識tokenAC傳遞至APP推送系統C。相應地,第一級業務子系統可以接收傳遞的聯合標識。可以在第一級業務子系統完成處理後記錄每一第一級業務子系統接收的上級業務子系統傳遞的聯合標識。類似的,對於同一級中的業務子系統,可以在完成處理後記錄上級業務子系統傳遞的聯合標識。
仍然結合圖2,對於每一第一級業務子系統記錄上級業務子系統傳遞的聯合標識,即對於會員註冊系統B和APP推送系統C,在完成對應的處理後,可以分別記錄上級業務子系統分別傳遞的聯合標識tokenAB和tokenAC。
對於普通業務子系統,其在業務處理完成後需要傳遞至的每一下級子系統,產生該普通業務子系統與傳遞至的下級業務子系統的聯合標識。該普通業務子系統在業務處理完成後需要傳遞至的每一下級子系統,具體可以是:該 第一級業務子系統在業務處理完成後按照預設規則需要傳遞至的每一下級子系統。
結合圖2,例如,會員註冊系統B為普通業務子系統,其解析該會員註冊行銷請求對應的會員註冊相關資料,進行相應業務處理;並確定該解析得到的該會員註冊行銷請求對應的會員註冊相關資料如果符合條件3,則將該資料發送至認證關聯系統D,如果符合條件4,則將該資料發送至行銷系統E。這樣,對於認證關聯系統D,可以產生會員註冊系統B與認證關聯系統D的聯合標識tokenBD;對於行銷系統E,可以產生會員註冊系統B與行銷系統E的聯合標識tokenBE。
每一普通業務子系統可以將記錄的聯合標識與產生的聯合標識及第一校驗值做互斥或處理,並更新第一校驗值。例如,會員註冊系統B在完成對應的處理後,記錄了聯合標識tokenAB;會員註冊系統B還產生聯合標識tokenBD和tokenBE。會員註冊系統B可以將記錄的聯合標識與產生的聯合標識及第一校驗值做互斥或處理。具體的,記錄的聯合標識為tokenAB,產生的聯合標識為tokenBD和tokenBE,第一校驗值為tokenAB ⊕ tokenAC;三者互斥或處理結果為:tokenAB ⊕ tokenBD ⊕ tokenBE ⊕ tokenAB ⊕ tokenAC=tokenBD ⊕ tokenBE ⊕ tokenAC。可以將第一校驗值更新為上述互斥或處理的結果。
圖2中,APP推送系統C為葉子業務子系統,因此其在業務處理完成後,記錄上級業務子系統傳遞的聯合標識 tokenAC。每一葉子業務子系統將記錄的聯合標識與第一校驗值做互斥或處理,並更新第一校驗值。具體的,APP推送系統C記錄的聯合標識為tokenAC,此時的第一校驗值為tokenBD ⊕ tokenBE ⊕ tokenAC。兩者互斥或處理為tokenAC ⊕ tokenBD ⊕ tokenBE ⊕ tokenAC=tokenBD ⊕ tokenBE。可以將第一校驗值更新為上述互斥或處理的結果。
對於傳遞至的每一級業務子系統,可以重複上述處理,直至所有業務子系統完成業務處理或處理終止。
結合圖2,對於每一下級業務子系統,例如第二級業務子系統,在完成對應的處理後,可以記錄上級業務子系統傳遞的聯合標識,即記錄認證關聯系統D接收到的tokenBD和行銷系統E接收到的tokenBE。
對於第二級業務子系統的認證關聯系統D和行銷系統E:認證關聯系統D為葉子業務子系統,處理完畢之後不再傳遞至更下一級子系統;行銷系統E為普通業務子系統,處理完畢之後傳遞至更下一級的第二級業務子系統,即短信系統H和郵件系統I,因此產生聯合標識tokenEH和tokenEI。認證關聯系統D將記錄的聯合標識與第一校驗值做互斥或處理,並更新第一校驗值,具體為,tokenBD ⊕ tokenBD ⊕ tokenBE=tokenBE。行銷系統E將記錄的聯合標識與產生的聯合標識及第一校驗值做互斥或處理,並更新第一校驗值,具體為,tokenBE ⊕ tokenEH ⊕ tokenEI ⊕ tokenBE=tokenEH ⊕ tokenEI。
對於第三級業務子系統的短信系統H和郵件系統I,兩者都是葉子業務子系統。短信系統H在完成處理後,可以記錄上級業務子系統傳遞的聯合標識,即記錄行銷系統E傳遞的tokenEH。短信系統H將記錄的聯合標識與產生的聯合標識及第一校驗值做互斥或處理,並更新第一校驗值,具體為tokenEH ⊕ tokenEH ⊕ tokenEI=tokenEI。郵件系統I在完成處理後,可以記錄上級業務子系統傳遞的聯合標識,即記錄行銷系統E傳遞的tokenEI。郵件系統I將記錄的聯合標識與產生的聯合標識及第一校驗值做互斥或處理,並更新第一校驗值,具體為tokenEI ⊕ tokenEI=0。
也就是說,如果一個分散式業務系統中對業務請求完成了所有處理,按照本發明上述實施例的處理方式,最終結果為0。換句話說,按照上述方法得到的最終檢驗值為0表示該分散式業務系統中對業務請求完成了所有處理。
按照上述處理,假設短信系統H並沒有完成處理,則完整度檢查裝置並不記錄短息系統H接收的上級業務子系統傳遞的聯合標識EH,則按照上述處理方式,最終結果為tokenEI ⊕ tokenEH ⊕ tokenEI,即為tokenEH。該結果可以表明該分散式系統終止於短信系統H,可能是沒有將業務傳遞至業務子系統H,也可能是業務子系統H未完成處理。存在的聯合標識tokenEH說明業務子系統E至少已產生與傳遞至的業務子系統H的聯合標識。換句話說,按照上述方法得到的最終檢驗值為聯合標識,如果最終結果為一個聯合標識,則該聯合標識中的後一個對應的業務子系 統未完成業務處理,即該分散式業務系統處理該業務請求終止時停留的業務子系統。
類似的,如果最終結果兩個或更多的聯合標識,則每個聯合標識中的後一個對應的業務子系統皆未完成業務處理。例如,最終結果為tokenEH ⊕ tokenEI,即有兩個聯合標識,第一個聯合標識EH中的後一個H表示業務子系統H未完成業務處理,第二個聯合標識EI中的後一個I表示郵件系統I未完成業務處理。
結合圖2並按照上述處理方式,再例如:(1)註冊頁面系統A產生AB和AC,得到第一檢驗值tokenAB ⊕ tokenAC;(2)會員註冊系統B完成相應處理,則記錄接收的tokenAB,APP註冊系統C完成相應處理,則記錄接收到的tokenAC;會員註冊系統B產生tokenBD和tokenBE,並將產生的tokenBD和tokenBE分別傳遞至認證關聯系統D和行銷系統E;得到第二校驗值tokenAB ⊕ tokenAC ⊕ tokenBD ⊕ tokenBE ⊕ tokenAB ⊕ tokenAC=tokenBD ⊕ tokenBE;(3)假設認證關聯系統D完成處理,則記錄認證關聯系統D接收的上級業務子系統傳遞的聯合標識tokenBD;假設行銷系統E未完成處理,則並不記錄tokenBE;由於行銷系統E未完成處理,也不會產生tokenEH和tokenEI;得到第三校驗值tokenBD ⊕ tokenBD ⊕ tokenBE=tokenBE。
上述結果表明,分散式業務系統業務處理終止於行銷系統E。
相關人員後相關系統在得到該分散式業務系統的處理結果BE後,可以進行相應的後續業務處理,如檢查並排除行銷系統E的故障,或者重啟行銷系統E的業務處理。
上面例子僅示出了具有一個入口業務子系統和三級業務子系統的分散式系統,實際當中的分散式業務系統可能具有數十級甚至上百級的業務子系統。通過本發明實施例提供的方法,不需要像現有技術那樣通過龐大的表格記錄每個業務子系統,而是通過該規則進行互斥或運算,能夠用較少的空間儲存分散式系統的業務處理情況。
此外,現有技術還有一種同步調用的處理方式。現有技術中圖1所示的上級業務子系統對下級業務子系統的所有調用鏈路強制全部修改為同步方式調用。即A系統必須等待C系統和B系統處理完成之後再向上返回業務結果;同理系統B必須等待系統E和系統D處理完成之後再向上返回業務結果;同理系統E必須等待系統H和系統I處理完成之後再返回業務結果。這樣,當其中的某一個階段出現異常,上層調用系統就會感知到。但是,現有技術這種方式採用同步的方式,對於一些非重要的子業務,可以非非同步處理的情況下,也強制同步處理,會拉長整個分散式系統對業務的處理時間,也會降低對用戶端的回應時間,導致用戶體驗的下降,同時還會影響到系統整體的輸送量。
而本發明上述實施例的方案,不需要同步處理也能及時檢查分散式系統的業務處理情況,不會拉長業務的處理時間,也不會影響客戶的體驗,且不會影響系統整體的輸送量。
本發明還提供一種分散式業務處理的完整度檢查裝置實施例,包括:監控單元,用於監控分散式系統中各業務子系統的業務處理狀態;第一產生單元,當入口業務子系統接收到業務請求並傳遞至第一級業務子系統時,對於傳遞至的每一第一級業務子系統,產生入口業務子系統與第一級業務子系統的聯合標識;第一互斥或單元,用於將第一產生單元產生的該聯合標識做互斥或處理,得到第一檢驗值;記錄單元,對於每一業務子系統,在完成處理後記錄上級業務子系統傳遞的聯合標識;第二產生單元,對於業務子系統在業務處理完成後需要傳遞至的每一下級子系統,產生本級子系統與下級子系統的聯合標識;第二互斥或單元,將該記錄單元記錄的聯合標識和第二產生單元產生的聯合標識與上一次得到的檢驗值做互斥或處理,得到新的檢驗值。
優選的,該裝置設置於該分散式系統內或外。
優選的,該業務請求具有流水號。
優選的,該聯合標識包括聯合業務子系統的標識。
優選的,該記錄單元不記錄該沒有完成處理的業務子系統接收的上級業務子系統傳遞的聯合標識。
以下介紹本發明另一檢查分散式業務處理完整度的方法實施例,該實施例中,分散式系統中每一業務子系統傳遞業務請求至下一級業務子系統時,完整度檢查裝置產生本業務子系統與傳遞至的下一級業務子系統的聯合標識;當分散式系統中每一業務子系統在完成處理後,記完整度檢查裝置錄上一級業務子系統傳遞的聯合標識;且包括:對於入口業務子系統,完整度檢查裝置對該業務子系統中產生的聯合標識進行互斥或處理得到檢驗值;對於入口業務子系統之外的每一級業務子系統,完整度檢查裝置對該級業務子系統中記錄的聯合標識及產生的聯合標識與上一級業務子系統的檢驗值進行互斥或處理,得到最終的檢驗值。
特別的,對於最後一級業務子系統,一般都是葉子業務子系統,沒有產生的聯合標識。這種情況,可以認為產生的聯合標識為0,根據前述互斥或運算顧慮,0參與互斥或運算,並不影響運算結果。
本說明書中的各個實施例採用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對於系統實施例而言,由於其基本相似於方法實施例,所以描述的 比較簡單,相關之處參見方法實施例的部分說明即可。
以下介紹本發明另一種分散式業務處理的完整度檢查裝置實施例,包括:第三產生單元,分散式系統中任一業務子系統傳遞業務請求至下一級業務子系統時,產生本業務子系統與傳遞至的下一級業務子系統的聯合標識;記錄單元,當分散式系統中任一業務子系統在完成處理後,記錄上一級業務子系統傳遞至該業務子系統的聯合標識;第三互斥或單元,對於入口業務子系統,對該業務子系統中產生的聯合標識進行互斥或處理得到檢驗值;第四互斥或單元,對於入口業務子系統之外的每一級業務子系統,對該級業務子系統中記錄的聯合標識及產生的聯合標識與上一級業務子系統的檢驗值進行互斥或處理;得到最終的檢驗值。
以下介紹本發明一種檢查分散式業務處理完整度的方法實施例,分散式系統中每一業務子系統傳遞業務請求至下一級業務子系統時,產生本業務子系統與傳遞至的下一級業務子系統的聯合標識;當分散式系統中每一業務子系統在完成處理後,記錄上一級業務子系統傳遞的聯合標識;且包括:將每一業務子系統中記錄的聯合標識及產生的聯合標識進行互斥或處理,得到最終的檢驗值。
仍以圖2為例,本實施例中,可以集中對產生的和傳遞的聯合標識統一做互斥或處理。例如,流水號為No.001的業務請求:在入口業務子系統中產生將要傳遞至下級業務子系統的聯合標識tokenAB和tokenAC;業務子系統B完成處理後,記錄業務子系統B接收的傳遞的聯合標識tokenAB;業務子系統C完成處理後,記錄業務子系統C接收的傳遞的聯合標識tokenAC;業務子系統B產生將要傳遞至下級業務子系統的聯合標識tokenBD和tokenBE;業務子系統D完成處理後,記錄業務子系統D接收的傳遞的聯合標識tokenBD;業務子系統E完成處理後,記錄業務子系統E接收的傳遞的聯合標識tokenBE;業務子系統E產生將要傳遞至下級業務子系統的聯合標識tokenEH和tokenEI;業務子系統H完成處理後,記錄業務子系統H接收的傳遞的聯合標識tokenEH;業務子系統I完成處理後,記錄業務子系統I接收的傳遞的聯合標識tokenEI;假設每一級業務子系統都完成處理,將上述入口業務子系統產生的聯合標識、入口業務子系統之外的每一級業務子系統中記錄的聯合標識及產生的聯合標識進行互斥或 處理,則最終的檢驗結果如下得到:tokenAB ⊕ tokenAC ⊕ tokenAB ⊕ tokenAC ⊕ tokenBD ⊕ tokenBE ⊕ tokenBD ⊕ tokenBE ⊕ tokenEH ⊕ tokenEI ⊕ tokenEH ⊕ tokenEI=0。
類似的,按照上述處理,假設短信系統H並沒有完成處理,則完整度檢查裝置並不記錄短息系統H接收的上級業務子系統傳遞的聯合標識tokenEH,則按照上述處理方式,最終結果為tokenEH。該結果可以表明該分散式系統終止於短信系統H,即業務子系統H未完成處理。
以下介紹本發明一種分散式業務處理的完整度檢查裝置實施例,包括:第四產生單元,分散式系統中每一業務子系統傳遞業務請求至下一級業務子系統時,產生本業務子系統與傳遞至的下一級業務子系統的聯合標識;記錄單元,當分散式系統中任一業務子系統在完成處理後,記錄上一級業務子系統傳遞至該業務子系統的聯合標識;第七互斥或單元,將每一業務子系統中記錄的聯合標識及產生的聯合標識進行互斥或處理,得到最終的檢驗值。
在20世紀90年代,對於一個技術的改進可以很明顯地區分是硬體上的改進(例如,對二極體、電晶體、開關等電路結構的改進)還是軟體上的改進(對於方法流程的改進)。然而,隨著技術的發展,當今的很多方法流程的 改進已經可以視為硬體電路結構的直接改進。設計人員幾乎都通過將改進的方法流程程式設計到硬體電路中來得到相應的硬體電路結構。因此,不能說一個方法流程的改進就不能用硬體實體模組來實現。例如,可程式設計邏輯器件(Programmable Logic Device,PLD)(例如現場可程式設計閘陣列(Field Programmable Gate Array,FPGA))就是這樣一種積體電路,其邏輯功能由使用者對器件程式設計來確定。由設計人員自行程式設計來把一個數位系統“集成”在一片PLD上,而不需要請晶片製造廠商來設計和製作專用的積體電路晶片。而且,如今,取代手工地製作積體電路晶片,這種程式設計也多半改用“邏輯編譯器(logic compiler)”軟體來實現,它與程式開發撰寫時所用的軟體編譯器相類似,而要編譯之前的原始代碼也得用特定的程式設計語言來撰寫,此稱之為硬體描述語言(Hardware Description Language,HDL),而HDL也並非僅有一種,而是有許多種,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language)等,目前最普遍使用的是VHDL(Very-High-Speed Integrated Circuit Hardware Description Language)與Verilog。本領域技術人員也應該清楚,只需要將方法 流程用上述幾種硬體描述語言稍作邏輯程式設計並程式設計到積體電路中,就可以很容易得到實現該邏輯方法流程的硬體電路。
控制器可以按任何適當的方式實現,例如,控制器可以採取例如微處理器或處理器以及儲存可由該(微)處理器執行的電腦可讀程式碼(例如軟體或固件)的電腦可讀介質、邏輯門、開關、專用積體電路(Application Specific Integrated Circuit,ASIC)、可程式設計邏輯控制器和嵌入微控制器的形式,控制器的例子包括但不限於以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,記憶體控制器還可以被實現為記憶體的控制邏輯的一部分。本領域技術人員也知道,除了以純電腦可讀程式碼方式實現控制器以外,完全可以通過將方法步驟進行邏輯程式設計來使得控制器以邏輯門、開關、專用積體電路、可程式設計邏輯控制器和嵌入微控制器等的形式來實現相同功能。因此這種控制器可以被認為是一種硬體部件,而對其內包括的用於實現各種功能的裝置也可以視為硬體部件內的結構。或者甚至,可以將用於實現各種功能的裝置視為既可以是實現方法的軟體模組又可以是硬體部件內的結構。
上述實施例闡明的系統、裝置、模組或單元,具體可以由電腦晶片或實體實現,或者由具有某種功能的產品來實現。
為了描述的方便,描述以上裝置時以功能分為各種單 元分別描述。當然,在實施本發明時可以把各單元的功能在同一個或多個軟體和/或硬體中實現。
本領域內的技術人員應明白,本發明的實施例可提供為方法、系統、或電腦程式產品。因此,本發明可採用完全硬體實施例、完全軟體實施例、或結合軟體和硬體方面的實施例的形式。而且,本發明可採用在一個或多個其中包含有電腦可用程式碼的電腦可用儲存介質(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。
本發明是參照根據本發明實施例的方法、設備(系統)、和電腦程式產品的流程圖和/或方塊圖來描述的。應理解可由電腦程式指令實現流程圖和/或方塊圖中的每一流程和/或方塊、以及流程圖和/或方塊圖中的流程和/或方塊的結合。可提供這些電腦程式指令到通用電腦、專用電腦、嵌入式處理機或其他可程式設計資料處理設備的處理器以產生一個機器,使得通過電腦或其他可程式設計資料處理設備的處理器執行的指令產生用於實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能的裝置。
這些電腦程式指令也可儲存在能引導電腦或其他可程式設計資料處理設備以特定方式工作的電腦可讀記憶體中,使得儲存在該電腦可讀記憶體中的指令產生包括指令裝置的製造品,該指令裝置實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能。
這些電腦程式指令也可裝載到電腦或其他可程式設計資料處理設備上,使得在電腦或其他可程式設計設備上執行一系列操作步驟以產生電腦實現的處理,從而在電腦或其他可程式設計設備上執行的指令提供用於實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能的步驟。
在一個典型的配置中,計算設備包括一個或多個處理器(CPU)、輸入/輸出介面、網路介面和記憶體。
記憶體可能包括電腦可讀介質中的非永久性記憶體,隨機存取記憶體(RAM)和/或非揮發性記憶體等形式,如唯讀記憶體(ROM)或快閃記憶體(flash RAM)。記憶體是電腦可讀介質的示例。
電腦可讀介質包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現資訊儲存。資訊可以是電腦可讀指令、資料結構、程式的模組或其他資料。電腦的儲存介質的例子包括,但不限於相變記憶體(PRAM)、靜態隨機存取記憶體(SRAM)、動態隨機存取記憶體(DRAM)、其他類型的隨機存取記憶體(RAM)、唯讀記憶體(ROM)、電可擦除可程式設計唯讀記憶體(EEPROM)、快閃記憶體或其他記憶體技術、唯讀光碟唯讀記憶體(CD-ROM)、數位多功能光碟(DVD)或其他光學儲存、磁盒式磁帶,磁帶磁磁片儲存或其他磁性存放裝置或任何其他非傳輸介質,可用於儲存可以被計算設備訪問的資訊。按照本文中的界定,電腦可 讀介質不包括暫存電腦可讀媒體(transitory media),如調變的資料信號和載波。
還需要說明的是,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,並不排除在包括所述要素的過程、方法、商品或者設備中還存在另外的相同要素。
本領域技術人員應明白,本發明的實施例可提供為方法、系統或電腦程式產品。因此,本發明可採用完全硬體實施例、完全軟體實施例或結合軟體和硬體方面的實施例的形式。而且,本發明可採用在一個或多個其中包含有電腦可用程式碼的電腦可用儲存介質(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。
本發明可以在由電腦執行的電腦可執行指令的一般上下文中描述,例如程式模組。一般地,程式模組包括執行特定任務或實現特定抽象資料類型的例程、程式、對象、組件、資料結構等等。也可以在分散式運算環境中實踐本發明,在這些分散式運算環境中,由通過通信網路而被連接的遠端處理設備來執行任務。在分散式運算環境中,程式模組可以位於包括存放裝置在內的本地和遠端電腦儲存 介質中。
本說明書中的各個實施例均採用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對於系統實施例而言,由於其基本相似於方法實施例,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。
以上所述僅為本發明的實施例而已,並不用於限制本發明。對於本領域技術人員來說,本發明可以有各種更改和變化。凡在本發明的精神和原理之內所作的任何修改、等同替換、改進等,均應包含在本發明的申請專利範圍之內。

Claims (19)

  1. 一種檢查分散式業務處理完整度的方法,分散式業務系統接收業務請求並按照業務條件將該業務逐級傳遞至後續業務子系統,其特徵在於,監控分散式系統中各業務子系統的業務處理狀態,並包括:當入口業務子系統接收到業務請求並需要傳遞至第一級業務子系統時,對於需要傳遞至的每一第一級業務子系統,產生入口業務子系統與第一級業務子系統的聯合標識,並將產生的該聯合標識做互斥或處理,得到第一檢驗值;對於每一普通業務子系統,在完成處理後記錄上級業務子系統傳遞的聯合標識;對於普通業務子系統傳遞至的每一下級業務子系統,產生該普通業務子系統與傳遞至的下級業務子系統的聯合標識;每一普通業務子系統將記錄的聯合標識與產生的聯合標識及第一校驗值做互斥或處理,並更新第一校驗值;對於每一葉子業務子系統,在完成處理後記錄上級業務子系統傳遞的聯合標識;每一葉子業務子系統將記錄的聯合標識與第一校驗值做互斥或處理,並更新第一校驗值。
  2. 如申請專利範圍第1項所述的方法,其中,該方法得到的最終檢驗值為0表示該分散式業務系統中對業務請求完成了所有處理。
  3. 如申請專利範圍第1項所述的方法,其中,該方 法得到的最終檢驗值為聯合標識,則該聯合標識中的後一個標識表示該標識對應的業務子系統未完成業務處理。
  4. 如申請專利範圍第1項所述的方法,其中,不記錄該沒有完成處理的業務子系統接收的上級業務子系統傳遞的聯合標識。
  5. 一種分散式業務處理的完整度檢查裝置,其特徵在於,分散式業務系統接收業務請求並按照業務條件將該業務逐級傳遞至後續業務子系統,包括:監控單元,用於監控該分散式系統中各業務子系統的業務處理狀態;第一產生單元,當入口業務子系統接收到業務請求並需要傳遞至第一級業務子系統時,對於需要傳遞至的每一第一級業務子系統,產生入口業務子系統與第一級業務子系統的聯合標識;第一互斥或單元,用於將第一產生單元產生的該聯合標識做互斥或處理,得到第一檢驗值;記錄單元,對於每一業務子系統,在完成處理後記錄上級業務子系統傳遞的聯合標識;第二產生單元,對於普通業務子系統傳遞至的每一下級業務子系統,產生該普通業務子系統與傳遞至的下級業務子系統的聯合標識;第二互斥或單元,對於每一普通業務子系統,將記錄的聯合標識與產生的聯合標識及第一校驗值做互斥或處理,並更新第一校驗值;對每一葉子業務子系統,將記錄 的聯合標識與第一校驗值做互斥或處理,並更新第一校驗值。
  6. 如申請專利範圍第5項所述的裝置,其中,該裝置設置於該分散式系統內或外。
  7. 如申請專利範圍第5項所述的裝置,其中,該業務請求具有流水號。
  8. 如申請專利範圍第5項所述的裝置,其中,該裝置得到的最終檢驗值為聯合標識,則該聯合標識中的後一個標識表示該標識對應的業務子系統未完成業務處理。
  9. 如申請專利範圍第5項所述的裝置,其中,該記錄單元不記錄該沒有完成處理的業務子系統接收的上級業務子系統傳遞的聯合標識。
  10. 一種檢查分散式業務處理完整度的方法,其特徵在於,分散式系統中任一業務子系統傳遞業務請求至下一級業務子系統時,產生本業務子系統與傳遞至的下一級業務子系統的聯合標識;當分散式系統中任一業務子系統在完成處理後,記錄上一級業務子系統傳遞至該業務子系統的聯合標識;且包括:對於入口業務子系統,對該業務子系統中產生的聯合標識進行互斥或處理得到檢驗值;對於入口業務子系統之外的每一級業務子系統,對該級業務子系統中記錄的聯合標識及產生的聯合標識與上一級業務子系統的檢驗值進行互斥或處理,得到最終的檢驗 值。
  11. 如申請專利範圍第10項所述的方法,其中,該方法得到的最終檢驗值為0表示該分散式業務系統中對業務請求完成了所有處理。
  12. 如申請專利範圍第10項所述的方法,其中,該方法得到的最終檢驗值為聯合標識,則該聯合標識中的後一個標識表示該標識對應的業務子系統未完成業務處理。
  13. 如申請專利範圍第10項所述的方法,其中,不記錄該沒有完成處理的業務子系統接收的上級業務子系統傳遞的聯合標識。
  14. 一種分散式業務處理的完整度檢查裝置,其特徵在於,包括:第三產生單元,分散式系統中任一業務子系統傳遞業務請求至下一級業務子系統時,產生本業務子系統與傳遞至的下一級業務子系統的聯合標識;記錄單元,當分散式系統中任一業務子系統在完成處理後,記錄上一級業務子系統傳遞至該業務子系統的聯合標識;第三互斥或單元,對於入口業務子系統,對該業務子系統中產生的聯合標識進行互斥或處理得到檢驗值;第四互斥或單元,對於入口業務子系統之外的每一級業務子系統,對該級業務子系統中記錄的聯合標識及產生的聯合標識與上一級業務子系統的檢驗值進行互斥或處理;得到最終的檢驗值。
  15. 一種檢查分散式業務處理完整度的方法,其特徵在於,分散式系統中每一業務子系統傳遞業務請求至下一級業務子系統時,產生本業務子系統與傳遞至的下一級業務子系統的聯合標識;當分散式系統中每一業務子系統在完成處理後,記錄上一級業務子系統傳遞的聯合標識;且包括:將每一業務子系統中記錄的聯合標識及產生的聯合標識進行互斥或處理,得到最終的檢驗值。
  16. 如申請專利範圍第15項所述的方法,其中,該方法得到的最終檢驗值為0表示該分散式業務系統對業務請求完成了所有處理。
  17. 如申請專利範圍第15項所述的方法,其中,該方法得到的最終檢驗值為聯合標識,則該聯合標識中的後一個標識表示該標識對應的業務子系統未完成業務處理。
  18. 如申請專利範圍第15項所述的方法,其中,不記錄該沒有完成處理的業務子系統接收的上級業務子系統傳遞的聯合標識。
  19. 一種分散式業務處理的完整度檢查裝置,其特徵在於,包括:第四產生單元,分散式系統中每一業務子系統傳遞業務請求至下一級業務子系統時,產生本業務子系統與傳遞至的下一級業務子系統的聯合標識;記錄單元,當分散式系統中任一業務子系統在完成處理後,記錄上一級業務子系統傳遞至該業務子系統的聯合 標識;第七互斥或單元,對於入口業務子系統產生的聯合標識、入口業務子系統之外的每一級業務子系統中記錄的聯合標識及產生的聯合標識進行互斥或處理,得到最終的檢驗值。
TW105143943A 2016-02-29 2016-12-29 檢查分布式業務處理完整度的方法及裝置 TWI662486B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610113586.1A CN107135191B (zh) 2016-02-29 2016-02-29 检查分布式业务处理完整度的方法及装置
??201610113586.1 2016-02-29

Publications (2)

Publication Number Publication Date
TW201732692A true TW201732692A (zh) 2017-09-16
TWI662486B TWI662486B (zh) 2019-06-11

Family

ID=59721579

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105143943A TWI662486B (zh) 2016-02-29 2016-12-29 檢查分布式業務處理完整度的方法及裝置

Country Status (6)

Country Link
US (1) US20180367642A1 (zh)
EP (1) EP3425508B1 (zh)
JP (1) JP6622926B2 (zh)
CN (1) CN107135191B (zh)
TW (1) TWI662486B (zh)
WO (1) WO2017148277A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108809731B (zh) * 2018-06-28 2021-05-04 珠海兴业新材料科技有限公司 一种基于地铁调光投影系统业务数据链的控制方法
US12056716B2 (en) * 2022-04-06 2024-08-06 Stripe, Inc. Systems and methods for accessing distributed service systems to surface insights for a user

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7526549B2 (en) * 2003-07-24 2009-04-28 International Business Machines Corporation Cluster data port services for clustered computer system
CA2560982C (en) * 2004-05-25 2014-11-18 Nortel Networks Limited Connectivity fault notification
CN101378329B (zh) * 2007-08-30 2011-06-22 阿里巴巴集团控股有限公司 分布式业务运营支撑系统和分布式业务的实现方法
US8929365B2 (en) * 2008-02-21 2015-01-06 Telcordia Technologies, Inc. Efficient, fault-tolerant multicast networks via network coding
US8533285B2 (en) * 2010-12-01 2013-09-10 Cisco Technology, Inc. Directing data flows in data centers with clustering services
CN102014169B (zh) * 2010-12-22 2013-03-20 国家电网公司 分布式服务系统、分布式服务系统的任务执行方法和装置
CN104636232B (zh) * 2013-11-06 2018-12-04 中国移动通信集团广东有限公司 一种分布式服务系统的性能监控装置和方法
CN105224550B (zh) * 2014-06-09 2019-07-19 腾讯科技(深圳)有限公司 分布式流计算系统和方法

Also Published As

Publication number Publication date
CN107135191A (zh) 2017-09-05
EP3425508A1 (en) 2019-01-09
TWI662486B (zh) 2019-06-11
JP2019510306A (ja) 2019-04-11
JP6622926B2 (ja) 2019-12-18
US20180367642A1 (en) 2018-12-20
WO2017148277A1 (zh) 2017-09-08
EP3425508B1 (en) 2021-07-07
EP3425508A4 (en) 2019-07-10
CN107135191B (zh) 2020-02-21

Similar Documents

Publication Publication Date Title
CN108322351B (zh) 生成拓扑图的方法和装置、故障确定方法和装置
US9436813B2 (en) Multi-tenancy support for a product that does not support multi-tenancy
CA3047081C (en) Production-like testing and complex business to business auditing system
TW201911834A (zh) 區塊鏈節點間的通信方法及裝置
TW201906389A (zh) 一種認證方法、基於區塊鏈的認證資料處理方法及裝置
TW201822033A (zh) 資源處理方法及裝置
US20160156527A1 (en) Cloud service agent based on service level agreement(sla)
EP3101965A1 (en) Method and apparatus for adjacent node registration, and method and system for crossing node registration
US20170300543A1 (en) Automating configuration of operational data pipelines for extraction, transformation and load
TW201732692A (zh) 檢查分布式業務處理完整度的方法及裝置
US20210358013A1 (en) Processing documents
US20210209553A1 (en) Reading and writing processing improvements as a single command
US10565035B2 (en) Modifying a device based on an annotated time series of sensor readings