CN108021443B - 事件处理方法和装置 - Google Patents

事件处理方法和装置 Download PDF

Info

Publication number
CN108021443B
CN108021443B CN201710052185.4A CN201710052185A CN108021443B CN 108021443 B CN108021443 B CN 108021443B CN 201710052185 A CN201710052185 A CN 201710052185A CN 108021443 B CN108021443 B CN 108021443B
Authority
CN
China
Prior art keywords
information
operation information
event
server
tampered
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
CN201710052185.4A
Other languages
English (en)
Other versions
CN108021443A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910642566.7A priority Critical patent/CN110347514B/zh
Priority to CN201710052185.4A priority patent/CN108021443B/zh
Priority to CN201910642568.6A priority patent/CN110362406B/zh
Publication of CN108021443A publication Critical patent/CN108021443A/zh
Application granted granted Critical
Publication of CN108021443B publication Critical patent/CN108021443B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • 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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • 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
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Multimedia (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种事件处理方法和装置。其中,该方法包括:第一服务器判断第一记录对象在执行第一事件时的事件得到的第一事件信息是否为被篡改过的事件信息;第一服务器如果判断出第一事件信息为被篡改过的事件信息,向至少一个第二服务器发送查询请求,每个第二服务器上存储第一记录对象在执行第一事件得到的第二事件信息,第二事件信息用于对第一事件信息进行修复;第一服务器对每个第二服务器响应查询请求得到的第二事件信息进行合并处理,得到合并事件信息;第一服务器根据合并事件信息对第一事件信息进行修复处理,得到第一记录对象的第三事件信息。本发明解决了相关技术的事件处理效率低的技术问题。

Description

事件处理方法和装置
技术领域
本发明涉及事件处理领域,具体而言,涉及一种事件处理方法和装置。
背景技术
目前,在事件处理中,在记录对象执行事件得到的事件信息出现问题,或者记录对象的信息出现问题的情况下,需要对其进行修复。
对事件信息和记录对象的信息进行修复是比较困难的,通常采用数据镜像修复方法,或者基于执行所有事件的日志修复方法。其中,数据镜像修复方法和基于执行所有事件的日志修复方法都是对信息进行全量修复,也即,当记录对象执行事件得到的某条事件信息出现问题,或者记录对象的信息出现问题时,需要对记录对象执行事件得到的事件信息和记录对象的信息都要进行修复,其中包括过去记录对象执行事件得到的事件信息和记录对象的信息,而并不只是针对出现问题的信息进行的单条修复。
由于在事件处理中,在信息出现问题的情况下需要对记录对象的事件信息和记录对象的信息进行全量修复,从而使事件处理的过程比较耗时,导致事件处理的效率低。
针对上述的事件处理效率低的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种事件处理方法和装置,以至少解决相关技术的事件处理效率低的技术问题。
根据本发明实施例的一个方面,提供了一种事件处理方法。该事件处理方法包括:第一服务器判断第一记录对象在执行第一事件得到的第一事件信息是否为被篡改过的事件信息;第一服务器如果判断出第一事件信息为被篡改过的事件信息,向至少一个第二服务器发送查询请求,其中,每个第二服务器上存储第一记录对象在执行第一事件得到的第二事件信息,查询请求用于向每个第二服务器请求查询第二事件信息,第二事件信息用于对第一事件信息进行修复;第一服务器对每个第二服务器响应查询请求得到的第二事件信息进行合并处理,得到合并事件信息;第一服务器根据合并事件信息对第一事件信息进行修复处理,得到第一记录对象的第三事件信息。
根据本发明实施例的另一方面,还提供了一种事件处理装置。该事件处理装置包括:判断单元,用于使第一服务器判断第一记录对象在执行第一事件得到的第一事件信息是否为被篡改过的事件信息;发送单元,用于使第一服务器如果判断出第一事件信息为被篡改过的事件信息,向至少一个第二服务器发送查询请求,其中,每个第二服务器上存储第一记录对象在执行第一事件得到的第二事件信息,查询请求用于向每个第二服务器请求查询第二事件信息,第二事件信息用于对第一事件信息进行修复;第一处理单元,用于使第一服务器对每个第二服务器响应查询请求得到的第二事件信息进行合并处理,得到合并事件信息;第二处理单元,用于第一服务器根据合并事件信息对第一事件信息进行修复处理,得到第一记录对象的第三事件信息。
在本发明实施例中,采用第一服务器在判断出第一事件信息为被篡改过的事件信息的情况下,向至少一个第二服务器发送查询请求,每个第二服务器上存储第一记录对象在执行第一事件得到的第二事件信息,查询请求用于向每个第二服务器请求查询第二事件信息,第二事件信息用于对第一事件信息进行修复;第一服务器对每个第二服务器响应查询请求得到的第二事件信息进行合并处理,得到合并事件信息;第一服务器根据合并事件信息对第一事件信息进行修复处理,得到第一记录对象的第三事件信息,达到了对事件处理的目的,从而实现了提高事件处理效率的技术效果,进而解决了相关技术的事件处理效率低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的事件处理方法的硬件环境的示意图;
图2是根据本发明实施例的一种事件方法的流程图;
图3是根据本发明实施例的一种第一服务器判断第一记录对象的第一操作信息是否为被篡改过的操作信息的方法的流程图;
图4是根据本发明实施例的一种第一服务器向至少一个第二服务器发送第一查询请求的方法的流程图;
图5是根据本发明实施例的一种第一服务器对每个第二服务器响应第一查询请求得到的第二操作信息进行合并处理的方法的流程图;
图6是根据本发明实施例的另一种事件处理方法的流程图;
图7是根据本发明实施例的一种第一服务器对每个第二服务器响应第二查询请求得到的操作信息列表进行合并处理的方法的流程图;
图8是根据本发明实施例的一种第一服务器根据合并操作信息列表对第一操作信息进行修复处理的方法的流程图;
图9是根据本发明实施例的一种服务器根据第三操作信息对第一记录信息进行修复处理的方法的流程图;
图10是根据本发明实施例的一种对被篡改过的操作信息进行修复的示意图;
图11是根据本发明实施例的一种对被篡改过的记录对象的信息进行修复的示意图;
图12是根据本发明实施例的一种对被篡改过的操作信息和记录对象的信息均进行修复的示意图;
图13是根据本发明实施例的一种事件处理装置的示意图;以及
图14是根据本发明实施例的一种终端的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本发明实施例,提供了一种事件处理方法的实施例。
可选地,在本实施例中,上述事件处理方法可以应用于如图1所示的由服务器102和终端104所构成的硬件环境中。图1是根据本发明实施例的事件处理方法的硬件环境的示意图。如图1所示,服务器102通过网络与终端104进行连接,上述网络包括但不限于:广域网、城域网或局域网,终端104并不限定于PC、手机、平板电脑等。本发明实施例的事件处理方法可以由服务器102来执行,也可以由终端104来执行,还可以是由服务器102和终端104共同执行。其中,终端104执行本发明实施例的事件处理方法也可以是由安装在其上的客户端来执行。
图2是根据本发明实施例的一种事件方法的流程图。如图2所示,该方法可以包括以下步骤:
步骤S202,第一服务器判断第一记录对象在执行第一事件得到的第一事件信息是否为被篡改过的事件信息。
在本发明上述步骤S202提供的技术方案中,第一服务器判断第一记录对象在执行第一事件得到的第一事件信息是否为被篡改过的事件信息。
第一记录对象可以用于对事件的具体内容进行科学地分类,可以用于记录事件的名称、用途、结构等。第一事件可以为信息交换事件,第一记录对象在执行第一事件时产生的第一事件信息可以为第一记录对象在进行信息交换事件得到的事件信息,包括第一事件的操作信息和第一记录对象的信息。第一服务器判断第一事件信息是否为被篡改过的事件信息,也即,第一服务器判断该第一事件信息是否为错误的事件信息,或者为验证不通过的事件信息。
第一记录对象的事件信息的数据结构可以为区块链,采用哈希链式结构进行存储。其中,区块链是利用块链式数据结构来验证与存储数据,利用分布式节点共识算法来生成和更新数据,利用密码学的方式保证数据传输和访问的安全,利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式。信息不可篡改性作为区块链技术的一个基本特性是指数据在区块链网络中是不可篡改的,是通过去中心化的账本来保证的,但是单个账本的数据是有被篡改的风险的,在联盟链中尤为突出。
步骤S204,第一服务器向至少一个第二服务器发送查询请求。
在本发明上述步骤S204提供的技术方案中,第一服务器如果判断出第一事件信息为被篡改过的事件信息,向至少一个第二服务器发送查询请求,其中,每个第二服务器上存储第一记录对象在执行第一事件得到的第二事件信息,查询请求用于向每个第二服务器请求查询第二事件信息,第二事件信息用于对第一事件信息进行修复。
第一服务器和第二服务器上存储的记录对象是相同的,并且存储每个记录对象执行事件得到的事件信息,当记录对象的事件信息都未被篡改的情况下,所有服务器上存储的信息也是相同的。
在第一服务器判断第一记录对象在执行第一事件得到的第一事件信息是否为被篡改过的事件信息之后,第一服务器如果判断出第一事件信息为被篡改过的事件信息,也即,判断出该第一服务器为信息被篡改的节点,需要对第一事件信息进行恢复。第一服务器向至少一个第二服务器发送查询请求,可以通过第一服务器上预先部署好的服务器程序向至少一个第二服务器发送查询请求,至少一个第二服务器包括信息未被篡改的、正常的服务器。每个第二服务器上存储第一记录对象在执行第一事件得到的第二事件信息,该第二事件信息可以包括第一记录对象的操作信息和第一记录对象的信息。当第二服务器的个数为一个时,该第二事件信息为未被篡改过的事件信息,当第二服务器的个数为多个时,每个第二服务器上存储的第二事件信息可以为未被篡改过的事件信息,也可以为被篡改过的事件信息,被篡改过的事件信息可以与第一事件信息相同,也可以不同。
优选地,第二服务器的个数为多个,由于在正常情况下,只有少部分服务器存储的事件信息被篡改,因而多个第二服务器上存储的事件信息中未被篡改过的第二事件信息的数量多余被篡改过的第二事件信息的数量。
第一服务器向每个第二服务器发送的查询请求用于向每个第二服务器请求查询第二事件信息,每个第二服务器在接收到查询请求后,对查询请求进行响应,得到第二事件信息。
步骤S206,第一服务器对每个第二服务器响应查询请求得到的第二事件信息进行合并处理,得到合并事件信息。
在本发明上述步骤S206提供的技术方案中,第一服务器对每个第二服务器响应查询请求得到的第二事件信息进行合并处理,得到合并事件信息。
在第一服务器向至少一个第二服务器发送查询请求之后,第一服务器接收每个第二服务器下发的第二事件信息,对每个第二服务器下发的第二事件信息进行合并处理。可选地,第一服务器接收与至少一个第二服务器相对应的多条上述第二事件信息,多条上述第二事件信息中有被篡改过的第一记录对象执行第一事件的事件信息,也有未被篡改过的第一记录对象执行第一事件的事件信息,在对多条第二事件信息进行合并处理时,可以按照多数一致原则进行合并处理,将相同结果最多的第二事件信息确定为合并事件信息。
举例而言,第二服务器包括服务器A、服务器B、服务器C和服务器D,其中,服务器A上存储的第一记录对象在执行第一事件得到的第二事件信息为a,服务器B上存储的第一记录对象在执行第一事件得到的第二事件信息为b,服务器C上存储的第一记录对象在执行第一事件得到的第二事件信息为a,服务器D上存储的第一记录对象在执行第一事件得到的第二事件信息为c。第一服务器在对每个第二服务器响应查询请求得到的第二事件信息进行合并处理时,第二事件信息为a的结果进行合并,得到2个,对第二事件信息为b的结果进行合并,得到1个,对第二事件信息为c的结果进行合并,得到为1个,则将第二事件信息为a的结果确定为合并事件信息。
步骤S208,第一服务器根据合并事件信息对第一事件信息进行修复处理,得到第一记录对象的第三事件信息。
在本发明上述步骤S208提供的技术方案中,第一服务器根据合并事件信息对第一事件信息进行修复处理,得到第一记录对象的第三事件信息。
在第一服务器对每个第二服务器响应查询请求得到的第二事件信息进行合并处理,得到合并事件信息之后,第一服务器根据合并事件信息对第一事件信息进行修复处理,可以将第一服务器上的第一事件信息替换为合并事件信息,得到第一记录对象的第三事件信息,该第三事件信息为第一记录对象在执行第一事件得到的正确的事件信息,从而实现了对第一记录对象的被篡改过的第一事件信息的修复。由于不用对第一服务器上的第一记录对象的所有事件信息在修复时进行全量替换,没有基于数据镜像恢复,或者执行所有日志的恢复,因而降低了对事件信息进行修复的时间,提高了事件处理效率。
可选地,上述第一记录对象为账户,对会计要素的具体内容所作的科学地分类,包括名称、用途与结构,上述事件为交易事件。服务器判断账户在进行交易时的交易信息和/或账户信息是否为被篡改过的信息,第一服务器在判断出账户在进行交易时的交易信息和/或账户信息为被篡改过的信息的情况下,向至少一个第二服务器发送查询请求,每个第二服务器上存储账户在执行交易得到的交易信息和/或账户信息;第一服务器对每个第二服务器响应查询请求得到的交易信息和/或账户信息进行合并处理,得到合并交易信息;第一服务器根据合并交易信息对账户在进行交易时的交易信息和/或账户信息进行修复处理,得到第一记录对象的正确的交易信息和/或账户信息。
通过上述步骤S202至步骤S208,通过第一服务器在判断出第一事件信息为被篡改过的事件信息的情况下,向至少一个第二服务器发送查询请求,每个第二服务器上存储第一记录对象在执行第一事件得到的第二事件信息;第一服务器对每个第二服务器响应查询请求得到的第二事件信息进行合并处理,得到合并事件信息;第一服务器根据合并事件信息对第一事件信息进行修复处理,得到第一记录对象的第三事件信息,达到了对事件处理的目的,可以对个别被破环的事件信息进行快速恢复,从而实现了提高事件处理效率的技术效果,进而解决了相关技术的事件处理效率低的技术问题。
作为一种可选的实施方式,第一事件信息包括第一记录对象在执行第一事件时,对第一事件进行操作的第一操作信息,步骤S202,第一服务器判断第一记录对象在执行第一事件得到的第一事件信息是否为被篡改过的事件信息包括:第一服务器判断第一记录对象在执行第一事件得到的第一操作信息是否为被篡改过的操作信息;步骤S204,第一服务器如果判断出第一事件信息为被篡改过的事件信息,向至少一个第二服务器发送查询请求包括:第一服务器如果判断出第一操作信息为被篡改过的操作信息,向至少一个第二服务器发送第一查询请求;步骤S206,第一服务器对每个第二服务器响应查询请求得到的第二事件信息进行合并处理,得到合并事件信息包括:第一服务器对每个第二服务器响应第一查询请求得到的第二操作信息进行合并处理,得到合并操作信息;步骤S208,第一服务器根据合并事件信息对第一事件信息进行修复处理,得到第一记录对象的第三事件信息包括:第一服务器根据合并操作信息对第一操作信息进行修复处理,得到第一记录对象的第三操作信息。
可选地,第一操作信息为执行交易事件得到的第一账户的第一交易信息,该交易信息为第一账户的操作信息。服务器判断第一记录对象在执行交易事件得到的第一操作信息是否为被篡改过的操作信息;第一服务器如果判断出第一操作信息为被篡改过的操作信息,向至少一个第二服务器发送第一查询请求,每个第二服务器上存储第一账户在执行第一事件得到的第二操作信息。当第二服务器的个数为一个时,该第二操作信息为未被篡改过的操作信息,当第二服务器的个数为多个时,每个第二服务器上存储的第二操作信息可以为未被篡改过的操作信息,也可以为被篡改过的操作信息,被篡改过的操作信息可以与第一操作信息相同,也可以不同。
可选地,当事件为交易事件时,第一操作信息为交易信息,该交易信息可以包括交易序号、交易高度、转出账户地址、转入账户地址、转出额度、转出账户余额、转入账户余额、附加字段、账户备份信息、上一条交易哈希、本条交易哈希、签名信息等。
在第一服务器向至少一个第二服务器发送查询请求之后,第一服务器接收每个第二服务器下发的第二操作信息,对每个第二服务器下发的第二操作信息进行合并处理。可选地,第一服务器接收与至少一个第二服务器相对应的多条上述第二操作信息,多条上述第二操作信息中有被篡改过的第一账户执行第一交易事件的操作信息,也有未被篡改过的第一账户执行第一交易事件的操作信息,在对多条第二操作信息进行合并处理时,可以按照多数一致原则进行合并处理,将相同结果最多的第二操作信息确定为合并操作信息,第一服务器根据合并操作信息对第一操作信息进行修复处理,得到第一记录对象的第三操作信息,其中,第三事件信息包括第三操作信息。
作为一种可选的实施方式,第一服务器判断第一记录对象在执行第一事件得到的第一操作信息是否为被篡改过的操作信息包括:第一服务器在第一记录对象执行第二事件之前,获取第一操作信息;第一服务器当验证出第一操作信息符合预设规则时,确定第一操作信息为未被篡改过的操作信息;第一服务器当验证出第一操作信息不符合预设规则时,确定第一操作信息为被篡改过的操作信息。
图3是根据本发明实施例的一种第一服务器判断第一记录对象的第一操作信息是否为被篡改过的操作信息的方法的流程图。如图3所示,该方法包括以下步骤:
步骤S301,第一服务器在第一记录对象执行第二事件之前,获取第一操作信息。
在本发明上述步骤S301提供的技术方案中,第一服务器在第一记录对象执行第二事件之前,获取第一操作信息,其中,第二事件为在第一事件执行之后与第一事件相邻的事件。
在执行新事件时,要对前一事件的事件信息进行验证,在前一事件信息验证通过的情况下,新事件才能执行。比如,区块链的事件信息是采用哈希链式结构,所以在新事件发生时,会对前一事件信息进行验证。第二事件为在第一事件执行之后与第一事件相邻的事件,也即,第二事件为在执行第一事件之后执行的事件,第二事件是第一事件的新事件,第一事件为当前最后执行的事件。第一服务器在第一记录对象执行第二事件之前,获取执行第一事件得到的第一操作信息,第一操作信息为当前对事件进行操作得到的最后一条操作信息。
步骤S302,第一服务器对第一操作信息进行验证。
在本发明上述步骤S302提供的技术方案中,第一服务器对第一操作信息进行验证。
第一服务器在获取第一操作信息之后,对第一操作信息进行验证,确定第一操作信息是否被篡改过,可以采用哈希字段对第一操作信息进行验证。当第一服务器对第一操作信息验证通过时,执行步骤S303,当第一服务器对第一操作信息验证未通过时,执行步骤S304。
步骤S303,第一服务器当验证出第一操作信息符合预设规则时,确定第一操作信息为未被篡改过的操作信息。
在本发明上述步骤S303提供的技术方案中,第一服务器当验证出第一操作信息符合预设规则时,确定第一操作信息为未被篡改过的操作信息,其中,第二事件在确定第一操作信息为未被篡改过的操作信息之后执行。
第一服务器在对第一操作信息进行验证之后,当验证出第一操作信息符合预设规则时,也即,验证出第一操作信息符合正确操作信息的规则时,确定第一操作信息验证通过,该第一操作信息为未被篡改过的操作信息。
步骤S304,第一服务器当验证出第一操作信息不符合预设规则时,确定第一操作信息为被篡改过的操作信息。
在本发明上述步骤S304提供的技术方案中,第一服务器当验证出第一操作信息不符合预设规则时,确定第一操作信息为被篡改过的操作信息。
第一服务器在对第一操作信息进行验证之后,当验证出第一操作信息不符合预设规则时,也即,验证出第一操作信息不符合正确操作信息的规则时,确定第一操作信息验证未通过,该第一操作信息为被篡改过的操作信息。
该实施例通过第一服务器在第一记录对象执行第二事件之前,获取第一操作信息,第一服务器当验证出第一操作信息符合预设规则时,确定第一操作信息为未被篡改过的操作信息,第一服务器当验证出第一操作信息不符合预设规则时,确定第一操作信息为被篡改过的操作信息,从而实现了第一服务器判断第一记录对象在执行第一事件得到的第一操作信息是否为被篡改过的操作信息的目的,进而当第一操作信息为被篡改过的操作信息时,对第一操作信息进行修复,可以对个别被破环的操作信息进行快速恢复,提高了事件执行的效率。
作为一种可选的实施方式,第一服务器和第二服务器上分别还存储多个第二记录对象执行事件得到的操作信息,第一服务器向至少一个第二服务器发送第一查询请求包括:第一服务器对第一记录对象和第一服务器上的多个第二记录对象执行事件的多个执行顺序号进行查询;将最大的执行顺序号且对应的操作信息为正确的顺序号确定为目标执行顺序号;第一服务器根据目标执行顺序号向至少一个第二服务器发送第一查询请求。
图4是根据本发明实施例的一种第一服务器向至少一个第二服务器发送第一查询请求的方法的流程图。如图4所示,该方法包括以下步骤:
步骤S401,第一服务器对第一服务器上的第一记录对象和多个第二记录对象执行事件的多个执行顺序号进行查询。
在本发明上述步骤S401提供的技术方案中,第一服务器对第一记录对象和第一服务器上的多个第二记录对象执行事件的多个执行顺序号进行查询,其中,多个执行顺序号用于指示第一记录对象和多个第二记录对象执行事件的执行顺序,执行顺序号按照时间以递增形式进行变化。
第一服务器和第二服务器上除了存储第一记录对象的事件信息之外还存储有除第一记录对象之外的第二记录对象执行事件的信息。第一记录对象和多个第二记录对象执行事件的执行顺序可以通过多个执行顺序号表示,每个事件对应一个执行顺序号,执行顺序号按照时间以递增形式进行变化,也即,越靠近当前时间的事件对应的执行顺序号就越大。可选地,当事件为交易事件时,多个执行顺序号可以为交易高度,也即,为严格递增的交易顺序号。
步骤S402,第一服务器将最大的执行顺序号确定为目标执行顺序号。
在本发明上述步骤S402提供的技术方案中,当第一服务器查询到多个执行顺序号中数值最大的执行顺序号时,且数值最大的执行顺序号对应的第四操作信息在第一服务器上为与第一操作信息相邻的未被篡改的上一操作信息时,第一服务器将最大的执行顺序号确定为目标执行顺序号。
第一服务器在对第一服务器上的第一记录对象和多个第二记录对象执行事件的多个执行顺序号进行查询,得到多个执行顺序号中数值最大的执行顺序号,优选地,该数值最大的执行顺序号对应的第四操作信息为未被篡改的操作信息,且为与第一操作信息相邻的上一操作信息。比如,执行事件产生的操作信息为A操作信息、B操作信息、C操作信息,其中,C操作信息为被篡改过的第一操作信息,B操作信息为与C操作信息相邻的上一操作信息,A操作信息为与B操作信息相邻的上一操作信息,A操作信息对应的执行顺序号为1,B操作信息对应的执行顺序号为2,C操作信息对应的执行顺序号为3,则B操作信息对应的执行顺序号2为目标执行顺序号。
第一服务器和第二服务器上的第一记录对象和多个第二记录对象执行事件的多个执行顺序号相同。
步骤S403,第一服务器根据目标执行顺序号向至少一个第二服务器发送第一查询请求。
在本发明上述步骤S403提供的技术方案中,第一服务器根据目标执行顺序号向至少一个第二服务器发送第一查询请求,其中,第一查询请求用于向每个第二服务器请求根据第四操作信息查询第二操作信息。
第一服务器在将最大的执行顺序号确定为目标执行顺序号之后,根据目标执行顺序号向至少一个第二服务器发送第一查询请求。由于第四操作信息在第一服务器上为与第一操作信息相邻的未被篡改的上一操作信息,每个第二服务器响应第一查询请求根据第四操作信息查询第二操作信息。比如,第二服务器上执行事件产生的操作信息为A操作信息、B操作信息、C’操作信息,B操作信息为上述第四操作信息,C’操作信息为上述第二操作信息,可以为正确的操作信息,第二服务器响应第一查询请求根据B操作信息查询C’操作信息。
该实施例通过第一服务器对第一记录对象和第一服务器上的多个第二记录对象执行事件的多个执行顺序号进行查询;将最大的执行顺序号确定为目标执行顺序号;第一服务器根据目标执行顺序号向至少一个第二服务器发送第一查询请求,实现了第一服务器向至少一个第二服务器发送第一查询请求的目的,第一服务器进而对每个第二服务器响应第一查询请求得到的第二操作信息进行合并处理,得到合并操作信息,根据合并操作信息对第一操作信息进行修复处理,得到第一记录对象的第三操作信息,提高了事件处理的效率。
作为一种可选的实施方式,第一服务器对每个第二服务器响应第一查询请求得到的第二操作信息进行合并处理,得到合并操作信息包括:第一服务器获取多条第二操作信息;第一服务器从多条第二操作信息中获取第一子操作信息,相同的第一子操作信息的数量多于多条第二操作信息中除第一子操作信息之外的不同的第二子操作信息的数量;第一服务器将第一子操作信息确定为合并操作信息。
图5是根据本发明实施例的一种第一服务器对每个第二服务器响应第一查询请求得到的第二操作信息进行合并处理的方法的流程图。如图5所示,该方法包括以下步骤:
步骤S501,第一服务器获取多条第二操作信息。
在本发明上述步骤S501提供的技术方案中,第一服务器获取多条第二操作信息,其中,多条第二操作信息分别与至少一个第二服务器相对应,多条第二操作信息包括不同的子操作信息。
第一服务器在向至少一个第二服务器发送第一查询请求之后,每个第一服务器对第一查询请求进行响应,第一服务器接收与至少一个第二服务器相对应的第二操作信息,得到多条操作信息。多条第二操作信息包括不同的子操作信息,比如,多条第二操作信息包括的子操作信息为2条A操作信息、1条A’操作信息,1条A”操作信息,其中,2条A操作信息为未被篡改过的操作信息,1条A’操作信息、1条A”操作信息为被篡改过的不同的操作信息,均来自不同的第二服务器。
步骤S502,第一服务器从多条第二操作信息中获取第一子操作信息。
在本发明上述步骤S502提供的技术方案中,第一服务器从多条第二操作信息中获取第一子操作信息,其中,相同的第一子操作信息的数量多于多条第二操作信息中除第一子操作信息之外的不同的第二子操作信息的数量。
第一服务器在获取多条第二操作信息之后,从多条第二操作信息中获取第一子操作信息,相同的第一子操作信息的数量多于多条第二操作信息中除第一子操作信息之外的不同的第二子操作信息的数量。比如,多条第二操作信息包括的第一子操作信息为2条A操作信息,第二子操作信息为1条A’操作信息、1条A”操作信息,其中,2条A操作信息为未被篡改过的内容完全相同的操作信息,1条A’操作信息、1条A”操作信息为被篡改过的内容不同的第二子操作信息,均来自不同的第二服务器,其中,A操作信息的数量多于A’操作信息的数量和A”操作信息的数量。
步骤S503,第一服务器将第一子操作信息确定为合并操作信息。
在本发明上述步骤S503提供的技术方案中,第一服务器将第一子操作信息确定为合并操作信息。
第一服务器在从多条第二操作信息中获取第一子操作信息之后,将第一子操作信息确定为合并操作信息,也即,合并操作信息是由多数相同的第一子操作信息确定,第一服务器对接收到的多条第二操作信息按照多数一致原则进行合并,得到用于对被篡改过的第一操作信息进行修复处理的合并操作信息。
该实施例通过第一服务器获取多条第二操作信息;第一服务器从多条第二操作信息中获取第一子操作信息,相同的第一子操作信息的数量多于多条第二操作信息中除第一子操作信息之外的不同的第二子操作信息的数量;第一服务器将第一子操作信息确定为合并操作信息,实现了第一服务器对每个第二服务器响应第一查询请求得到的第二操作信息进行合并处理,得到合并操作信息的目的,进而根据合并操作信息对第一操作信息进行修复,提高了事件处理的效率。
作为一种可选的实施方式,第一服务器根据合并操作信息对第一操作信息进行修复处理,得到第一记录对象的第三操作信息包括:第一服务器将第一操作信息替换为合并操作信息,得到第三操作信息。
在第一服务器根据合并操作信息对第一操作信息进行修复处理,得到第一记录对象的第三操作信息时,用合并操作信息替换第一操作信息来达到对第一操作信息进行修复的目的。可选地,在第一服务器对每个第二服务器响应第一查询请求得到的第二操作信息进行合并处理,得到合并操作信息之后,第一服务器当验证出第一操作信息不符合预设规则时,将第一操作信息替换为合并操作信息,也即,将被篡改过的第一操作信息修复为正确的第三操作信息,进而可以执行新的事件。
作为一种可选的实施方式,第一事件信息还包括第一记录对象在执行第一事件时,第一记录对象的记录信息,第一服务器判断第一记录对象在执行第一事件得到的第一事件信息是否为被篡改过的事件信息包括:在第一操作信息为未被篡改的操作信息的情况下,第一服务器判断第一记录对象在执行第一事件得到的第一记录信息是否为被篡改过的记录信息。
第一事件信息除了包括第一操作信息之外,还包括第一记录对象的记录信息,比如,当事件为交易事件、第一操作信息为第一交易信息时,第一事件信息还包括账户信息。在第一操作信息为未被篡改的操作信息的情况下,第一服务器判断第一记录对象在执行第一事件得到的第一记录信息是否为被篡改过的记录信息。
可选地,当事件为交易事件时,第一记录信息为账户信息,包括余额信息、附加字段、最后交易高度、最后交易哈希、账户哈希、签名信息等。
作为一种可选的实施方式,第一服务器在判断第一记录对象在执行第一事件得到的第一记录信息为被篡改过的记录信息之后,第一服务器对第一操作信息中的剩余事件资源和附加信息进行修复处理,得到第二记录信息。
图6是根据本发明实施例的另一种事件处理方法的流程图。如图6所示,该方法还包括:
步骤S601,第一服务器获取第一操作信息中的剩余事件资源和附加信息。
在本发明上述步骤S601提供的技术方案中,第一服务器如果判断出第一记录对象在执行第一事件得到的第一记录信息为被篡改过的记录信息,第一服务器获取第一操作信息中的剩余事件资源和附加信息。
第一记录信息在被篡改时是无法执行事件的,需要对第一记录信息进行修复。可以根据第一记录对象的地址信息在第一服务器中查找到第一记录对象的最后一条操作信息。可选地,由于第一服务器和至少一个第二服务器都存储记录对象在执行事件时的事件信息,因而可以根据第一记录对象的地址信息从至少一个第二服务器上进行查询,通过多数一致原则确定第一记录对象的最后一条操作信息。
由于区块链的事件信息采用哈希链式结构,在前一事件信息验证通过的情况下,才能执行新的事件操作,产生新的操作信息,第一操作信息为最后的未被篡改的操作信息,第一服务器获取第一操作信息中的剩余事件资源和附加信息。剩余事件资源为截止当前时间第一记录对象记录的剩余事件资源,包括总事件资源向其它记录对象转出资源之后剩余的事件资源,附加信息可以为在事件执行时任意调用的附加信息,此处不做限定。
步骤S602,第一服务器根据剩余事件资源和附加信息对第一记录信息进行修复处理,得到第二记录信息。
在本发明上述步骤S602提供的技术方案中,第一服务器根据剩余事件资源和附加信息对第一记录信息进行修复处理,得到第二记录信息,该第二记录信息为第二记录对象的正确的记录信息。
可选地,当事件为交易事件时,第一记录对象为账户信息,在账户信息被篡改时是无法发起交易事件的,需要对账户信息进行修复。首先根据账户信息中的账户地址查询第一服务器中的与此账户地址相关的最后一条交易信息。根据最后一条交易信息的余额信息和附加信息对账户信息进行修复。
该实施例通过在第一服务器在判断第一记录对象在执行第一事件得到的第一记录信息是否为被篡改过的记录信息之后,第一服务器如果判断出第一记录对象在执行第一事件得到的第一记录信息为被篡改过的记录信息,第一服务器获取第一操作信息中的剩余事件资源和附加信息;第一服务器根据剩余事件资源和附加信息对第一记录信息进行修复处理,得到第二记录信息,可以对个别被破环的账户信息进行快速恢复,提高了信息修复的速度,进而提高了事件处理的效率。
作为一种可选的实施方式,第一事件信息包括第一记录对象在执行第一事件时,进行操作的第一操作信息和第一记录对象的记录信息,步骤S202,第一服务器判断第一记录对象在执行第一事件得到的第一事件信息是否为被篡改过的事件信息包括:第一服务器判断第一记录对象在执行第一事件得到的第一操作信息是否为被篡改过的操作信息,且判断第一记录对象在执行第一事件得到的第一记录信息是否为被篡改过的记录信息。
可选地,第一操作信息为执行交易事件得到的第一账户的第一交易信息,第一记录信息为执行交易事件的账户信息。该交易信息为第一账户的操作信息。服务器判断第一记录对象在执行交易事件得到的第一操作信息是否为被篡改过的操作信息,且判断第一记录对象在执行交易事件得到的第一记录信息是否为被篡改过的记录信息。
步骤S204,第一服务器如果判断出第一事件信息为被篡改过的事件信息,向至少一个第二服务器发送查询请求包括:第一服务器如果判断出第一操作信息为被篡改过的操作信息,且判断出第一记录信息为被篡改过的记录信息,根据第一记录信息中的标识信息向至少一个第二服务器发送第二查询请求。
第一服务器在判断第一记录对象在执行第一事件得到的第一操作信息是否为被篡改过的操作信息,且判断第一记录对象在执行第一事件得到的第一记录信息是否为被篡改过的记录信息之后,如果判断出第一操作信息为被篡改过的操作信息,且判断出第一记录信息为被篡改过的记录信息,也即,第一操作信息和第一记录信息均被篡改,获取第一记录对象中的标识信息,该标识信息可以用于唯一标识第一记录对象,比如,为第一记录对象的地址信息,第一服务器根据第一记录信息中的标识信息向至少一个第二服务器发送第二查询请求。
步骤S206,第一服务器对每个第二服务器响应查询请求得到的第二事件信息进行合并处理,得到合并事件信息包括:第一服务器对每个第二服务器响应第二查询请求得到的操作信息列表进行合并处理,得到合并操作信息列表。
在第一服务器根据第一记录信息中的标识信息向至少一个第二服务器发送第二查询请求之后,每个第二服务器响应第二查询请求,根据标识信息查找到与该标识信息有关的所有操作信息,得到操作信息列表,第一服务器接收每个第二服务器发送的操作信息列表,并对操作信息列表进行合并处理,得到合并操作信息列表。
可选地,当事件为交易事件时,账户信息和最后一条交易信息均被篡改时,需要同时对两者进行恢复。首先,根据账户地址到剩余节点查询与此账户地址相关的所有交易信息,得到交易信息列表。其次,根据多数一致原则合并多个节点返回的交易信息列表。
步骤S208,第一服务器根据合并事件信息对第一事件信息进行修复处理,得到第一记录对象的第三事件信息包括:第一服务器根据合并操作信息列表对第一操作信息进行修复处理,得到第一记录对象的第三操作信息,且根据第三操作信息对第一记录信息进行修复处理,得到第一记录对象的第二记录信息。
第一服务器在对每个第二服务器响应第二查询请求得到的操作信息列表进行合并处理,得到合并操作信息列表之后,第一服务器根据合并操作信息列表对第一操作信息进行修复处理,得到第一记录对象的第三操作信息,且根据第三操作信息对第一记录信息进行修复处理,得到第一记录对象的第二记录信息。
可选地,当事件为交易事件时,遍历合并交易信息列表,用合并交易信息列表中的每个交易信息的哈希字段查询被篡改节点的交易信息中上一条哈希字段,如果查询成功用合并交易信息修复被篡改的交易信息,得到正确的交易信息,根据正确的交易信息中的余额信息和附加信息修复被篡改的账户信息,实现了对事件信息进行修复的目的,进而提高了事件处理的效率。
作为一种可选的实施方式,第一服务器对每个第二服务器响应第二查询请求得到的操作信息列表进行合并处理,得到合并操作信息列表包括:第一服务器获取多个操作信息列表;第一服务器从多个操作信息列表中获取第一子操作信息列表;第一服务器将第一子操作信息列表确定为合并操作信息列表。
图7是根据本发明实施例的一种第一服务器对每个第二服务器响应第二查询请求得到的操作信息列表进行合并处理的方法的流程图。如图7所示,该方法包括以下步骤:
步骤S701,第一服务器获取多个操作信息列表。
在本发明上述步骤S701提供的技术方案中,第一服务器获取多个操作信息列表,其中,多个操作信息列表与至少一个第二服务器相对应,多个操作信息列表包括不同的子操作信息列表。
第一服务器在向至少一个第二服务器发送第二查询请求之后,每个第一服务器对第二查询请求进行响应,第一服务器接收与至少一个第二服务器相对应的操作信息列表,得到多个操作信息列表。多个操作信息列表包括不同的子操作信息列表,比如,多个第二操作信息列表包括的子操作信息列表为2个A操作信息列表、1个A’操作信息列表,1个A”操作信息列表,其中,2个A操作信息列表为未被篡改过的操作信息列表,1个A’操作信息列表、1个A”操作信息列表为被篡改过的不同的操作信息列表,均来自不同的第二服务器。
步骤S702,第一服务器从多个操作信息列表中获取第一子操作信息列表。
在本发明上述步S702提供的技术方案中,第一服务器从多个操作信息列表中获取第一子操作信息列表,其中,相同的第一子操作信息列表的数量多于多个操作信息列表中除第一子操作信息列表之外的不同的第二子操作信息列表的数量。
第一服务器在获取多个操作信息列表之后,从多个操作信息列表中获取第一子操作信息列表,相同的第一子操作信息列表的数量多于多个操作信息列表中除第一子操作信息列表之外的不同的第二子操作信息列表的数量。比如,多个第二操作信息列表包括的第一子操作信息列表为2个A操作信息列表,第二子操作信息列表为1个A’操作信息列表、1个A”操作信息列表,其中,2个A操作信息列表为未被篡改过的内容完全相同的操作信息列表,1个A’操作信息列表、1个A”操作信息列表为被篡改过的内容不同的第二子操作信息列表,均来自不同的第二服务器,其中,A操作信息列表的数量多于A’操作信息列表的数量和A”操作信息列表的数量。
步骤S703,第一服务器将第一子操作信息列表确定为合并操作信息列表。
在本发明上述步骤S703提供的技术方案中,第一服务器将第一子操作信息列表确定为合并操作信息列表。
第一服务器在从多个操作信息列表中获取第一子操作信息列表之后,将第一子操作信息列表确定为合并操作信息列表,也即,合并操作信息列表是由多数相同的操作信息列表确定,第一服务器对接收到的多个操作信息列表按照多数一致原则进行合并,得到用于对被篡改过的第一操作信息进行修复处理的合并操作信息列表,该合并操作信息列表包括相同的标识信息对应的操作信息,进而根据合并操作信息列表对第一操作信息进行修复,得到正确的操作信息。
该实施例通过第一服务器获取多个操作信息列表;第一服务器从多个操作信息列表中获取第一子操作信息列表;第一服务器将第一子操作信息列表确定为合并操作信息列表,实现了第一服务器对每个第二服务器响应第一查询请求得到的操作信息列表进行多数一致原则的合并处理,根据得到合并操作信息列表对第一操作信息进行修复,得到正确的操作信息的目的。
作为一种可选的实施方式,第一服务器根据合并操作信息列表对第一操作信息进行修复处理,得到第三操作信息包括:第一服务器遍历合并操作信息列表;获取合并操作信息列表中的每条操作信息;第一服务器根据每条操作信息中的预设字段查询位于第一操作信息之前的上一条操作信息中的预设字段;第一服务器在根据每条操作信息中的预设字段查询到位于第一操作信息之前的上一条操作信息中的预设字段的情况下,将第一操作信息替换为合并事件信息列表。
图8是根据本发明实施例的一种第一服务器根据合并操作信息列表对第一操作信息进行修复处理的方法的流程图。如图8所示,该方法包括以下步骤:
步骤S801,第一服务器遍历合并操作信息列表。
在本发明上述步骤S801的技术方案中,第一服务器遍历合并操作信息列表。
合并操作信息列表中的事件信息的数据结构为区块链,采用哈希链式结构。第一服务器在将第一子操作信息列表确定为合并操作信息列表之后,反向遍历合并操作信息列表。
步骤S802,第一服务器获取合并操作信息列表中的每条操作信息。
在本发明上述步骤S802提供的技术方案中,第一服务器获取合并操作信息列表中的每条操作信息。
所述步骤S803,第一服务器根据每条操作信息中的预设字段查询位于第一操作信息之前的上一条操作信息中的预设字段。
在本发明上述步骤S803提供的技术方案中,第一服务器根据每条操作信息中的预设字段查询位于第一操作信息之前的上一条操作信息中的预设字段。
在反向遍历合并交易信息列表的过程中,第一服务器获取每条操作信息,根据每条操作信息中的预设字段查询位于第一操作信息之前的上一条操作信息中的预设字段,可选地,预设字段为哈希字段,用每个操作信息中的哈希字段查询第一服务器的上的被篡改操作信息中的上一条操作信息的哈希字段。
步骤S804,第一服务器将第一操作信息替换为合并事件信息列表。
在本发明上述步骤S804提供的技术方案中,第一服务器在根据每条操作信息中的预设字段查询到位于第一操作信息之前的上一条操作信息中的预设字段的情况下,将第一操作信息替换为合并事件信息列表。
第一服务器在根据每条操作信息中的预设字段查询位于第一操作信息之前的上一条操作信息中的预设字段之后,将第一操作信息替换为合并事件信息列表,也即,用合并操作信息列表覆盖被篡改过的事件信息,从而实现了对第一操作信息的修复。
作为一种可选的实施方式,在根据每条操作信息中的预设字段查询第一操作信息的上一条操作信息中的预设字段之后,在根据每条操作信息中的预设字段未查询到第一操作信息的上一条操作信息中的预设字段的情况下,确定对第一事件信息修复失败。
在根据每条操作信息中的预设字段查询第一操作信息的上一条操作信息中的预设字段之后,在合并事件信息列表的表头还未查询到第一操作信息的上一条操作信息中的预设字段时,确定对第一事件修复失败。
作为一种可选的实施方式,服务器根据第三操作信息对第一记录信息进行修复处理,得到第一记录对象的第二记录信息包括:第一服务器判断第三操作信息是否正确串联在事件链上;第一服务器如果判断出第三操作信息正确串联在事件链上,根据第三操作信息中的剩余事件资源和附加信息对第一记录信息进行修复处理,得到第二记录信息。
图9是根据本发明实施例的一种服务器根据第三操作信息对第一记录信息进行修复处理的方法的流程图。如图9所示,该方法包括以下步骤:
步骤S901,第一服务器判断第三操作信息是否正确串联在事件链上。
在本发明上述步骤S901提供的技术方案中,第一服务器判断第三操作信息是否正确串联在事件链上,其中,事件链上的事件信息以链式结构存储。
服务器在根据合并操作信息列表对第一操作信息进行修复处理,得到第一记录对象的第三操作信息之后,服务器在根据第三操作信息对第一记录信息进行修复处理时,判断第三操作信息是否正确串联在事件链上。可选地,判断最后查询得到的被篡改节点的交易信息是否按照每一条操作信息中包括上一操作信息的地址信息进行链接,也即,对事件链在进行查询时,按照从后往前的顺序进行查询。第一服务器如果判断出第三操作信息正确串联在事件链上,执行步骤S902,第一服务器如果判断出第三操作信息未正确串联在事件链上,则确定对第一记录信息修复失败。
步骤S902,第一服务器根据第三操作信息中的剩余事件资源和附加信息对第一记录信息进行修复处理,得到第二记录信息。
在本发明上述步骤S902提供的技术方案中,第一服务器如果判断出第三操作信息正确串联在事件链上,根据第三操作信息中的剩余事件资源和附加信息对第一记录信息进行修复处理,得到第二记录信息。
第一服务器在判断第三操作信息是否正确串联在事件链上之后,如果第一服务器判断出第三操作信息正确串联在事件链上,获取第三操作信息中的剩余事件资源和附加信息,其中,剩余事件资源为截止当前时间第一记录对象中记录的剩余事件资源,附加信息可以为在事件执行时任意调用的附加信息,此处不做限定。根据剩余事件资源和附件信息对第一记录信息进行修复处理,得到第二记录信息。
该实施例通过第一服务器判断第三操作信息是否正确串联在事件链上储;第一服务器如果判断出第三操作信息正确串联在事件链上,根据第三操作信息中的剩余事件资源和附加信息对第一记录信息进行修复处理,得到第二记录信息,实现了服务器根据第三操作信息对第一记录信息进行修复处理,得到第一记录对象的第二记录信息目的,实现了对被篡改过的第一记录对象进行修复,进而提高了事件处理的效率。
作为一种可选的实施方式,在判断第三操作信息是否正确串联在事件链上之后,如果判断出第三操作信息未正确串联在事件链上,确定对第一记录信息修复失败。
实施例2
下面结合优选的实施例对本发明的技术方案进行说明。具体以事件为交易事件、记录对象为账户,记录信息为账户信息进行说明。
在该实施例中,事件的数据结构包括两种基本数据结构:账户信息、交易信息。
表1账户信息
Figure BDA0001215142750000261
该实施例的账户信息包括:账户地址、余额信息、附加字段、最后交易高度、最后交易哈希、账户哈希和签名。其中,账户地址可以为公钥地址为用户账户的唯一标识;余额信息为账户截止当前记录的资源信息;附件字段可以为调用的任何业务信息,此处不做限定;最后交易高度用于表示严格递增的交易顺序号中的最大交易顺序号,最后交易哈希用于唯一标识最后交易的字段;账户哈希用于唯一标识账户信息的字段;签名用于表示用户的信息。
需要说明的是,上述账户信息仅为本发明实施例的优选账户信息,并不代表本发明实施例的账户信息仅为上述信息,此处不做限定。
表2交易信息
Figure BDA0001215142750000262
该实施例的交易信息包括:交易序号、交易高度、转出账户地址、转入账户地址、转出额度、转出账户余额、转入账户余额、附加字段、账户备份信息、上一条交易哈希和本条交易哈希。其中,交易序号为客户端向服务器发送的事件执行时的序号;交易高度用于表示严格递增的交易顺序号;转出账户地为转出事件资源的记录对象在服务器上的地址,转入账户地址为转出事件资源的记录对象将事件资源转入的记录对象在服务器上的地址;转出额度为上述转出事件资源;转出账户余额为转出事件资源的记录对象当前记录的剩余事件资源;转入账户余额为转入事件资源的目标对象当前记录的剩余事件资源;账户备份信息为对交易信息的备份;上一条交易哈希用于唯一表示上一条交易信息;本条交易哈希用于唯一标识本条交易哈希。
下面对事件信息进行修复的方法进行说明。
图10是根据本发明实施例的一种对被篡改过的操作信息进行修复的示意图。如图10所示,操作信息可以为交易信息。当最后一条交易信息被篡改时,由于区块链的交易信息是采用哈希链式结构,所以在执行新交易时,会对前一交易信息进行验证。如果前一交易信息验证不通过,则下一交易信息就无法生成,因而当检测到前一交易信息错误时必须对前一交易信息进行修复。在对交易信息进行修复时,首先查询本节点所有账户中交易高度最大的值,根据查询所得的交易高度最大值从剩余的节点中查询与交易高度最大的值相对应的交易信息,如节点A交易信息、节点B交易信息、节点C交易信息和节点D交易信息,其中,节点A交易信息、节点B交易信息、节点C交易信息为正确的、未被篡改过的交易信息,节点D交易信息为被篡改过的交易信息。
在从剩余的节点中查询与交易高度最大的值相对应的交易信息之后,将查询到的节点A交易信息、节点B交易信息、节点C交易信息和节点D交易信息进行合并,可以按照多数一致原则对查询到的交易信息进行合并也即,最终的合并信息由多数相同的结果决定,比如,节点A交易信息、节点B交易信息、节点C交易信息为正确的、未被篡改的交易信息,只有节点D交易信息为篡改过,则将正确的、未被篡改的交易信息确定为最红的合并交易信息。用合并交易信息替换被篡改后的最后一条交易信息来达到对最后一条交易信息进行修复的目的,提高了事件处理的效率。
图11是根据本发明实施例的一种对被篡改过的记录对象的信息进行修复的示意图。如图11所示,记录对象的信息可以为账户信息。当账户信息被篡改时是无法发起交易的,需要对账户信息进行修复。首先获取账户信息的账户地址,根据账户地址查询本节点中的与此账户地址相关的最后一条交易信息。根据最后一条交易信息的余额信息和附加信息对账户信息进行恢复,从而实现了当账户信息为篡改时,对账户信息进行修复的目标,提高了事件处理的效率。
图12是根据本发明实施例的一种对被篡改过的操作信息和记录对象的信息均进行修复的示意图。如图12所示,操作信息可以为交易信息,记录对象的信息可以为账户信息。当账户信息和最后一条交易信息均被篡改时,需要对两者进行修复。首先,获取被篡改交易信息对应的账户地址,根据账户地址到剩余节点查询与此账户地址相关的所有交易信息,得到交易信息列表,其中,在图12中的被篡改交易信息部分中,从上往下,第一方框和第五方框用于表示正确的交易信息,第二方框至第四方框为交易信息被篡改的部分,在合并信息列表部分中,从上往下,第一方框和第五方框用于表示正确的交易信息,第二方框至第四方框用于表示对被篡改交易信息进行覆盖的交易信息。其次,根据多数一致原则合并多个节点返回的交易信息列表,得到合并交易信息列表。最后,根据合并交易信息列表匹配本被篡改节点的交易信息链。
根据合并后的交易信息列表匹配本被篡改节点的交易信息链包括以下步骤:
第一步,反向遍历合并交易信息列表,用合并交易信息列表中的每条交易信息的哈希字段查询被篡改节点的交易信息中上一条交易哈希字段,如果查询成功执行第二步,如果到达合并交易信息列表的表头还未查询到上一条交易哈希字段,执行第五步,如果还未到达合并交易信息列表的表头,继续反向遍历合并交易信息列表。
第二步,在用合并交易信息列表中的每条交易信息的哈希字段查询到被篡改节点的交易信息中上一条交易哈希字段的情况下,用合并交易信息覆盖被篡改交易信息。可选地,将合并交易信息列表的信息沿着图12所示虚箭头指向的方向替换掉被篡改交易信息,得到匹配的正确的交易信息,执行第三步。
第三步,判断最后匹配的正确的交易信息是否被正确串联在交易链上,如图12,将合并交易信息列表中的从上往下第4个方框表示的信息覆盖到被篡改交易信息中的从上往下第4个方框表示的信息,为最后匹配的正确的交易信息。如果最后匹配的正确的交易信息被正确串联在交易链上,执行第四步;如果最后匹配的正确的交易信息未被正确串联在交易链上,执行第五步。
第四步,根据最后匹配的正确的交易信息的余额信息和附加信息修复被篡改的账户信息。
第五步,修复失败。
该实施例可以应用在区块链数据库的数据快速修复功能当中。通过根据合并后的交易信息列表匹配本被篡改节点的交易信息链,可以对个别被破环的交易信息和账户信息进行快速恢复,提高了事件处理的效率。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例3
根据本发明实施例,还提供了一种用于实施上述事件处理方法的事件处理装置。图13是根据本发明实施例的一种事件处理装置的示意图。如图13所示,该装置可以包括:判断单元10、发送单元20、第一处理单元30和第二处理单元40。
判断单元10,用于使第一服务器判断第一记录对象在执行第一事件得到的第一事件信息是否为被篡改过的事件信息。
发送单元20,用于使第一服务器如果判断出第一事件信息为被篡改过的事件信息,向至少一个第二服务器发送查询请求,其中,每个第二服务器上存储第一记录对象在执行第一事件得到的第二事件信息,查询请求用于向每个第二服务器请求查询第二事件信息,第二事件信息用于对第一事件信息进行修复。
第一处理单元30,用于使第一服务器对每个第二服务器响应查询请求得到的第二事件信息进行合并处理,得到合并事件信息。
第二处理单元40,用于第一服务器根据合并事件信息对第一事件信息进行修复处理,得到第一记录对象的第三事件信息。
可选地,所述判断单元10包括第一判断模块,用于使第一服务器判断第一记录对象在执行第一事件得到的第一操作信息是否为被篡改过的操作信息;发送单元20包括第一发送模块,用于使第一服务器如果判断出第一操作信息为被篡改过的操作信息,向至少一个第二服务器发送第一查询请求,其中,每个第二服务器上存储第一记录对象在对第一事件进行操作的第二操作信息,第一查询请求用于向每个第二服务器请求查询第二操作信息;第一处理单元30包括第一处理模块,用于使第一服务器对每个第二服务器响应第一查询请求得到的第二操作信息进行合并处理,得到合并操作信息,其中,合并事件信息包括合并操作信息,其中,第二操作信息用于对第一操作信息进行修复;第二处理单元40包括第二处理模块,用于使第一服务器根据合并操作信息对第一操作信息进行修复处理,得到第一记录对象的第三操作信息,其中,第三事件信息包括第三操作信息。
可选地,第一判断模块包括:第一获取子模块、验证子模块、第一确定子模块和第二确定子模块。其中,第一获取子模块,用于使第一服务器在第一记录对象执行第二事件之前,获取第一操作信息,其中,第二事件为在第一事件执行之后与第一事件相邻的事件;验证子模块,用于使第一服务器对第一操作信息进行验证;第一确定子模块,用于使第一服务器当验证出第一操作信息符合预设规则时,确定第一操作信息为未被篡改过的操作信息,其中,第二事件在确定第一操作信息为未被篡改过的操作信息之后执行;第二确定子模块,用于使第一服务器当验证出第一操作信息不符合预设规则时,确定第一操作信息为被篡改过的操作信息。
可选地,第一服务器和第二服务器上分别还存储多个第二记录对象执行事件得到的操作信息,第一发送模块包括:查询子模块、第三确定子模块和发送子模块。其中,查询子模块,用于使第一服务器对第一记录对象和第一服务器上的多个第二记录对象执行事件的多个执行顺序号进行查询,其中,多个执行顺序号用于指示第一记录对象和多个第二记录对象执行事件的执行顺序,执行顺序号按照时间以递增形式进行变化;第三确定子模块,用于当第一服务器查询到多个执行顺序号中数值最大的执行顺序号时,且数值最大的执行顺序号对应的第四操作信息在第一服务器上为与第一操作信息相邻的未被篡改的上一操作信息时,使第一服务器将最大的执行顺序号确定为目标执行顺序号;发送子模块,用于使第一服务器根据目标执行顺序号向至少一个第二服务器发送第一查询请求,其中,第一查询请求用于向每个第二服务器请求根据第四操作信息查询第二操作信息。
可选地,第一处理模块包括:第二获取子模块、第三获取子模块和第四确定子模块。其中,第二获取子模块,用于使第一服务器获取多条第二操作信息,其中,多条第二操作信息分别与至少一个第二服务器相对应,多条第二操作信息包括不同的子操作信息;第三获取子模块,用于使第一服务器从多条第二操作信息中获取第一子操作信息,其中,相同的第一子操作信息的数量多于多条第二操作信息中除第一子操作信息之外的不同的第二子操作信息的数量;第四确定子模块,用于使第一服务器将第一子操作信息确定为合并操作信息。
可选地,第二处理模块包括替换子模块,用于使第一服务器将第一操作信息替换为合并操作信息,得到第三操作信息。
可选地,第一事件信息还包括第一记录对象在执行第一事件时,第一记录对象的记录信息,判断单元10包括:第二判断模块,用于在第一操作信息为未被篡改的操作信息的情况下,使第一服务器判断第一记录对象在执行第一事件得到的第一记录信息是否为被篡改过的记录信息。
可选地,该事件处理装置还包括:获取单元和处理单元。其中,获取单元,第一服务器在判断第一记录对象在执行第一事件得到的第一记录信息是否为被篡改过的记录信息之后,第一服务器如果判断出第一记录对象在执行第一事件得到的第一记录信息为被篡改过的记录信息,使第一服务器获取第一操作信息中的剩余事件资源和附加信息;处理单元,第一服务器根据剩余事件资源和附加信息对第一记录信息进行修复处理,得到第二记录信息。
可选地,第一事件信息包括第一记录对象在执行第一事件时,进行操作的第一操作信息和第一记录对象的记录信息,判断单元10包括第三判断模块,用于使第一服务器判断第一记录对象在执行第一事件得到的第一操作信息是否为被篡改过的操作信息,且判断第一记录对象在执行第一事件得到的第一记录信息是否为被篡改过的记录信息;发送单元20包括第二发送模块,用于使第一服务器如果判断出第一操作信息为被篡改过的操作信息,且判断出第一记录信息为被篡改过的记录信息,根据第一记录信息中的标识信息向至少一个第二服务器发送第二查询请求,其中,每个第二服务器上存储第一记录对象在执行第一事件时对第一事件进行操作的第二操作信息,第二查询请求用于向每个第二服务器请求查询与标识信息相对应的第二操作信息,与标识信息相对应的第二操作信息用于对第一操作信息进行修复;第一处理单元30包括第三处理模块,用于使第一服务器对每个第二服务器响应第二查询请求得到的操作信息列表进行合并处理,得到合并操作信息列表,其中,操作信息列表包括在第二服务器上标识信息对应的多条操作信息,合并事件信息包括合并操作信息列表;第二处理单元40包括第四处理模块,用于使第一服务器根据合并操作信息列表对第一操作信息进行修复处理,得到第一记录对象的第三操作信息,且根据第三操作信息对第一记录信息进行修复处理,得到第一记录对象的第二记录信息,其中,第三事件信息包括第三操作信息和第二记录信息。
可选地,第三处理模块包括:第四获取子模块、第五获取子模块和第五确定子模块。其中,第四获取子模块,用于第一服务器获取多个操作信息列表,其中,多个操作信息列表与至少一个第二服务器相对应,多个操作信息列表包括不同的子操作信息列表;第五获取子模块,用于使第一服务器从多个操作信息列表中获取第一子操作信息列表,其中,相同的第一子操作信息列表的数量多于多个操作信息列表中除第一子操作信息列表之外的不同的第二子操作信息列表的数量;第五确定子模块,用于使第一服务器将第一子操作信息列表确定为合并操作信息列表。
可选地,第四处理模块包括:遍历子模块、第六获取子模块、查询子模块和替换子模块。其中,遍历子模块,用于使第一服务器遍历合并操作信息列表;第六获取子模块,用于使第一服务器获取合并操作信息列表中的每条操作信息;查询子模块,第一服务器根据每条操作信息中的预设字段查询位于第一操作信息之前的上一条操作信息中的预设字段;替换子模块,用于使第一服务器在根据每条操作信息中的预设字段查询到位于第一操作信息之前的上一条操作信息中的预设字段的情况下,将第一操作信息替换为合并事件信息列表。
可选地,该事件处理装置还确定单元,用于使第一服务器在根据每条操作信息中的预设字段查询第一操作信息的上一条操作信息中的预设字段之后,第一服务器在根据每条操作信息中的预设字段未查询到第一操作信息的上一条操作信息中的预设字段的情况下,确定对第一事件信息修复失败。
第二处理单元40包括:第四判断模块,用于使第一服务器判断第三操作信息是否正确串联在事件链上,其中,事件链上的事件信息以链式结构存储;第五处理模块,用于使第一服务器如果判断出第三操作信息正确串联在事件链上,根据第三操作信息中的剩余事件资源和附加信息对第一记录信息进行修复处理,得到第二记录信息。
可选地,该事件处理装置还包括:确定模块,用于在第一服务器判断第三操作信息是否正确串联在事件链上之后,第一服务器如果判断出第三操作信息未正确串联在事件链上,确定对第一记录信息修复失败。
需要说明的是,该实施例中的判断单元10可以用于执行本申请实施例1中的步骤S202,该实施例中的发送单元20可以用于执行本申请实施例1中的步骤S204,该实施例中的第一处理单元30可以用于执行本申请实施例1中的步骤S206,该实施例中的第二处理单元40可以用于执行本申请实施例1中的步骤S208。
该实施例通过判断单元10使第一服务器判断第一记录对象在执行第一事件得到的第一事件信息是否为被篡改过的事件信息,通过发送单元20使第一服务器如果判断出第一事件信息为被篡改过的事件信息,向至少一个第二服务器发送查询请求,其中,每个第二服务器上存储第一记录对象在执行第一事件得到的第二事件信息,查询请求用于向每个第二服务器请求查询第二事件信息,第二事件信息用于对第一事件信息进行修复,通过第一处理单元30使第一服务器对每个第二服务器响应查询请求得到的第二事件信息进行合并处理,得到合并事件信息,通过第二处理单元40使第一服务器根据合并事件信息对第一事件信息进行修复处理,得到第一记录对象的第三事件信息,达到了对事件处理的目的,从而实现了提高事件处理效率的技术效果,进而解决了相关技术的事件处理效率低的技术问题。
此处需要说明的是,上述单元和模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,其中,硬件环境包括网络环境。
实施例4
根据本发明实施例,还提供了一种用于实施上述事件处理方法的服务器或终端。
图14是根据本发明实施例的一种终端的结构框图。如图14所示,该终端可以包括:一个或多个(图中仅示出一个)处理器141、存储器143、以及传输装置145(如上述实施例中的发送装置),如图14所示,该终端还可以包括输入输出设备147。
其中,存储器143可用于存储软件程序以及模块,如本发明实施例中的事件方法和装置对应的程序指令/模块,处理器141通过运行存储在存储器143内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的事件处理方法。存储器143可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器143可进一步包括相对于处理器141远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
上述的传输装置145用于经由一个网络接收或者发送数据,还可以用于处理器与存储器之间的数据传输。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置145包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置145为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
其中,具体地,存储器143用于存储应用程序。
处理器141可以通过传输装置145调用存储器143存储的应用程序,以执行下述步骤:
第一服务器判断第一记录对象在执行第一事件得到的第一事件信息是否为被篡改过的事件信息;
第一服务器如果判断出第一事件信息为被篡改过的事件信息,向至少一个第二服务器发送查询请求,其中,每个第二服务器上存储第一记录对象在执行第一事件得到的第二事件信息,查询请求用于向每个第二服务器请求查询第二事件信息,第二事件信息用于对第一事件信息进行修复;
第一服务器对每个第二服务器响应查询请求得到的第二事件信息进行合并处理,得到合并事件信息;
第一服务器根据合并事件信息对第一事件信息进行修复处理,得到第一记录对象的第三事件信息。
处理器141还用于执行下述步骤:第一事件信息包括第一记录对象在执行第一事件时,对第一事件进行操作的第一操作信息,第一服务器判断第一记录对象在执行第一事件得到的第一操作信息是否为被篡改过的操作信息;第一服务器如果判断出第一操作信息为被篡改过的操作信息,向至少一个第二服务器发送第一查询请求,其中,每个第二服务器上存储第一记录对象在对第一事件进行操作的第二操作信息,第一查询请求用于向每个第二服务器请求查询第二操作信息;第一服务器对每个第二服务器响应第一查询请求得到的第二操作信息进行合并处理,得到合并操作信息,其中,合并事件信息包括合并操作信息,其中,第二操作信息用于对第一操作信息进行修复;第一服务器根据合并操作信息对第一操作信息进行修复处理,得到第一记录对象的第三操作信息,其中,第三事件信息包括第三操作信息。
处理器141还用于执行下述步骤:第一服务器在第一记录对象执行第二事件之前,获取第一操作信息,其中,第二事件为在第一事件执行之后与第一事件相邻的事件;第一服务器对第一操作信息进行验证;第一服务器当验证出第一操作信息符合预设规则时,确定第一操作信息为未被篡改过的操作信息,其中,第二事件在确定第一操作信息为未被篡改过的操作信息之后执行;第一服务器当验证出第一操作信息不符合预设规则时,确定第一操作信息为被篡改过的操作信息。
处理器141还用于执行下述步骤:第一服务器和第二服务器上分别还存储多个第二记录对象执行事件得到的操作信息,第一服务器对第一记录对象和第一服务器上的多个第二记录对象执行事件的多个执行顺序号进行查询,其中,多个执行顺序号用于指示第一记录对象和多个第二记录对象执行事件的执行顺序,执行顺序号按照时间以递增形式进行变化;当第一服务器查询到多个执行顺序号中数值最大的执行顺序号时,且数值最大的执行顺序号对应的第四操作信息在第一服务器上为与第一操作信息相邻的未被篡改的上一操作信息时,第一服务器将最大的执行顺序号确定为目标执行顺序号;第一服务器根据目标执行顺序号向至少一个第二服务器发送第一查询请求,其中,第一查询请求用于向每个第二服务器请求根据第四操作信息查询第二操作信息。
处理器141还用于执行下述步骤:第一服务器获取多条第二操作信息,其中,多条第二操作信息分别与至少一个第二服务器相对应,多条第二操作信息包括不同的子操作信息;第一服务器从多条第二操作信息中获取第一子操作信息,其中,相同的第一子操作信息的数量多于多条第二操作信息中除第一子操作信息之外的不同的第二子操作信息的数量;第一服务器将第一子操作信息确定为合并操作信息。
处理器141还用于执行下述步骤:第一服务器将第一操作信息替换为合并操作信息,得到第三操作信息。
处理器141还用于执行下述步骤:第一事件信息还包括第一记录对象在执行第一事件时,第一记录对象的记录信息,在第一操作信息为未被篡改的操作信息的情况下,第一服务器判断第一记录对象在执行第一事件得到的第一记录信息是否为被篡改过的记录信息。
处理器141还用于执行下述步骤:第一服务器在判断第一记录对象在执行第一事件得到的第一记录信息是否为被篡改过的记录信息之后,第一服务器如果判断出第一记录对象在执行第一事件得到的第一记录信息为被篡改过的记录信息,获取第一操作信息中的剩余事件资源和附加信息;第一服务器根据剩余事件资源和附加信息对第一记录信息进行修复处理,得到第二记录信息。
处理器141还用于执行下述步骤:第一事件信息包括第一记录对象在执行第一事件时,进行操作的第一操作信息和第一记录对象的记录信息,第一服务器判断第一记录对象在执行第一事件得到的第一操作信息是否为被篡改过的操作信息,且判断第一记录对象在执行第一事件得到的第一记录信息是否为被篡改过的记录信息;第一服务器如果判断出第一操作信息为被篡改过的操作信息,且判断出第一记录信息为被篡改过的记录信息,根据第一记录信息中的标识信息向至少一个第二服务器发送第二查询请求,其中,每个第二服务器上存储第一记录对象在执行第一事件时对第一事件进行操作的第二操作信息,第二查询请求用于向每个第二服务器请求查询与标识信息相对应的第二操作信息,与标识信息相对应的第二操作信息用于对第一操作信息进行修复;第一服务器对每个第二服务器响应第二查询请求得到的操作信息列表进行合并处理,得到合并操作信息列表,其中,操作信息列表包括在第二服务器上标识信息对应的多条操作信息,合并事件信息包括合并操作信息列表;第一服务器根据合并操作信息列表对第一操作信息进行修复处理,得到第一记录对象的第三操作信息,且根据第三操作信息对第一记录信息进行修复处理,得到第一记录对象的第二记录信息,其中,第三事件信息包括第三操作信息和第二记录信息。
处理器141还用于执行下述步骤:第一服务器获取多个操作信息列表,其中,多个操作信息列表与至少一个第二服务器相对应,多个操作信息列表包括不同的子操作信息列表;第一服务器从多个操作信息列表中获取第一子操作信息列表,其中,相同的第一子操作信息列表的数量多于多个操作信息列表中除第一子操作信息列表之外的不同的第二子操作信息列表的数量;第一服务器将第一子操作信息列表确定为合并操作信息列表。
处理器141还用于执行下述步骤:第一服务器遍历合并操作信息列表;第一服务器获取合并操作信息列表中的每条操作信息;第一服务器根据每条操作信息中的预设字段查询位于第一操作信息之前的上一条操作信息中的预设字段;第一服务器在根据每条操作信息中的预设字段查询到位于第一操作信息之前的上一条操作信息中的预设字段的情况下,将第一操作信息替换为合并事件信息列表。
处理器141还用于执行下述步骤:第一服务器在根据每条操作信息中的预设字段查询第一操作信息的上一条操作信息中的预设字段之后,第一服务器在根据每条操作信息中的预设字段未查询到第一操作信息的上一条操作信息中的预设字段的情况下,确定对第一事件信息修复失败。
处理器141还用于执行下述步骤:第一服务器判断第三操作信息是否正确串联在事件链上,其中,事件链上的事件信息以链式结构存储;第一服务器如果判断出第三操作信息正确串联在事件链上,根据第三操作信息中的剩余事件资源和附加信息对第一记录信息进行修复处理,得到第二记录信息。
处理器141还用于执行下述步骤:在第一服务器判断第三操作信息是否正确串联在事件链上之后,第一服务器如果判断出第三操作信息未正确串联在事件链上,确定对第一记录信息修复失败。
采用本发明实施例,提供了一种事件处理的方案。通过采用第一服务器在判断出第一事件信息为被篡改过的事件信息的情况下,向至少一个第二服务器发送查询请求,每个第二服务器上存储第一记录对象在执行第一事件得到的第二事件信息,查询请求用于向每个第二服务器请求查询第二事件信息,第二事件信息用于对第一事件信息进行修复;第一服务器对每个第二服务器响应查询请求得到的第二事件信息进行合并处理,得到合并事件信息;第一服务器根据合并事件信息对第一事件信息进行修复处理,得到第一记录对象的第三事件信息,达到了对事件处理的目的,从而实现了提高事件处理效率的技术效果,进而解决了相关技术的事件处理效率低的技术问题。
可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
本领域普通技术人员可以理解,图14所示的结构仅为示意,终端可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile InternetDevices,MID)、PAD等终端设备。图14其并不对上述电子装置的结构造成限定。例如,终端还可包括比图14中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图14所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
实施例5
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于执行事件处理方法的程序代码。
可选地,在本实施例中,上述存储介质可以位于上述实施例所示的网络中的多个网络设备中的至少一个网络设备上。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
第一服务器判断第一记录对象在执行第一事件得到的第一事件信息是否为被篡改过的事件信息;
第一服务器如果判断出第一事件信息为被篡改过的事件信息,向至少一个第二服务器发送查询请求,其中,每个第二服务器上存储第一记录对象在执行第一事件得到的第二事件信息,查询请求用于向每个第二服务器请求查询第二事件信息,第二事件信息用于对第一事件信息进行修复;
第一服务器对每个第二服务器响应查询请求得到的第二事件信息进行合并处理,得到合并事件信息;
第一服务器根据合并事件信息对第一事件信息进行修复处理,得到第一记录对象的第三事件信息。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:第一事件信息包括第一记录对象在执行第一事件时,对第一事件进行操作的第一操作信息,第一服务器判断第一记录对象在执行第一事件得到的第一操作信息是否为被篡改过的操作信息;第一服务器如果判断出第一操作信息为被篡改过的操作信息,向至少一个第二服务器发送第一查询请求,其中,每个第二服务器上存储第一记录对象在对第一事件进行操作的第二操作信息,第一查询请求用于向每个第二服务器请求查询第二操作信息;第一服务器对每个第二服务器响应第一查询请求得到的第二操作信息进行合并处理,得到合并操作信息,其中,合并事件信息包括合并操作信息,其中,第二操作信息用于对第一操作信息进行修复;第一服务器根据合并操作信息对第一操作信息进行修复处理,得到第一记录对象的第三操作信息,其中,第三事件信息包括第三操作信息。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:第一服务器在第一记录对象执行第二事件之前,获取第一操作信息,其中,第二事件为在第一事件执行之后与第一事件相邻的事件;第一服务器对第一操作信息进行验证;第一服务器当验证出第一操作信息符合预设规则时,确定第一操作信息为未被篡改过的操作信息,其中,第二事件在确定第一操作信息为未被篡改过的操作信息之后执行;第一服务器当验证出第一操作信息不符合预设规则时,确定第一操作信息为被篡改过的操作信息。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:第一服务器和第二服务器上分别还存储多个第二记录对象执行事件得到的操作信息,第一服务器对第一记录对象和第一服务器上的多个第二记录对象执行事件的多个执行顺序号进行查询,其中,多个执行顺序号用于指示第一记录对象和多个第二记录对象执行事件的执行顺序,执行顺序号按照时间以递增形式进行变化;当第一服务器查询到多个执行顺序号中数值最大的执行顺序号时,且数值最大的执行顺序号对应的第四操作信息在第一服务器上为与第一操作信息相邻的未被篡改的上一操作信息时,第一服务器将最大的执行顺序号确定为目标执行顺序号;第一服务器根据目标执行顺序号向至少一个第二服务器发送第一查询请求,其中,第一查询请求用于向每个第二服务器请求根据第四操作信息查询第二操作信息。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:第一服务器获取多条第二操作信息,其中,多条第二操作信息分别与至少一个第二服务器相对应,多条第二操作信息包括不同的子操作信息;第一服务器从多条第二操作信息中获取第一子操作信息,其中,相同的第一子操作信息的数量多于多条第二操作信息中除第一子操作信息之外的不同的第二子操作信息的数量;第一服务器将第一子操作信息确定为合并操作信息。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:第一服务器将第一操作信息替换为合并操作信息,得到第三操作信息。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:第一事件信息还包括第一记录对象在执行第一事件时,第一记录对象的记录信息,在第一操作信息为未被篡改的操作信息的情况下,第一服务器判断第一记录对象在执行第一事件得到的第一记录信息是否为被篡改过的记录信息。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:第一服务器在判断第一记录对象在执行第一事件得到的第一记录信息是否为被篡改过的记录信息之后,第一服务器如果判断出第一记录对象在执行第一事件得到的第一记录信息为被篡改过的记录信息,获取第一操作信息中的剩余事件资源和附加信息;第一服务器根据剩余事件资源和附加信息对第一记录信息进行修复处理,得到第二记录信息。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:第一事件信息包括第一记录对象在执行第一事件时,进行操作的第一操作信息和第一记录对象的记录信息,第一服务器判断第一记录对象在执行第一事件得到的第一操作信息是否为被篡改过的操作信息,且判断第一记录对象在执行第一事件得到的第一记录信息是否为被篡改过的记录信息;第一服务器如果判断出第一操作信息为被篡改过的操作信息,且判断出第一记录信息为被篡改过的记录信息,根据第一记录信息中的标识信息向至少一个第二服务器发送第二查询请求,其中,每个第二服务器上存储第一记录对象在执行第一事件时对第一事件进行操作的第二操作信息,第二查询请求用于向每个第二服务器请求查询与标识信息相对应的第二操作信息,与标识信息相对应的第二操作信息用于对第一操作信息进行修复;第一服务器对每个第二服务器响应第二查询请求得到的操作信息列表进行合并处理,得到合并操作信息列表,其中,操作信息列表包括在第二服务器上标识信息对应的多条操作信息,合并事件信息包括合并操作信息列表;第一服务器根据合并操作信息列表对第一操作信息进行修复处理,得到第一记录对象的第三操作信息,且根据第三操作信息对第一记录信息进行修复处理,得到第一记录对象的第二记录信息,其中,第三事件信息包括第三操作信息和第二记录信息。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:第一服务器获取多个操作信息列表,其中,多个操作信息列表与至少一个第二服务器相对应,多个操作信息列表包括不同的子操作信息列表;第一服务器从多个操作信息列表中获取第一子操作信息列表,其中,相同的第一子操作信息列表的数量多于多个操作信息列表中除第一子操作信息列表之外的不同的第二子操作信息列表的数量;第一服务器将第一子操作信息列表确定为合并操作信息列表。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:第一服务器遍历合并操作信息列表;第一服务器获取合并操作信息列表中的每条操作信息;第一服务器根据每条操作信息中的预设字段查询位于第一操作信息之前的上一条操作信息中的预设字段;第一服务器在根据每条操作信息中的预设字段查询到位于第一操作信息之前的上一条操作信息中的预设字段的情况下,将第一操作信息替换为合并事件信息列表。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:第一服务器在根据每条操作信息中的预设字段查询第一操作信息的上一条操作信息中的预设字段之后,第一服务器在根据每条操作信息中的预设字段未查询到第一操作信息的上一条操作信息中的预设字段的情况下,确定对第一事件信息修复失败。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:第一服务器判断第三操作信息是否正确串联在事件链上,其中,事件链上的事件信息以链式结构存储;第一服务器如果判断出第三操作信息正确串联在事件链上,根据第三操作信息中的剩余事件资源和附加信息对第一记录信息进行修复处理,得到第二记录信息。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:在第一服务器判断第三操作信息是否正确串联在事件链上之后,第一服务器如果判断出第三操作信息未正确串联在事件链上,确定对第一记录信息修复失败。
可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (15)

