CN113157522B - Method, system, device and storage medium for preventing loss of event based on alliance chain - Google Patents

Method, system, device and storage medium for preventing loss of event based on alliance chain Download PDF

Info

Publication number
CN113157522B
CN113157522B CN202110430469.9A CN202110430469A CN113157522B CN 113157522 B CN113157522 B CN 113157522B CN 202110430469 A CN202110430469 A CN 202110430469A CN 113157522 B CN113157522 B CN 113157522B
Authority
CN
China
Prior art keywords
event
block
eventmap
monitoring
lock
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
CN202110430469.9A
Other languages
Chinese (zh)
Other versions
CN113157522A (en
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.)
Hangzhou Yunxiang Network Technology Co Ltd
Original Assignee
Hangzhou Yunxiang Network Technology 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 Hangzhou Yunxiang Network Technology Co Ltd filed Critical Hangzhou Yunxiang Network Technology Co Ltd
Priority to CN202110430469.9A priority Critical patent/CN113157522B/en
Publication of CN113157522A publication Critical patent/CN113157522A/en
Application granted granted Critical
Publication of CN113157522B publication Critical patent/CN113157522B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer And Data Communications (AREA)

Abstract

The invention provides an event loss prevention method and system based on a alliance chain, which specifically comprise the following steps: responding to an action of triggering network restart, and acquiring block numbers from an EventMap and a database, wherein the EventMap is used for recording events in each block, each block comprises a plurality of events, and the blocks correspond to the block numbers one by one; judging whether the event is lost or not based on whether the block number is empty or not, and monitoring the blocks of the alliance chain network based on the judgment result of the block number; if the block number is empty, monitoring is started from the latest block of the alliance chain network, otherwise, monitoring is started from the block corresponding to the block number; and storing the monitored block number into an EventMap and a database. The invention solves the problem of event loss after restarting, uses the event monitoring mechanism to replace the previous round training mechanism to acquire the information on the chain in real time, uses the distributed lock to solve the problem of event repeated triggering under the condition of multiple back ends, and uses the power idempotency of breakpoint resuming and proposal execution to ensure that the event can not be lost.

Description

