CN107135191B - 检查分布式业务处理完整度的方法及装置 - Google Patents

检查分布式业务处理完整度的方法及装置 Download PDF

Info

Publication number
CN107135191B
CN107135191B CN201610113586.1A CN201610113586A CN107135191B CN 107135191 B CN107135191 B CN 107135191B CN 201610113586 A CN201610113586 A CN 201610113586A CN 107135191 B CN107135191 B CN 107135191B
Authority
CN
China
Prior art keywords
service subsystem
service
processing
subsystem
joint
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN201610113586.1A
Other languages
English (en)
Other versions
CN107135191A (zh
Inventor
窦方钰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced New Technologies Co Ltd
Advantageous New Technologies Co Ltd
Original Assignee
Alibaba Group Holding 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 Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201610113586.1A priority Critical patent/CN107135191B/zh
Priority to TW105143943A priority patent/TWI662486B/zh
Priority to EP17759128.6A priority patent/EP3425508B1/en
Priority to PCT/CN2017/073916 priority patent/WO2017148277A1/zh
Priority to JP2018545456A priority patent/JP6622926B2/ja
Publication of CN107135191A publication Critical patent/CN107135191A/zh
Priority to US16/114,945 priority patent/US20180367642A1/en
Application granted granted Critical
Publication of CN107135191B publication Critical patent/CN107135191B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/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
    • 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)
  • Physics & Mathematics (AREA)
  • General 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