1.一种事件处理方法,其特征在于,包括:
第一服务器判断第一记录对象在执行第一事件得到的第一事件信息是否为被篡改过的事件信息;
所述第一服务器如果判断出所述第一事件信息为被篡改过的事件信息,向至少一个第二服务器发送查询请求,其中,每个所述第二服务器上存储所述第一记录对象在执行所述第一事件得到的第二事件信息,所述查询请求用于向每个所述第二服务器请求查询所述第二事件信息,所述第二事件信息用于对所述第一事件信息进行修复;
所述第一服务器对每个所述第二服务器响应所述查询请求得到的所述第二事件信息进行合并处理,得到合并事件信息;
所述第一服务器根据所述合并事件信息对所述第一事件信息进行修复处理,得到所述第一记录对象的第三事件信息;
其中,所述第一服务器对每个所述第二服务器响应所述查询请求得到的所述第二事件信息进行合并处理,得到合并事件信息包括:在所述第一服务器的数量为多个的情况下,所述第一服务器将多个所述第二服务器响应所述查询请求得到的未被篡改过的数量最多的相同所述第二事件信息,确定为所述合并事件信息;在所述第一服务器的数量为一个的情况下,所述第一服务器将所述第二服务器响应所述查询请求得到的未被篡改过的所述第二事件信息确定为所述合并事件信息。
2.根据权利要求1所述的方法,其特征在于,所述第一事件信息包括所述第一记录对象在执行所述第一事件时,对所述第一事件进行操作的第一操作信息,
所述第一服务器判断所述第一记录对象在执行所述第一事件得到的所述第一事件信息是否为被篡改过的事件信息包括:所述第一服务器判断所述第一记录对象在执行所述第一事件得到的所述第一操作信息是否为被篡改过的操作信息;
所述第一服务器如果判断出所述第一事件信息为被篡改过的事件信息,向至少一个所述第二服务器发送所述查询请求包括:所述第一服务器如果判断出所述第一操作信息为被篡改过的操作信息,向至少一个所述第二服务器发送第一查询请求,其中,每个所述第二服务器上存储所述第一记录对象在对所述第一事件进行操作的第二操作信息,所述第一查询请求用于向每个所述第二服务器请求查询所述第二操作信息;
所述第一服务器对每个所述第二服务器响应所述查询请求得到的所述第二事件信息进行合并处理,得到所述合并事件信息包括:所述第一服务器对每个所述第二服务器响应所述第一查询请求得到的所述第二操作信息进行合并处理,得到合并操作信息,其中,所述合并事件信息包括所述合并操作信息,所述第二操作信息用于对所述第一操作信息进行修复;
所述第一服务器根据所述合并事件信息对所述第一事件信息进行修复处理,得到所述第一记录对象的第三事件信息包括:所述第一服务器根据所述合并操作信息对所述第一操作信息进行修复处理,得到所述第一记录对象的第三操作信息,其中,所述第三事件信息包括所述第三操作信息。
3.根据权利要求2所述的方法,其特征在于,所述第一服务器判断所述第一记录对象在执行所述第一事件得到的所述第一操作信息是否为被篡改过的操作信息包括:
所述第一服务器在所述第一记录对象执行第二事件之前,获取所述第一操作信息,其中,所述第二事件为在所述第一事件执行之后与所述第一事件相邻的事件;
所述第一服务器对所述第一操作信息进行验证;
所述第一服务器当验证出所述第一操作信息符合预设规则时,确定所述第一操作信息为未被篡改过的操作信息,其中,所述第二事件在确定所述第一操作信息为未被篡改过的操作信息之后执行;
所述第一服务器当验证出所述第一操作信息不符合所述预设规则时,确定所述第一操作信息为被篡改过的操作信息。
4.根据权利要求2所述的方法,其特征在于,所述第一服务器和所述第二服务器上分别还存储多个第二记录对象执行事件得到的操作信息,所述第一服务器如果判断出所述第一操作信息为被篡改过的操作信息,向至少一个所述第二服务器发送所述第一查询请求包括:
所述第一服务器对所述第一记录对象和所述第一服务器上的多个第二记录对象执行事件的多个执行顺序号进行查询,其中,所述多个执行顺序号用于指示所述第一记录对象和所述多个第二记录对象执行事件的执行顺序,所述执行顺序号按照时间以递增形式进行变化;
当所述第一服务器查询到所述多个执行顺序号中数值最大的执行顺序号时,且所述数值最大的执行顺序号对应的第四操作信息在所述第一服务器上为与所述第一操作信息相邻的未被篡改的上一操作信息时,所述第一服务器将所述最大的执行顺序号确定为目标执行顺序号;
所述第一服务器根据所述目标执行顺序号向所述至少一个所述第二服务器发送所述第一查询请求,其中,所述第一查询请求用于向每个所述第二服务器请求根据所述第四操作信息查询所述第二操作信息。
5.根据权利要求2所述的方法,其特征在于,所述第一服务器对每个所述第二服务器响应所述第一查询请求得到的所述第二操作信息进行合并处理,得到所述合并操作信息包括:
所述第一服务器获取多条第二操作信息,其中,所述多条第二操作信息分别与多个所述第二服务器相对应,所述多条第二操作信息包括不同的子操作信息;
所述第一服务器从所述多条第二操作信息中获取第一子操作信息,其中,相同的所述第一子操作信息的数量多于所述多条第二操作信息中除所述第一子操作信息之外的不同的第二子操作信息的数量;
所述第一服务器将所述第一子操作信息确定为所述合并操作信息。
6.根据权利要求2所述的方法,其特征在于,所述第一服务器根据所述合并操作信息对所述第一操作信息进行修复处理,得到所述第一记录对象的第三操作信息包括:
所述第一服务器将所述第一操作信息替换为所述合并操作信息,得到所述第三操作信息。
7.根据权利要求2所述的方法,其特征在于,所述第一事件信息还包括所述第一记录对象在执行所述第一事件时,所述第一记录对象的记录信息,所述第一服务器判断所述第一记录对象在执行所述第一事件得到的所述第一事件信息是否为被篡改过的事件信息包括:
在所述第一操作信息为未被篡改的操作信息的情况下,所述第一服务器判断所述第一记录对象在执行所述第一事件得到的第一记录信息是否为被篡改过的记录信息。
8.根据权利要求7所述的方法,其特征在于,所述第一服务器在判断所述第一记录对象在执行所述第一事件得到的第一记录信息是否为被篡改过的记录信息之后,所述方法还包括:
所述第一服务器如果判断出所述第一记录对象在执行所述第一事件得到的第一记录信息为被篡改过的记录信息,获取所述第一操作信息中的剩余事件资源和附加信息;
所述第一服务器根据所述剩余事件资源和所述附加信息对所述第一记录信息进行修复处理,得到第二记录信息。
9.根据权利要求1所述的方法,其特征在于,所述第一事件信息包括所述第一记录对象在执行所述第一事件时,进行操作的第一操作信息和所述第一记录对象的记录信息,
所述第一服务器判断所述第一记录对象在执行所述第一事件得到的所述第一事件信息是否为被篡改过的事件信息包括:所述第一服务器判断所述第一记录对象在执行所述第一事件得到的第一操作信息是否为被篡改过的操作信息,且判断所述第一记录对象在执行所述第一事件得到的第一记录信息是否为被篡改过的记录信息;
所述第一服务器如果判断出所述第一事件信息为被篡改过的事件信息,向至少一个所述第二服务器发送所述查询请求包括:所述第一服务器如果判断出所述第一操作信息为被篡改过的操作信息,且判断出所述第一记录信息为被篡改过的记录信息,根据所述第一记录信息中的标识信息向至少一个所述第二服务器发送第二查询请求,其中,每个所述第二服务器上存储所述第一记录对象在执行所述第一事件时对所述第一事件进行操作的第二操作信息,所述第二查询请求用于向每个所述第二服务器请求查询与所述标识信息相对应的所述第二操作信息,与所述标识信息相对应的所述第二操作信息用于对所述第一操作信息进行修复;
所述第一服务器对每个所述第二服务器响应所述查询请求得到的所述第二事件信息进行合并处理,得到所述合并事件信息包括:所述第一服务器对每个所述第二服务器响应所述第二查询请求得到的操作信息列表进行合并处理,得到合并操作信息列表,其中,所述操作信息列表包括在所述第二服务器上所述标识信息对应的多条操作信息,所述合并事件信息包括所述合并操作信息列表;
所述第一服务器根据所述合并事件信息对所述第一事件信息进行修复处理,得到所述第一记录对象的第三事件信息包括:所述第一服务器根据所述合并操作信息列表对所述第一操作信息进行修复处理,得到所述第一记录对象的第三操作信息,且根据所述第三操作信息对所述第一记录信息进行修复处理,得到所述第一记录对象的第二记录信息,其中,所述第三事件信息包括所述第三操作信息和所述第二记录信息。
10.根据权利要求9所述的方法,其特征在于,所述第一服务器对每个所述第二服务器响应所述第二查询请求得到的操作信息列表进行合并处理,得到所述合并操作信息列表包括:
所述第一服务器获取多个操作信息列表,其中,所述多个操作信息列表与多个所述第二服务器相对应,所述多个操作信息列表包括不同的子操作信息列表;
所述第一服务器从所述多个操作信息列表中获取第一子操作信息列表,其中,相同的所述第一子操作信息列表的数量多于所述多个操作信息列表中除所述第一子操作信息列表之外的不同的第二子操作信息列表的数量;
所述第一服务器将所述第一子操作信息列表确定为所述合并操作信息列表。
11.根据权利要求10所述的方法,其特征在于,所述第一服务器根据所述合并操作信息列表对所述第一操作信息进行修复处理,得到所述第三操作信息包括:
所述第一服务器遍历所述合并操作信息列表;
所述第一服务器获取所述合并操作信息列表中的每条操作信息;
所述第一服务器根据所述每条操作信息中的预设字段查询位于所述第一操作信息之前的上一条操作信息中的所述预设字段;
所述第一服务器在根据所述每条操作信息中的所述预设字段查询到位于所述第一操作信息之前的上一条操作信息中的所述预设字段的情况下,将所述第一操作信息替换为所述合并事件信息列表。
12.根据权利要求11所述的方法,其特征在于,所述第一服务器在根据所述每条操作信息中的预设字段查询所述第一操作信息的上一条操作信息中的所述预设字段之后,所述方法还包括:
所述第一服务器在根据所述每条操作信息中的所述预设字段未查询到位于所述第一操作信息之前的上一条操作信息中的所述预设字段的情况下,确定对所述第一事件信息修复失败。
13.根据权利要求11所述的方法,其特征在于,所述第一服务器根据所述第三操作信息对所述第一记录信息进行修复处理,得到所述第一记录对象的第二记录信息包括:
所述第一服务器判断所述第三操作信息是否正确串联在事件链上,其中,所述事件链上的事件信息以链式结构存储;
所述第一服务器如果判断出所述第三操作信息正确串联在所述事件链上,根据所述第三操作信息中的剩余事件资源和附加信息对所述第一记录信息进行修复处理,得到所述第二记录信息。
14.根据权利要求13所述的方法,其特征在于,在所述第一服务器判断所述第三操作信息是否正确串联在所述事件链上之后,所述方法还包括:
所述第一服务器如果判断出所述第三操作信息未正确串联在所述事件链上,确定对所述第一记录信息修复失败。
15.一种事件处理装置,其特征在于,包括:
判断单元,用于使第一服务器判断第一记录对象在执行第一事件得到的第一事件信息是否为被篡改过的事件信息;
发送单元,用于使所述第一服务器如果判断出所述第一事件信息为被篡改过的事件信息,向至少一个第二服务器发送查询请求,其中,每个所述第二服务器上存储所述第一记录对象在执行所述第一事件得到的第二事件信息,所述查询请求用于向每个所述第二服务器请求查询所述第二事件信息,所述第二事件信息用于对所述第一事件信息进行修复;
第一处理单元,用于使所述第一服务器对每个所述第二服务器响应所述查询请求得到的所述第二事件信息进行合并处理,得到合并事件信息;
第二处理单元,用于所述第一服务器根据所述合并事件信息对所述第一事件信息进行修复处理,得到所述第一记录对象的第三事件信息,其中,所述第三事件信息为所述第一记录对象在执行所述第一事件时未被篡改过的事件消息;
其中,所述第一处理单元用于通过以下步骤来实现所述第一服务器对每个所述第二服务器响应所述查询请求得到的所述第二事件信息进行合并处理,得到合并事件信息:在所述第一服务器的数量为多个的情况下,所述第一服务器将多个所述第二服务器响应所述查询请求得到的未被篡改过的数量最多的相同所述第二事件信息,确定为所述合并事件信息;在所述第一服务器的数量为一个的情况下,所述第一服务器将所述第二服务器响应所述查询请求得到的未被篡改过的所述第二事件信息确定为所述合并事件信息。
CN201710052185.4A 2017-01-20 2017-01-20 事件处理方法和装置 Active CN108021443B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201910642566.7A CN110347514B (zh) 2017-01-20 2017-01-20 事件处理方法和装置
CN201710052185.4A CN108021443B (zh) 2017-01-20 2017-01-20 事件处理方法和装置
CN201910642568.6A CN110362406B (zh) 2017-01-20 2017-01-20 事件处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710052185.4A CN108021443B (zh) 2017-01-20 2017-01-20 事件处理方法和装置