Method, system, device and storage medium for preventing loss of event based on alliance chain
Technical Field
The invention relates to the technical field of block chains, in particular to an event loss prevention method, system and device based on a alliance chain and a storage medium.
Background
With the advent of digital cryptocurrency systems represented by Bitbin, blockchain technology has been developed rapidly, and many enterprises are now using alliance-link network services based on Fabric, which is one of the services provided by Fabric. Generally, an Event (Event) refers to an action or Event detected by a program. The event package supports access to channel events on the Fabric network. The event client may receive a block event, a filter block event, a chain code event, and a transaction status event. The user clicks a mouse button is an example of an event and the program must have implemented some event listener to listen to the event and take some action when the event occurs. In Fabric, there are three types of event listeners to listen for events: block listener, transaction listener, chain code listener.
However, these event monitoring are short-lived, and in a network with multiple organizations in a federation chain, a single organization stops event monitoring service due to abnormal conditions such as system downtime or service interruption, and the monitor misses the monitored events after restarting and misses the events occurring during the stop.
Disclosure of Invention
Based on the problems in the background art, the invention provides an event loss prevention method, an event loss prevention system, an event loss prevention device and a storage medium based on a federation chain.
An event loss prevention method based on a alliance chain specifically comprises the following steps:
responding to an action of triggering network restart, and acquiring block numbers from an EventMap and a database, wherein the EventMap is used for recording events in each block, each block comprises a plurality of events, and the blocks correspond to the block numbers one by one;
judging whether the event is lost or not based on whether the block number is empty or not, and monitoring the blocks of the alliance chain network based on the judgment result of the block number;
if the block is empty, monitoring is started from the newest block of the alliance chain network, otherwise, monitoring is started from the incoming block;
and storing the monitored block number into the EventMap and a database.
As one possible implementation, storing the monitored block number in EventMap includes: and taking the block number as the value of the EventMap, acquiring the txID and the block number of the event in the block in the EventMap, if the txID and the block number of the event in the block are not obtained, storing the txID and the block number of the event in the block, and if the txID and the block number of the event in the EventMap are obtained, deleting the txID and the block number of the event in the EventMap, wherein the event corresponds to the transaction one to one, and the txID of the transaction is taken as the Key of the EventMap.
As an implementable mode, the method further comprises the following steps: after the txID and the block number of the event block are deleted each time, the EventMap is traversed, and the minimum block number is stored in the database.
As an implementation manner, the method further comprises the step of filtering out unqualified events, wherein the unqualified events comprise any one of invalid transaction events, non-transaction events and unregistered transaction events; the method specifically comprises the following steps: judging whether the transaction is qualified, if so, storing the event into the EventMap; if not, the event is filtered.
As an implementation, the method further comprises the following steps: if multiple back ends and multiple events exist, a distributed lock is adopted to ensure that one back end opening event and only one back end opening event are monitored.
As one implementable way, the distributed lock includes an extended lock and a delete deadlock; at any time, the extended lock queries whether the database has a lock meeting a first condition according to the lock name and the ClientId, and if so, the extended lock updates ValidTime +10 seconds, wherein the first condition is that the current time is > CreatTime + ValidTime-5 seconds; and at any time, deleting the deadlock, inquiring whether a lock meeting a second condition exists in the database or not according to the lock name, and if so, deleting the deadlock, wherein the second condition is that the current time is > CreatTime + VaildTime.
An event loss prevention system based on a alliance chain comprises a data acquisition module, a coding judgment module, an execution monitoring module and a number storage module;
the data acquisition module is used for responding to an action of triggering network restart and acquiring block numbers from an EventMap and a database, wherein the EventMap is used for recording events in each block, each block comprises a plurality of events, and the blocks correspond to the block numbers one by one;
the coding judgment module judges whether the event is lost or not based on whether the block number is empty or not, and monitors the blocks of the alliance chain network based on the judgment result of the block number;
the execution monitoring module is configured to: if the block is empty, monitoring is started from the newest block of the alliance chain network, otherwise, monitoring is started from the incoming block;
and the number storage module is used for storing the monitored block numbers into the EventMap and the database.
As an implementable embodiment, the distributed lock execution module is further configured to:
if multiple back ends and multiple events exist, a distributed lock is adopted to ensure that one back end opening event is monitored and only one back end opening event is monitored;
the distributed lock comprises an extended lock and a delete deadlock; at any time, the extended lock queries whether the database has a lock meeting a first condition according to the lock name and the ClientId, and if so, the extended lock updates ValidTime +10 seconds, wherein the first condition is that the current time is > CreatTime + ValidTime-5 seconds; and at any time, deleting the deadlock, inquiring whether a lock meeting a second condition exists in the database or not according to the lock name, and if so, deleting the deadlock, wherein the second condition is that the current time is > CreatTime + VaildTime.
A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the method steps of:
responding to an action of triggering network restart, and acquiring block numbers from an EventMap and a database, wherein the EventMap is used for recording events in each block, each block comprises a plurality of events, and the blocks correspond to the block numbers one by one;
judging whether the event is lost or not based on whether the block number is empty or not, and monitoring the blocks of the alliance chain network based on the judgment result of the block number;
if the block is empty, monitoring is started from the newest block of the alliance chain network, otherwise, monitoring is started from the incoming block;
and storing the monitored block number into an EventMap and a database.
A federation chain-based event loss prevention apparatus comprising a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the processor implements the following method steps when executing the computer program:
responding to an action of triggering network restart, and acquiring block numbers from an EventMap and a database, wherein the EventMap is used for recording events in each block, each block comprises a plurality of events, and the blocks correspond to the block numbers one by one;
judging whether the event is lost or not based on whether the block number is empty or not, and monitoring the blocks of the alliance chain network based on the judgment result of the block number;
if the block is empty, monitoring is started from the newest block of the alliance chain network, otherwise, monitoring is started from the incoming block;
and storing the monitored block number into an EventMap and a database.
In a network with a plurality of organizations in a federation chain, a single organization stops event monitoring services due to abnormal conditions such as system downtime or service interruption, and events occurring during the stop period are omitted after the single organization is restarted. The method and the system for preventing the event from being lost in the allied link network solve the problem of event loss after restarting, use an event monitoring mechanism to replace a previous round-robin training mechanism to acquire messages on the link in real time, use a distributed lock to solve the problem of event repeated triggering under the condition of multiple back ends, and use power idempotent of breakpoint repetition and proposal execution to ensure that the event cannot be lost.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings needed to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings without creative efforts.
FIG. 1 is a flow diagram of event monitoring in one embodiment;
FIG. 2 is a flow diagram illustrating the filter block event and chain code event monitoring process in one embodiment;
FIG. 3 is a flow diagram of distributed lock operations in an embodiment.
Detailed Description
To make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
In the description herein, references to the description of "an embodiment," "a particular embodiment," "an embodiment," "for example," mean that a particular feature, structure, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the application. In this specification, the schematic representations of the terms used above do not necessarily refer to the same embodiment or example. Furthermore, the particular features, structures, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples. The sequence of steps involved in the embodiments is for illustrative purposes to illustrate the implementation of the present application, and the sequence of steps is not limited and can be adjusted as needed.
The Event package supports access to channel events on the Fabric network. The event client may receive a block event, a filter block event, a chain code event, and a transaction status event.
The basic flow of the event monitoring service usage comprises the following steps:
A. creating an event client;
B. registering an event;
C. processing the event;
D. and logging out the event.
Before registering a chain code event, the event must be thrown by calling stub.SetEvent (evenName string, payload [ ] byte) under the corresponding chain code, wherein the registered event name is consistent with the event name of the SetEvent.
The method and the system for preventing the loss of the event based on the alliance chain solve the problem of the loss of the event after restarting, use an event monitoring mechanism to replace a previous round training mechanism to acquire the message on the chain in real time, use a distributed lock to solve the problem of repeated triggering of the event under the condition of multiple back ends, and use the idempotent of breakpoint resumption and proposal execution to ensure that the event cannot be lost.
Fig. 1 is a schematic diagram of an event monitoring process in an embodiment of the present invention, where the process specifically includes:
(1) When a new alliance-link network is started, starting an event monitor, and monitoring from the latest block;
(2) Recording the monitored block numbers in the monitoring process and storing the block numbers into an EventMap and a database;
(3) When the system is restarted, acquiring a block number from a database, judging whether the block number is empty, if so, starting monitoring from the latest block, and otherwise, starting monitoring from the transmitted block number;
(4) And recording the monitored block number and storing the monitored block number into an EventMap and a database.
EventMap: and the map is used for storing and searching the event, the txID of the transaction corresponding to the event is used as the Key of the EventMap, and the block number is used as the value of the EventMap.
A stub event method needs to be called in chain code to set an event when processing a chain code event, and the contents are as follows:
1.//SetEvent documentation canbe found in interfaces.go
2.func(stub*ChaincodeStub)SetEvent(name string,payload[]byte)error{
3.ifname==""{
4.return errors.New("event name can not be nil string")
5.}
6.stub.chaincodeEvent=&pb.ChaincodeEvent{EventName:name,Payload:payload}
7.return nil
8.}
it can be seen that the essence of the method is the assignment of stub.chaincodeevent, and only the last call of calling multiple stub.setevent in one transaction will take effect, thus obtaining that one transaction corresponds to one event. Based on the above conclusion, the txID is used as Key of the EventMap, and the block number is used as value of the EventMap, so as to ensure that the event recorded by the EventMap is unique.
The Fabric provides an interface for creating event client services, and when creating an event client, attention needs to be paid to the construction of a ClientOption option:
1.func WithBlockEvents()ClientOption
withblockevents indicate block events to receive. Note that the caller must have sufficient rights to this option.
3.func WithBlockNum(from uint64)ClientOption
Withblocknum denotes a block number for receiving an event. Only delivercient supports sub-options.
5.func WithSeekType(seek seek.Type)ClientOption
Withseektype denotes the type of search required, newest, oldest or fromb, which is supported only by deliveryclient.
As long as the block number and the search type where the reception event is configured are fromoblock, the peer node will pull from the specified block number when pulling the block, thereby preventing the occurrence of event loss due to a missed block.
Under the current conditions, consideration needs to be given to how to guarantee that the specified block number is the last block to be executed when the snoop is stopped. The solution to this is as follows:
monitoring through a filter block, searching the obtained txID and block number of the event block in the EventMap, and if the txID and the block number are not stored, deleting the event block if the txID and the block number are not stored;
after the chain code event is processed, searching the txID and the block number of the event block in the EventMap, and if the txID and the block number are not stored, deleting the event block if the txID and the block number are not stored;
and traversing the EventMap once for each deletion, and storing the minimum block number into the database.
When the filter block is monitored, invalid transactions, transactions without events and unregistered transactions are filtered, useless data can remain if EventMap is not filtered, so that the block of the database cannot be updated, because chain code event monitoring can automatically filter out invalid transactions and only process registered events. Fig. 2 is a schematic diagram illustrating a filter block event and chain code event listening flow. When a new event monitoring is started, if the event is a filter block event, judging whether the transaction is valid, whether the transaction has the event and whether the event in the transaction is registered, if so, storing the event into an eventMap, and if not, filtering the event; and if the event is the chain code event, normally processing the event, storing the event into the EventMap, and then storing the event into the database. Examples of events are shown below:
wherein:
1.type EventInstence struct{
client event client
ClosCCNotify chan pool// close event snooping
RegisterEventMap map [ string ]/record the registered chain code event
Eventmap map [ string ] uint64// record events in the run
6.}
Closscnotify is used to turn off event snooping;
the register EventMap is used for recording the registered chain code events and is used for screening the events when the filtering block is monitored, so that the event which is not used is prevented from being recorded in the EventMap;
EventMap takes txID as key and block number as volume, and because only one event is triggered by one transaction, the transaction and the event are in one-to-one relationship, and one event has a unique transaction ID.
Under the condition of multiple back ends, if each back end has one event monitor, the condition that multiple event monitors are simultaneously carried out may occur, so that a large number of events are repeatedly executed, and database data redundancy occurs. At this time, a distributed lock method is adopted to ensure that only one back end of a plurality of back ends is started to monitor, and if the monitoring is stopped, one of the back ends automatically starts the monitoring. As shown in fig. 3, which is a working flow diagram of a distributed lock, acquiring a lock before monitoring an opening event, specifically including inserting a piece of data with a lock name as a primary key into a database, and repeatedly executing the step if the lock is not successful until the locking is successful; and releasing the lock after stopping event monitoring, and deleting the data with the lock name as the primary key from the database.
1.type DBLock struct{
Name string ORm: "column (name); pk'/Lock name
ClientId string// backend id Each backend corresponds to an id
GoId uint64// locking thread id
CreateTime int64// Lock time
ValidTime int64// extension time
7.}
In order to prevent deadlock, two coroutines are created when a distributed lock is added, one coroutine is to prolong the lock, and the other coroutine is to delete deadlock; every second, the extended lock queries whether a lock meeting the condition (the current time > CreatTime + ValldTime-5 seconds) exists in the database or not according to the lock name and the ClientId, and if yes, updates the ValidTime +10 seconds; every second, a deadlock is deleted by querying the database for a lock that does not satisfy the condition (current time > CreatTime + VaildTime) according to the lock name.
Although the method can ensure that the chain code event is not lost, the method cannot prevent the chain code event from being repeatedly executed, so that the idempotent of the processing method is ensured when the chain code event is processed, namely, the final result is not changed even if the method for processing the event is executed for multiple times. The scheme adopted is that data is inquired on a chain before execution, whether the chain is executed or not is judged, and if the chain is executed, the chain is not repeatedly executed.
Other embodiments of the present disclosure will be apparent to those skilled in the art from consideration of the specification and practice of the disclosure disclosed herein. This specification is intended to cover any variations, uses, or adaptations of the specification following, in general, the principles of the specification and including such departures from the present disclosure as come within known or customary practice within the art to which the specification pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the specification being indicated by the following claims.
It will be understood that the present description is not limited to the precise arrangements described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present description is limited only by the appended claims.