Figure BDA0000931849320000031
上述方式存储的数据量较大。特别是对于目前大型的互联网业务,一个业务很有可能触发几十个子系统进行不同的子业务的处理。那么对于一条业务流水来说,可能需要一个记录几十条数据的表格,存储量较大。
发明内容
本申请实施例的目的是提供一种检查分布式业务处理完整度的方法及装置,以减少数据存储量。
为解决上述技术问题,本申请实施例提供一种检查分布式业务处理完整度的方法及装置是这样实现的:
一种检查分布式业务处理完整度的方法,分布式业务系统接收业务请求并按照业务条件将所述业务逐级传递至后续业务子系统;监控分布式系统中各业务子系统的业务处理状态,并包括:
当入口业务子系统接收到业务请求并需要传递至第一级业务子系统时,对于需要传递至的每一第一级业务子系统,生成入口业务子系统与第一级业务子系统的联合标识,并将生成的所述联合标识做异或处理,得到第一检验值;
对于每一普通业务子系统,在完成处理后记录上级业务子系统传递的联合标识;对于普通业务子系统传递至的每一下级业务子系统,生成所述普通业务子系统与传递至的下级业务子系统的联合标识;每一普通业务子系统将记录的联合标识与生成的联合标识及第一校验值做异或处理,并更新第一校验值;
对于每一叶子业务子系统,在完成处理后记录上级业务子系统传递的联合标识;每一叶子业务子系统将记录的联合标识与第一校验值做异或处理,并更新第一校验值。
一种分布式业务处理的完整度检查装置,分布式业务系统接收业务请求并按照业务条件将所述业务逐级传递至后续业务子系统,包括:
监控单元,用于监控所述分布式系统中各业务子系统的业务处理状态;
第一生成单元,当入口业务子系统接收到业务请求并需要传递至第一级业务子系统时,对于需要传递至的每一第一级业务子系统,生成入口业务子系统与第一级业务子系统的联合标识;
第一异或单元,用于将第一生成单元生成的所述联合标识做异或处理,得到第一检验值;
记录单元,对于每一业务子系统,在完成处理后记录上级业务子系统传递的联合标识;
第二生成单元,对于普通业务子系统传递至的每一下级业务子系统,生成所述普通业务子系统与传递至的下级业务子系统的联合标识;
第二异或单元,对于每一普通业务子系统,将记录的联合标识与生成的联合标识及第一校验值做异或处理,并更新第一校验值;对每一叶子业务子系统,将记录的联合标识与第一校验值做异或处理,并更新第一校验值。
一种检查分布式业务处理完整度的方法,分布式系统中任一业务子系统传递业务请求至下一级业务子系统时,生成本业务子系统与传递至的下一级业务子系统的联合标识;当分布式系统中任一业务子系统在完成处理后,记录上一级业务子系统传递至该业务子系统的联合标识;
且包括:
对于入口业务子系统,对该业务子系统中生成的联合标识进行异或处理得到检验值;
对于入口业务子系统之外的每一级业务子系统,对该级业务子系统中记录的联合标识及生成的联合标识与上一级业务子系统的检验值进行异或处理;得到最终的检验值。
一种分布式业务处理的完整度检查装置,包括:
第三生成单元,分布式系统中任一业务子系统传递业务请求至下一级业务子系统时,生成本业务子系统与传递至的下一级业务子系统的联合标识;
记录单元,当分布式系统中任一业务子系统在完成处理后,记录上一级业务子系统传递至该业务子系统的联合标识;
第三异或单元,对于入口业务子系统,对该业务子系统中生成的联合标识进行异或处理得到检验值;
第四异或单元,对于入口业务子系统之外的每一级业务子系统,对该级业务子系统中记录的联合标识及生成的联合标识与上一级业务子系统的检验值进行异或处理;得到最终的检验值。
一种检查分布式业务处理完整度的方法,分布式系统中每一业务子系统传递业务请求至下一级业务子系统时,生成本业务子系统与传递至的下一级业务子系统的联合标识;当分布式系统中每一业务子系统在完成处理后,记录上一级业务子系统传递的联合标识;
且包括:
将每一业务子系统中记录的联合标识及生成的联合标识进行异或处理,得到最终的检验值。
一种分布式业务处理的完整度检查装置,包括:
第四生成单元,分布式系统中每一业务子系统传递业务请求至下一级业务子系统时,生成本业务子系统与传递至的下一级业务子系统的联合标识;
记录单元,当分布式系统中任一业务子系统在完成处理后,记录上一级业务子系统传递至该业务子系统的联合标识;
第七异或单元,将每一业务子系统中记录的联合标识及生成的联合标识进行异或处理,得到最终的检验值。
由以上本申请各实施例提供的技术方案可见,本申请实施例不需要像现有技术那样通过庞大的表格记录每个业务子系统,而是通过所述规则进行异或运算,能够用较少的空间存储分布式系统的业务处理情况。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图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 GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated 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.一种分布式业务处理的完整度检查装置,其特征在于,包括:
第四生成单元,分布式系统中每一业务子系统传递业务请求至下一级业务子系统时,生成本业务子系统与传递至的下一级业务子系统的联合标识;
记录单元,当分布式系统中任一业务子系统在完成处理后,记录上一级业务子系统传递至该业务子系统的联合标识;
第七异或单元,将仅具有下一级业务子系统的业务子系统生成的联合标识、具有下一级业务子系统和上一级业务子系统的业务子系统中记录的联合标识和生成的联合标识、仅具有上一级业务子系统的业务子系统中记录的联合标识进行异或处理,得到最终的校验值。
CN201610113586.1A 2016-02-29 2016-02-29 检查分布式业务处理完整度的方法及装置 Active CN107135191B (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN201610113586.1A CN107135191B (zh) 2016-02-29 2016-02-29 检查分布式业务处理完整度的方法及装置
TW105143943A TWI662486B (zh) 2016-02-29 2016-12-29 檢查分布式業務處理完整度的方法及裝置
EP17759128.6A EP3425508B1 (en) 2016-02-29 2017-02-17 Method and apparatus for checking integrity of distributed service processing
PCT/CN2017/073916 WO2017148277A1 (zh) 2016-02-29 2017-02-17 检查分布式业务处理完整度的方法及装置
JP2018545456A JP6622926B2 (ja) 2016-02-29 2017-02-17 分散型サービス処理の完全性をチェックする方法及び装置
US16/114,945 US20180367642A1 (en) 2016-02-29 2018-08-28 Method and apparatus for checking integrity of distributed service processing

Applications Claiming Priority (1)

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

Publications (2)

Publication Number Publication Date
CN107135191A CN107135191A (zh) 2017-09-05
CN107135191B true CN107135191B (zh) 2020-02-21

Family

ID=59721579

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610113586.1A Active CN107135191B (zh) 2016-02-29 2016-02-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

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101378329A (zh) * 2007-08-30 2009-03-04 阿里巴巴集团控股有限公司 分布式业务运营支撑系统和分布式业务的实现方法
CN102014169A (zh) * 2010-12-22 2011-04-13 北京中电普华信息技术有限公司 分布式服务系统、分布式服务系统的任务执行方法和装置
CN104636232A (zh) * 2013-11-06 2015-05-20 中国移动通信集团广东有限公司 一种分布式服务系统的性能监控装置和方法
CN105224550A (zh) * 2014-06-09 2016-01-06 腾讯科技(深圳)有限公司 分布式流计算系统和方法

Family Cites Families (4)

* 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
WO2005117519A2 (en) * 2004-05-25 2005-12-15 Nortel Networks Limited Connectivity fault notification
WO2009105754A1 (en) * 2008-02-21 2009-08-27 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

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101378329A (zh) * 2007-08-30 2009-03-04 阿里巴巴集团控股有限公司 分布式业务运营支撑系统和分布式业务的实现方法
CN102014169A (zh) * 2010-12-22 2011-04-13 北京中电普华信息技术有限公司 分布式服务系统、分布式服务系统的任务执行方法和装置
CN104636232A (zh) * 2013-11-06 2015-05-20 中国移动通信集团广东有限公司 一种分布式服务系统的性能监控装置和方法
CN105224550A (zh) * 2014-06-09 2016-01-06 腾讯科技(深圳)有限公司 分布式流计算系统和方法

Also Published As

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

Similar Documents

Publication Publication Date Title
CN107040585B (zh) 一种业务校验的方法及装置
CN107450979B (zh) 一种区块链共识方法及装置
CN111967849A (zh) 一种任务处理流程编排方法、装置及电子设备
JP2020509451A (ja) データベース状態決定方法およびデバイスならびに整合性検証方法およびデバイス
CN107066519B (zh) 一种任务检测方法及装置
CN113495797B (zh) 一种消息队列及消费者动态创建方法及系统
CN111401766B (zh) 模型、业务处理方法、装置及设备
CN113408254A (zh) 一种页面表单信息填写方法、装置、设备和可读介质
CN110602163B (zh) 文件上传方法及装置
CN107135191B (zh) 检查分布式业务处理完整度的方法及装置
CN111722995B (zh) 一种数据处理方法及装置
CN109376988B (zh) 一种业务数据的处理方法和装置
CN110992039B (zh) 交易处理方法、装置及设备
CN108628931A (zh) 一种数据驱动业务的方法、装置以及设备
CN110689418B (zh) 账单生成方法及装置
CN110008252B (zh) 数据核对方法及装置
EP4025994A1 (en) Enhanced virtual machine image management system
CN109039695B (zh) 业务故障处理方法、装置及设备
CN107562533B (zh) 一种数据加载处理方法及装置
CN113869989B (zh) 一种信息处理方法及装置
US20190179689A1 (en) System and Method for Root Cause Analysis in Large Scale Data Curation Flows Using Provenance
CN114661826A (zh) 基于区块链的数据处理方法、装置及设备
CN110275731B (zh) 信息处理方法、装置、存储介质和电子设备
CN109542401A (zh) 一种Web开发方法、装置、存储介质及处理器
CN112596781A (zh) 一种业务执行以及业务配置方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20200925

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman, British Islands

Patentee after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman, British Islands

Patentee before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20200925

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman, British Islands

Patentee after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Patentee before: Alibaba Group Holding Ltd.

TR01 Transfer of patent right