Related Child Applications (2)

Application Number Title Priority Date Filing Date
CN201910642566.7A Division CN110347514B (zh) 2017-01-20 2017-01-20 事件处理方法和装置
CN201910642568.6A Division CN110362406B (zh) 2017-01-20 2017-01-20 事件处理方法和装置

Publications (2)

Publication Number Publication Date
CN108021443A CN108021443A (zh) 2018-05-11
CN108021443B true CN108021443B (zh) 2020-04-07

Family

ID=62079171

Family Applications (3)

Application Number Title Priority Date Filing Date
CN201710052185.4A Active CN108021443B (zh) 2017-01-20 2017-01-20 事件处理方法和装置
CN201910642568.6A Active CN110362406B (zh) 2017-01-20 2017-01-20 事件处理方法和装置
CN201910642566.7A Active CN110347514B (zh) 2017-01-20 2017-01-20 事件处理方法和装置

Family Applications After (2)

Application Number Title Priority Date Filing Date
CN201910642568.6A Active CN110362406B (zh) 2017-01-20 2017-01-20 事件处理方法和装置
CN201910642566.7A Active CN110347514B (zh) 2017-01-20 2017-01-20 事件处理方法和装置

Country Status (1)

Country Link
CN (3) CN108021443B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110263088B (zh) * 2019-05-20 2021-04-02 创新先进技术有限公司 结合代码标注与事件类型的有条件的收据存储方法和节点

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1906593A (zh) * 2003-11-24 2007-01-31 Tsx公司 用于故障解决的系统和方法
CN101904574A (zh) * 2009-06-08 2010-12-08 南纬实业股份有限公司 指示衣
CN102591982A (zh) * 2011-01-07 2012-07-18 赛门铁克公司 执行增量sql服务器数据库备份的方法和系统
CN105760252A (zh) * 2014-12-19 2016-07-13 中兴通讯股份有限公司 实现事务日志镜像备份的方法及装置
CN106095618A (zh) * 2016-06-06 2016-11-09 北京中油瑞飞信息技术有限责任公司 数据操作的方法和系统
CN106254236A (zh) * 2016-08-05 2016-12-21 成都广达新网科技股份有限公司 一种基于tcp事件的多服务器主从机工作方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1741277B1 (en) * 2004-04-07 2017-06-07 Orange Event processing system
WO2008061919A2 (en) * 2006-11-22 2008-05-29 Agfa Healthcare Inc. Method and system for remote collaboration
CN101299758B (zh) * 2008-05-21 2011-05-11 网御神州科技(北京)有限公司 一种大规模事件处理的规则群组系统及处理方法
CN101815118A (zh) * 2009-02-20 2010-08-25 腾讯科技(深圳)有限公司 在手机软件中实现对用户输入实时处理的系统及方法
US8261126B2 (en) * 2009-04-03 2012-09-04 Microsoft Corporation Bare metal machine recovery from the cloud
US20110040722A1 (en) * 2009-08-17 2011-02-17 International Business Machines Corporation Predicate selection in event filtering
CN101753461B (zh) * 2010-01-14 2012-07-25 中国建设银行股份有限公司 实现负载均衡的方法、负载均衡服务器以及集群系统
CN102195987B (zh) * 2011-05-31 2014-04-30 成都七巧软件有限责任公司 一种基于软件产品库的分布式可信认证方法和系统
CN102571424A (zh) * 2011-12-29 2012-07-11 华为技术服务有限公司 一种工程事件处理方法、装置和系统
CN102769615B (zh) * 2012-07-02 2014-11-26 北京大学 一种基于MapReduce机制的任务调度方法和系统
CN103218554B (zh) * 2013-03-18 2015-10-28 卡巴斯基实验室封闭式股份公司 用于基于用户行为适应性控制用户动作的系统和方法
CN103279385A (zh) * 2013-06-01 2013-09-04 北京华胜天成科技股份有限公司 一种云计算环境中集群任务调度方法及系统
WO2016160850A1 (en) * 2015-03-30 2016-10-06 Iperial, Inc. System and method for authenticating digital content
CN105389207A (zh) * 2015-11-06 2016-03-09 成都视达科信息技术有限公司 自适应数据请求处理方法、装置、任务调度器及系统
CN105656698B (zh) * 2016-03-24 2019-03-19 鞠洪尧 一种网络应用系统智能监控结构与方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1906593A (zh) * 2003-11-24 2007-01-31 Tsx公司 用于故障解决的系统和方法
CN101904574A (zh) * 2009-06-08 2010-12-08 南纬实业股份有限公司 指示衣
CN102591982A (zh) * 2011-01-07 2012-07-18 赛门铁克公司 执行增量sql服务器数据库备份的方法和系统
CN105760252A (zh) * 2014-12-19 2016-07-13 中兴通讯股份有限公司 实现事务日志镜像备份的方法及装置
CN106095618A (zh) * 2016-06-06 2016-11-09 北京中油瑞飞信息技术有限责任公司 数据操作的方法和系统
CN106254236A (zh) * 2016-08-05 2016-12-21 成都广达新网科技股份有限公司 一种基于tcp事件的多服务器主从机工作方法