Claims (9)

1. An event loss prevention method based on a federation chain is characterized by specifically comprising the following steps:
in response to an action triggering a network restart;
in order to ensure the idempotency of event monitoring, data is inquired on a delink before execution, whether the data is executed or not is judged, and if the data is executed, the data is not repeatedly executed;
acquiring block numbers from an EventMap and a database, wherein the EventMap is used for recording events in each block, each block comprises a plurality of events, and the blocks correspond to the block numbers one by one;
judging whether the event is lost or not based on whether the block number is empty or not, and monitoring the blocks of the alliance chain network based on the judgment result of the block number;
if the block number is empty, monitoring is started from the latest block of the alliance chain network, otherwise, monitoring is started from the block corresponding to the block number;
storing the monitored block numbers into an EventMap and a database;
if multiple back ends and multiple events exist, a distributed lock is adopted to ensure that one back end opening event is monitored in the multiple back ends, and if monitoring is closed, one of the multiple back ends can automatically open monitoring.
2. A federation chain-based event loss prevention method as recited in claim 1, wherein storing the monitored block number in an EventMap comprises: and taking the block number as the value of the EventMap, acquiring the txID and the block number of the event in the block in the EventMap, if the txID and the block number of the event in the block are not obtained, storing the txID and the block number of the event in the block, and if the txID and the block number of the event in the EventMap are obtained, deleting the txID and the block number of the event in the EventMap, wherein the event corresponds to the transaction one to one, and the txID of the transaction is taken as the Key of the EventMap.
3. A federation chain-based event loss prevention method as recited in claim 2, further comprising: after the txID and block number of the event block are deleted each time, the EventMap must be traversed and the minimum block number stored in the database.
4. A federation chain-based event loss prevention method as recited in claim 1, further comprising the step of filtering out disqualified events, wherein a disqualified event comprises any one of an invalid transaction event, a no transaction event and an unregistered transaction event; the method comprises the following specific steps: judging whether the transaction is qualified, and if so, storing the event into an EventMap; if not, the event is filtered.
5. A federation chain-based event loss prevention method as recited in claim 1, wherein the distributed locks include an extended lock and a delete deadlock; at any time, the extended lock queries whether the database has a lock meeting a first condition according to the lock name and the ClientId, and if so, the extended lock updates ValidTime +10 seconds, wherein the first condition is that the current time is > CreatTime + ValidTime-5 seconds; and at any time, deleting the deadlock, inquiring whether a lock meeting a second condition exists in the database or not according to the lock name, and if so, deleting the deadlock, wherein the second condition is that the current time is > CreatTime + ValldTime, the CreatTime is locking time, and the ValldTime is extension time.
6. An event loss prevention system based on a alliance chain is characterized by comprising a data acquisition module, a coding judgment module, an execution monitoring module, a numbering storage module and a repeated monitoring prevention module;
the data acquisition module is used for responding to the action of triggering network restart and acquiring block numbers from an EventMap and a database, wherein the EventMap is used for recording events in each block, each block comprises a plurality of events, and the blocks correspond to the block numbers one by one;
the coding judgment module judges whether the event is lost or not based on whether the block number is empty or not, and monitors the blocks of the alliance chain network based on the judgment result of the block number;
the execution monitoring module is configured to: if the block is empty, monitoring is started from the newest block of the alliance chain network, otherwise, monitoring is started from the incoming block;
the number storage module is used for storing the monitored block numbers into an EventMap and a database;
the anti-repeat monitoring module is used for preventing the event from being repeatedly monitored, inquiring data on a delink before execution, judging whether the event is executed or not, and if the event is executed, not repeatedly executing; if multiple back ends and multiple events exist, a distributed lock is adopted to ensure that one back end opening event is monitored in the multiple back ends, and if monitoring is closed, one of the multiple back ends can automatically open monitoring.
7. A federation chain-based event loss prevention system as recited in claim 6, further comprising a distributed lock execution module arranged to:
if multiple back ends and multiple events exist, a distributed lock is adopted to ensure that one back end opening event is monitored and only one back end opening event is monitored;
the distributed lock comprises an extended lock and a delete deadlock; at any time, the extended lock queries whether the database has a lock meeting a first condition according to the lock name and the ClientId, and if so, the extended lock updates ValidTime +10 seconds, wherein the first condition is that the current time is > CreatTime + ValidTime-5 seconds; and at any time, deleting the deadlock, inquiring whether a database has a lock meeting a second condition according to the name of the lock, and if so, deleting the deadlock, wherein the second condition is that the current time is > CreatTime + ValldTime, the CreatTime is the locking time, and the ValidTime is the extension time.
8. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the method steps of one of claims 1 to 5.
9. A federation chain-based event loss prevention apparatus comprising a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the processor when executing the computer program implements the method steps of any one of claims 1 to 5.
CN202110430469.9A 2021-04-21 2021-04-21 Method, system, device and storage medium for preventing loss of event based on alliance chain Active CN113157522B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110430469.9A CN113157522B (en) 2021-04-21 2021-04-21 Method, system, device and storage medium for preventing loss of event based on alliance chain

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110430469.9A CN113157522B (en) 2021-04-21 2021-04-21 Method, system, device and storage medium for preventing loss of event based on alliance chain