Also Published As

Publication number Publication date
CN108021443A (zh) 2018-05-11
CN110347514A (zh) 2019-10-18
CN110347514B (zh) 2021-03-16
CN110362406A (zh) 2019-10-22
CN110362406B (zh) 2020-12-25

Similar Documents

Publication Publication Date Title
JP7199775B2 (ja) スマートコントラクトに基づくデータ処理方法、データ処理装置、ノード機器、及びコンピュータプログラム
CN111831548B (zh) 一种依赖关系拓扑图的绘制方法和装置
CN108646983B (zh) 在区块链上存储业务数据的处理方法和装置
CN107396360B (zh) 区块验证方法及装置
CN101313495B (zh) 数据同步方法、系统及装置
CN106326219B (zh) 核对业务系统数据的方法、装置及系统
CN108734028B (zh) 基于区块链的数据管理方法、区块链节点及存储介质
CN111163182B (zh) 基于区块链的设备注册方法、装置、电子设备和存储介质
CN110730225A (zh) 基于区块链的物联网的数据处理方法、物联网及存储介质
CN110458709B (zh) 资源转移信息的传输方法和装置、存储介质、电子装置
CN110690974B (zh) 基于区块链的数据验证方法、装置、设备及可读存储介质
CN112422341B (zh) 区块链网络的故障检测方法及相关设备
CN111698315B (zh) 针对区块的数据处理方法、数据处理装置及计算机设备
CN110599346A (zh) 一种区块链信息获取方法及相关设备
CN110597922B (zh) 数据处理方法、装置、终端及存储介质
CN110599174A (zh) 一种区块链信息处理方法及相关设备
CN113570479B (zh) 一种房产交易数据的区块链传输方法、系统及存储介质
CN111899019A (zh) 一种黑名单多方交叉验证和共享的方法及系统
CN111984735A (zh) 一种数据归档方法、装置、电子设备和存储介质
CN110619022B (zh) 基于区块链网络的节点检测方法、装置、设备及存储介质
CN111353136A (zh) 一种操作请求的处理方法和装置
CN108021443B (zh) 事件处理方法和装置
CN114328029A (zh) 一种应用资源的备份方法、装置、电子设备及存储介质
CN108924089A (zh) 一种客户端设备识别方法、装置及客户端设备
CN105160244A (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