Publications (2)

Publication Number Publication Date
CN113157522A CN113157522A (en) 2021-07-23
CN113157522B true CN113157522B (en) 2022-11-04

Family

ID=76867664

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110430469.9A Active CN113157522B (en) 2021-04-21 2021-04-21 Method, system, device and storage medium for preventing loss of event based on alliance chain

Country Status (1)

Country Link
CN (1) CN113157522B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2938754A1 (en) * 2015-08-13 2017-02-13 The Toronto-Dominion Bank Document tracking on a distributed ledger
EP3477569A1 (en) * 2017-10-30 2019-05-01 NEC Laboratories Europe GmbH Method and system for securing smart contracts in blockchains
CN111512333A (en) * 2019-11-08 2020-08-07 支付宝(杭州)信息技术有限公司 System and method for realizing decentralized application based on block chain
CN111865721A (en) * 2020-07-20 2020-10-30 普华云创科技(北京)有限公司 Method, system and storage medium for preventing transaction loss after abnormal node communication
CN112650735A (en) * 2020-12-28 2021-04-13 杭州趣链科技有限公司 Method, device, equipment and storage medium for determining lost block of alliance chain

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190303920A1 (en) * 2018-04-02 2019-10-03 American Express Travel Related Services Company, Inc. Transaction process using blockchain token smart contracts
US11017112B2 (en) * 2018-07-03 2021-05-25 Tyson York Winarski Distributed network for storing a redundant array of independent blockchain blocks

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2938754A1 (en) * 2015-08-13 2017-02-13 The Toronto-Dominion Bank Document tracking on a distributed ledger
EP3477569A1 (en) * 2017-10-30 2019-05-01 NEC Laboratories Europe GmbH Method and system for securing smart contracts in blockchains
CN111512333A (en) * 2019-11-08 2020-08-07 支付宝(杭州)信息技术有限公司 System and method for realizing decentralized application based on block chain
CN111865721A (en) * 2020-07-20 2020-10-30 普华云创科技(北京)有限公司 Method, system and storage medium for preventing transaction loss after abnormal node communication
CN112650735A (en) * 2020-12-28 2021-04-13 杭州趣链科技有限公司 Method, device, equipment and storage medium for determining lost block of alliance chain

Also Published As

Publication number Publication date
CN113157522A (en) 2021-07-23

Similar Documents

Publication Publication Date Title
US8327375B2 (en) System and method for supporting resource enlistment synchronization
US7007200B2 (en) Error analysis fed from a knowledge base
US7080287B2 (en) First failure data capture
US20020161840A1 (en) Adapter for interfacing with a workflow engine
US7353495B2 (en) Method for protection against interleaving transactions using a transaction manager
JPH0576654B2 (en)
US20100042875A1 (en) Capturing machine state of unstable java program
CN108038005A (en) Shared resource access method, client, server-side, system based on zookeeper
CN101636000A (en) Treating method and treatment device of alarm storms
US8458725B2 (en) Computer implemented method for removing an event registration within an event notification infrastructure
CN110096237B (en) Copy processing method, node, storage system, server and readable medium
CN113157522B (en) Method, system, device and storage medium for preventing loss of event based on alliance chain
CN113157426B (en) Task scheduling method, system, equipment and storage medium
US20070100973A1 (en) System and method for reliably purging a fault server
CN112612635B (en) Multi-level protection method for application program
US7171410B1 (en) Fault tolerant network element
CN113238815A (en) Interface access control method, device, equipment and storage medium
CN112702437B (en) Real-time automatic adjustment method for link data sampling rate
KR101888131B1 (en) Method for Performing Real-Time Changed Data Publish Service of DDS-DBMS Integration Tool
CN112685142A (en) Distributed data processing system
CN111708802A (en) Network request anti-reprocessing method and device
CN111382022B (en) Method, device, electronic equipment and storage medium for monitoring real-time stream computing platform
CN116074384B (en) Method and system for controlling service request quantity
Rossi et al. Data Resilience in the dCache Storage System
JPS61263350A (en) Automatic informing system for communication line failure

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