WO2022193530A1 - Blockchain protocol stack architecture development method and system, device, and storage medium - Google Patents

Blockchain protocol stack architecture development method and system, device, and storage medium Download PDF

Info

Publication number
WO2022193530A1
WO2022193530A1 PCT/CN2021/109468 CN2021109468W WO2022193530A1 WO 2022193530 A1 WO2022193530 A1 WO 2022193530A1 CN 2021109468 W CN2021109468 W CN 2021109468W WO 2022193530 A1 WO2022193530 A1 WO 2022193530A1
Authority
WO
WIPO (PCT)
Prior art keywords
microservice
data processing
instance information
network
storage
Prior art date
Application number
PCT/CN2021/109468
Other languages
French (fr)
Chinese (zh)
Inventor
薄辰龙
李宁
Original Assignee
深圳壹账通智能科技有限公司
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 深圳壹账通智能科技有限公司 filed Critical 深圳壹账通智能科技有限公司
Publication of WO2022193530A1 publication Critical patent/WO2022193530A1/en

Links

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/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • 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/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • 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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • 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

Definitions

  • the present application belongs to the field of blockchain technology, and specifically relates to a blockchain protocol stack architecture method, system, device and storage medium.
  • Blockchain is a new type of decentralized protocol that can securely store digital currency transactions or other data, and has the advantage that information cannot be forged and tampered with.
  • the protocol stacks of the blockchain in the existing technology are all monolithic applications, and functions such as network, data processing, and storage are all run in one program, and the performance can easily reach the upper limit.
  • the program of the single application is relatively large, and it is very difficult to improve the performance of the blockchain protocol stack through program expansion.
  • This application proposes a blockchain protocol stack architecture method, system, device and storage medium, which develops each function in the blockchain protocol stack into a service component in a microservice architecture.
  • the service components do not affect each other, and the service components with high processing pressure can be individually upgraded in a targeted manner, and the performance of the protocol stack can be flexibly adjusted to improve the performance of the protocol stack to avoid performance bottlenecks in the protocol stack.
  • the embodiment of the first aspect of this application proposes a blockchain protocol stack architecture method.
  • the blockchain protocol stack includes network microservices, data processing microservices, storage microservices, and registration microservices.
  • the method includes:
  • the network microservice, the data processing microservice and the storage microservice all send respective instance information to the registration microservice;
  • the registration microservice receives instance information sent by the network microservice, the data processing microservice, and the storage microservice, and stores the received instance information in a service list;
  • the registered microservice sends the service list to the network microservice and the data processing microservice;
  • the network microservice receives the transaction information sent by the user, and forwards the transaction information to the data processing microservice according to the service list;
  • the data processing microservice receives the transaction information, processes the transaction information, and forwards the transaction information and processing results to the storage microservice for storage according to the service list.
  • the network microservice receives transaction information sent by a user, and forwards the transaction information to the data processing microservice according to the service list, including:
  • the network microservice selects instance information of a data processing microservice from the service list stored in the local cache;
  • the network microservice forwards the transaction information to the data processing microservice corresponding to the instance information according to the selected instance information.
  • the network microservice selects instance information of a data processing microservice from the service list stored in the local cache, including:
  • the network microservice queries whether there are multiple instance information of the data processing microservice contained in the service list in the local cache according to the microservice identifier corresponding to the data processing microservice;
  • the service list only includes instance information of one data processing microservice, select the instance information included in the service list;
  • the locally cached service list includes instance information of multiple data processing microservices
  • one instance information is selected from the instance information of the multiple data processing microservices according to the preset load balancing policy.
  • selecting one instance information from the instance information of the plurality of data processing microservices according to a preset load balancing strategy includes:
  • the network microservice selects one instance information from the instance information of the multiple data processing microservices according to the data sending order corresponding to each data processing microservice specified by the preset load balancing policy; or, the network microservice Obtain the instance information of the data processing microservice with the shortest response time currently recorded in the preset load balancing policy, where the response time is the average value of the time required for the data processing microservice to process all tasks within the preset time period.
  • the method further includes:
  • Each data processing microservice in the protocol stack system sends its own response time to each network microservice every preset time period;
  • Each network microservice receives the response time sent by each data processing microservice, determines the data processing microservice with the shortest response time, and records the instance information of the data processing microservice with the shortest response time in the preset load balancing policy .
  • the network microservice forwards the transaction information to the data processing microservice corresponding to the instance information according to the selected instance information, including:
  • the network microservice extracts the IP address of the data processing microservice from the instance information
  • the network microservice forwards the transaction information to the data processing microservice according to the IP address.
  • the data processing microservice receives the transaction information, processes the transaction information, and forwards the transaction information and processing results to the storage microservice for processing according to the service list.
  • storage including:
  • the data processing microservice queries whether there are multiple instance information of the storage microservice contained in the service list in the local cache according to the microservice identifier corresponding to the storage microservice;
  • the IP address of the storage microservice is extracted from the instance information, and the transaction information and processing result are forwarded to the storage microservice according to the IP address. Describe the storage microservice;
  • the locally cached service list includes the instance information of multiple storage microservices, select one instance information from the multiple storage microservices instance information according to the preset storage balance strategy, and select one instance information from the selected instance information.
  • the IP address is extracted from the information, and the transaction information and the processing result are forwarded to the storage microservice according to the extracted IP address.
  • the embodiment of the second aspect of the present application provides a blockchain protocol stack architecture system, including a network microservice module, a data processing microservice module, a storage microservice module, and a registration microservice module;
  • the network micro-service module is configured to send its own instance information to the registered micro-service module when the protocol stack is started; receive the service list sent by the registered micro-service module; receive transaction information sent by the user, according to the The service list forwards the transaction information to the data processing microservice module;
  • the data processing micro-service module is used to send its own instance information to the registered micro-service module when the protocol stack is started; receive the service list sent by the registered micro-service module; The transaction information is processed, and the transaction information and processing results are forwarded to the storage microservice module for storage according to the service list;
  • the registration micro-service module is configured to receive instance information sent by the network micro-service module, the data processing micro-service module and the storage micro-service module, and store the received instance information in the service list;
  • the service list is sent to the network microservice module and the data processing microservice module;
  • the storage microservice module is configured to receive and store the transaction information and processing results sent by the data processing microservice module.
  • An embodiment of the third aspect of the present application provides a computer device, including a memory and a processor, where computer-readable instructions are stored in the memory, and when the computer-readable instructions are executed by the processor, cause the processing
  • the device executes the steps of the method described in the first aspect above.
  • Embodiments of the fourth aspect of the present application provide a storage medium storing computer-readable instructions, and when the computer-readable instructions are executed by one or more processors, cause the one or more processors to execute the above-mentioned first aspect the steps of the method.
  • the protocol stack of the blockchain is divided by function, and each function is developed into mutually independent service components in the microservice architecture.
  • the service components do not affect each other.
  • the service components with high processing pressure can be individually upgraded and expanded, and the performance of the protocol stack can be flexibly adjusted and improved to avoid performance bottlenecks in the protocol stack.
  • the network microservices, data processing microservices and storage microservices in the microservice architecture of the protocol stack all register their own instance information in the registered microservices, and can realize network distribution and data processing according to the service list in the registered microservices. load balancing.
  • FIG. 1 shows a flowchart of a blockchain protocol stack architecture method provided by an embodiment of the present application
  • FIG. 2 shows a schematic structural diagram of a blockchain protocol stack architecture system provided by an embodiment of the present application
  • FIG. 3 shows a schematic structural diagram of a computer device provided by an embodiment of the present application
  • FIG. 4 shows a schematic diagram of a storage medium provided by an embodiment of the present application.
  • Some embodiments of the present application provide a blockchain protocol stack architecture method, which applies the microservice technology to the blockchain protocol stack.
  • the protocol stack of the blockchain is divided into four functions: network, data processing, storage and registration according to functions, and these four functions are developed into network microservices, data processing microservices, storage microservices and registration microservices in the microservice architecture.
  • Serve The network microservices, data processing microservices, and storage microservices all register their own instance information in the registration microservices.
  • the network microservices and data processing microservices also pull the service list from the registered microservices, and implement network distribution based on the service list. and load balancing of data processing.
  • the microservice components in the protocol stack do not affect each other.
  • the microservice components with high processing pressure can be individually upgraded and expanded, and the performance of the protocol stack can be flexibly adjusted and improved. Avoid performance bottlenecks in the protocol stack.
  • the method specifically includes the following steps:
  • Step 101 When the protocol stack of the blockchain is started, the network microservice, the data processing microservice and the storage microservice all send their respective instance information to the registered microservice.
  • the protocol stack of the blockchain includes network microservices, data processing microservices, storage microservices and registration microservices.
  • the protocol stack of the blockchain is divided into four functions: network, data processing, storage, and registration according to functions. Then these four functions are developed into network microservices, data processing microservices, storage microservices and registration microservices in the microservice architecture. These microservices are independent microservice components, and these microservice components can be configured in the same It can also be configured on different hardware devices.
  • the network microservice is responsible for the transmission and reception of the protocol stack network, such as the reception or forwarding of transactions and blocks, the reception or occurrence of consensus messages, the reception or forwarding of user query requests, execution requests and other request information.
  • the data processing microservice is responsible for data processing operations such as the execution of block consensus, the execution of transactions, and information query. In other embodiments of this application, it can also be subdivided into multiple microservices according to the specific processing functions of data processing. For example, you can set Microservices that are only responsible for executing block consensus, microservices that are only responsible for information query, and microservices that are only responsible for executing transactions.
  • the storage microservice is responsible for storing blocks, state information, transaction information, etc.
  • Registering microservices is used to collect instance information of network microservices, data processing microservices, and storage microservices, store the collected instance information in a service list, and synchronize the service list to network microservices, data processing microservices, and storage microservices. Microservices.
  • the protocol stack of the blockchain may include one or more network microservices, one or more data processing microservices, and one or more storage microservices.
  • the number of network microservices, data processing microservices, and storage microservices can be set according to the performance requirements of the blockchain system.
  • the network microservice, data processing microservice and storage microservice After building the protocol stack of the blockchain into the protocol stack of the microservice architecture mode, when the protocol stack of the blockchain is started, the network microservice, data processing microservice and storage microservice all send their respective instance information to the registered microservice .
  • the instance information includes the microservice identifier, instance number, and IP address.
  • the microservice identifier of the network microservice can be net
  • the instance numbers of the two network microservices are instance1 and instance2 respectively
  • the IP address of one network microservice is 192.168.0.10
  • the other network microservice The IP address of the microservice is 192.168.0.11.
  • the instance information of these two network microservices can be net-instance1-192.168.0.10, net- instance2-192.168.0.11.
  • the microservice identifier of the data processing microservice can be compute, the instance numbers of the two data processing microservices are instance1 and instance2 respectively, and the IP address of one data processing microservice is 192.168. 0.12, the IP address of another data processing microservice is 192.168.0.13. Then the instance information of the two data processing microservices can be compute-instance1-192.168.0.12 and compute-instance2-192.168.0.13 respectively.
  • Step 102 The registered microservice receives the instance information sent by the network microservice, the data processing microservice, and the storage microservice, and stores the received instance information in the service list.
  • the registration microservice After the registration microservice receives the instance information sent by the network microservice, data processing microservice, and storage microservice, it stores the received instance information in the service list.
  • the instance information of the same type of microservices in the service list can be arranged consecutively. As shown in Table 1, the service list is firstly the instance information of the network microservice, then the instance information of the data processing microservice, and finally the instance information of the storage microservice. information.
  • Step 103 The registered microservice sends the service list to the network microservice and the data processing microservice.
  • the registered microservice receives the instance information sent by each other microservice in the protocol stack of the blockchain, stores the received instance information in the service list, and sends the service list to each network microservice and each data processing Microservices. After each network microservice and each data processing microservice receive the service list, the service list is stored in their respective caches.
  • Step 104 The network microservice receives the transaction information sent by the user, and forwards the transaction information to the data processing microservice according to the service list.
  • a network microservice in the protocol stack of the blockchain receives the transaction information sent by the user, selects the instance information of a data processing microservice from the service list stored in the local cache, and executes the transaction according to the selected instance information.
  • the information is forwarded to the data processing microservice corresponding to the instance information.
  • the network microservice queries whether there are multiple instance information of the data processing microservice contained in the service list of the local cache according to the microservice identifier (such as compute) corresponding to the data processing microservice. For instance information of a data processing microservice, the IP address of the data processing microservice is extracted from the instance information. The transaction information is forwarded to the data processing microservice according to the IP address.
  • the microservice identifier such as compute
  • the network microservice finds that the locally cached service list includes instance information of multiple data processing microservices, one instance information is selected from the instance information of the multiple data processing microservices according to the preset load balancing policy.
  • the IP address of the data processing microservice is extracted from the instance information.
  • the transaction information is forwarded to the data processing microservice according to the IP address.
  • the preset load balancing policy can specify the data sending order of all data processing microservices in the service list, and the network microservices send data to each data processing microservice in turn according to the data sending order specified by the preset load balancing policy. For example, assuming that the service list includes compute-instance1-192.168.0.12, compute-instance2-192.168.0.13, and compute-instance3-192.168.0.15, a total of three data processing microservice instance information, the data is sent according to the preset load balancing policy
  • the order is the order in which the numbers are arranged in sequence, that is, the order of data transmission is instance1, instance2, and instance3.
  • the network microservice After the network microservice receives the transaction information, it first sends it to the data processing microservice corresponding to instance1, and then receives a transaction information and sends it to the data processing microservice corresponding to instance2, and then sends the received transaction information to the corresponding data processing microservice of instance3. The data processing microservice of instance1, and then the transaction information is received and sent to the data processing microservice corresponding to instance1, and so on.
  • the preset load balancing strategy may not perform load balancing according to the above-mentioned sequence of numbers, but the preset load balancing strategy stipulates that the load balancing is performed according to the response time of each data processing microservice Load balancing, that is, sending data to the data processing microservice with the shortest response time each time.
  • each data processing microservice in the protocol stack system of the blockchain needs to send its own response time to each network microservice every preset time period, and the response time is the data processing microservice in the preset time period. The average time it takes to process all tasks over the time period.
  • the data processing microservice obtains the instance information of each network microservice from the locally cached service list according to the service identifier corresponding to the network microservice, and extracts the IP address of each network microservice from the instance information of each network microservice. . Then send its own response time to each network microservice according to the IP address of each network microservice.
  • the above-mentioned preset time period may be 20 minutes, 30 minutes, or 1 hour, etc. The shorter the preset time period, the higher the accuracy of load balancing.
  • the network microservice After receiving the response time sent by each data processing microservice, the network microservice determines the data processing microservice with the shortest response time, and records the instance information of the data processing microservice in the preset load balancing policy. After the network microservice receives the transaction information, it obtains the instance information of the data processing microservice currently recorded in the preset load balancing policy. The IP address of the data processing microservice is extracted from the instance information. The transaction information is forwarded to the data processing microservice according to the IP address.
  • the network microservice realizes the load balancing among multiple data processing microservices in the blockchain protocol stack according to the preset load balancing strategy and the service list, avoiding the task backlog of individual data processing microservices and improving data processing efficiency , to reduce user waiting time.
  • Step 105 The data processing microservice receives the transaction information, processes the transaction information, and forwards the transaction information and the processing result to the storage microservice for storage according to the service list.
  • the data processing microservice After the data processing microservice receives the transaction information sent by the network microservice, it processes the transaction information to obtain a processing result. After that, the transaction information and its processing result need to be stored, the data processing microservice obtains the service list from the local cache, and queries the storage microservice contained in the service list in the local cache according to the microservice identifier (such as store) corresponding to the storage microservice. Whether the instance information is multiple, and if the service list includes only one instance information of the storage microservice, the IP address of the storage microservice is extracted from the instance information. The transaction information and processing result are forwarded to the storage microservice according to the IP address.
  • the microservice identifier such as store
  • the network microservice finds that the locally cached service list includes instance information of multiple storage microservices, one instance information is selected from the instance information of the multiple storage microservices according to the preset storage balancing strategy. Extract the IP address of the storage microservice from the instance information. The transaction information and processing result are forwarded to the storage microservice according to the IP address.
  • the preset storage balance strategy can specify the data sending order of all storage microservices in the service list, and the data processing microservice sends data to each storage microservice in turn according to the data sending order specified by the preset storage balance strategy. For example, assuming that the service list includes store-instance1-192.168.0.14, store-instance2-192.168.0.16, store-instance3-192.168.0.17, a total of three storage microservice instance information, the preset storage balance policy specifies the data sending order It is the order in which the numbers are arranged in sequence, that is, the data sending order is instance1, instance2, and instance3.
  • the data processing microservice first sends the transaction information and its processing result to the storage microservice corresponding to instance1, and then processes a transaction information and sends it to the storage microservice corresponding to instance2, and processes another transaction information and sends it to the storage microservice corresponding to instance3. service, and then process the transaction information and then send it to the storage microservice corresponding to instance1, and so on.
  • the data processing microservice realizes the balance of storage capacity among multiple storage microservices in the blockchain protocol stack, avoiding the situation that the storage capacity of individual storage microservices is much larger than that of other storage microservices, and reducing the occurrence of individual storage microservices. Storage failure due to insufficient storage space for the storage microservice.
  • the protocol stack of the blockchain is designed as a micro-service architecture mode, because the network micro-services, data processing micro-services, storage micro-services and registration micro-services in the micro-service architecture are decoupled from each other , there will be no mutual interference in performance. Therefore, for microservices of various functions, when solving the performance bottleneck problem, targeted improvements can be made to the hardware where the microservices of a certain function with performance problems are located. For example, if the network microservice has a data distribution bottleneck, the bandwidth of the hardware where the network microservice is located can be increased. If there is a computing bottleneck in the data processing microservice, the computing power of the central processing unit of the hardware where the data processing microservice is located can be improved. If the storage microservice has a storage space bottleneck, the storage capacity of the hard disk of the hardware where the storage microservice is located can be increased.
  • horizontal instance expansion may also be performed for the microservices of a certain function with performance problems, that is, to increase the number of microservices of the function. For example, if network microservices have data distribution bottlenecks, increase the number of network microservices. If the data processing microservices have computing bottlenecks, increase the number of data processing microservices.
  • the protocol stack of the blockchain is divided by function, and each function is developed into mutually independent service components in the microservice architecture.
  • the service components do not affect each other.
  • the service components with high processing pressure can be individually upgraded and expanded, and the performance of the protocol stack can be flexibly adjusted and improved to avoid performance bottlenecks in the protocol stack.
  • the network microservices, data processing microservices and storage microservices in the microservice architecture of the protocol stack all register their own instance information in the registered microservices, and can realize network distribution and data processing according to the service list in the registered microservices. load balancing.
  • An embodiment of the present application provides a blockchain protocol stack architecture system, which is used to execute the blockchain protocol stack architecture method described in any of the above embodiments.
  • the system includes: network microservices module 201, data processing microservice module 202, storage microservice module 203 and registration microservice module 204;
  • the network microservice module 201 is used to send its own instance information to the registration microservice module 204 when the protocol stack is started; receive the service list sent by the registration microservice module 204; receive the transaction information sent by the user, and convert the transaction information according to the service list. forwarded to the data processing microservice module 202;
  • the data processing microservice module 202 is used for sending its own instance information to the registration microservice module 204 when the protocol stack is started; receiving the service list sent by the registration microservice module 204; receiving transaction information, processing the transaction information, and according to the service list Forward the transaction information and processing results to the storage microservice module 203 for storage;
  • the registration micro-service module 204 is used to receive the instance information sent by the network micro-service module 201, the data processing micro-service module 202 and the storage micro-service module 203, and store the received instance information in the service list; send the service list to the network micro-service module Service module 201 and data processing microservice module 202;
  • the storage microservice module 203 is used to receive and store the transaction information and processing results sent by the data processing microservice module 202 .
  • the network microservice module 201 is used to select an instance information of the data processing microservice module 202 from the service list stored in the local cache; according to the selected instance information, forward the transaction information to the data processing microservice module 202 corresponding to the instance information .
  • the network microservice module 201 is configured to query whether there are multiple instance information of the data processing microservice module 202 contained in the service list of the local cache according to the microservice module identifier corresponding to the data processing microservice module 202; if the service list is obtained by querying only includes the instance information of one data processing microservice module 202, then select the instance information included in the service list; if the locally cached service list includes the instance information of multiple data processing microservice modules 202, according to the preset load For the balancing strategy, one instance information is selected from the instance information of the multiple data processing microservice modules 202 .
  • the network microservice module 201 is configured to select one instance information from the instance information of the multiple data processing microservice modules 202 according to the data sending order corresponding to each data processing microservice module 202 specified by the preset load balancing policy; or, It is used to obtain the instance information of the data processing microservice module 202 with the shortest response time currently recorded in the preset load balancing policy, and the response time is the average value of the time required for the data processing microservice module 202 to process all tasks within the preset time period. .
  • Each data processing microservice module 202 is configured to send its own response time to each network microservice module 201 every preset time period;
  • Each network microservice module 201 is configured to receive the response time sent by each data processing microservice module 202, determine the data processing microservice module 202 with the shortest response time, and use the instance of the data processing microservice module 202 with the shortest response time The information is recorded in the preset load balancing policy.
  • the network microservice module 201 is configured to extract the IP address of the data processing microservice module 202 from the instance information; and forward the transaction information to the data processing microservice module 202 according to the IP address.
  • the data processing microservice module 202 is used to query whether there are multiple instance information of the storage microservice module 203 contained in the service list of the local cache according to the microservice module identifier corresponding to the storage microservice module 203; Only one instance information of the storage microservice module 203 is included, then the IP address of the storage microservice module 203 is extracted from the instance information, and the transaction information and processing results are forwarded to the storage microservice module 203 according to the IP address; if the local cache is queried
  • the service list includes the instance information of multiple storage micro-service modules 203, then according to the preset storage balancing strategy, select one instance information from the multiple storage micro-service modules 203 instance information, and extract the IP address from the selected instance information. , and forward the transaction information and the processing result to the storage microservice module 203 according to the extracted IP address.
  • the protocol stack of the blockchain is divided by function, and each function is developed into mutually independent service components in the microservice architecture.
  • the service components do not affect each other.
  • the service components with high processing pressure can be individually upgraded and expanded, and the performance of the protocol stack can be flexibly adjusted and improved to avoid performance bottlenecks in the protocol stack.
  • the network microservice module, data processing microservice module and storage microservice module in the microservice architecture of the protocol stack all register their own instance information in the registration microservice module, and can implement the network according to the service list in the registration microservice module. Distribution and load balancing of data processing.
  • the computer device includes a processor, a storage medium, a memory, and a network interface connected through a system bus.
  • the storage medium of the computer device stores an operating system, a database and computer-readable instructions
  • the database can store a sequence of control information
  • the processor can be made to implement a blockchain Protocol stack architecture approach.
  • the processor of the computer device is used to provide computing and control capabilities and support the operation of the entire computer device.
  • Computer-readable instructions may be stored in the memory of the computer device, and when the computer-readable instructions are executed by the processor, the processor may execute a blockchain protocol stack architecture method.
  • the network interface of the computer equipment is used for communication with the terminal connection.
  • FIG. 3 is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer equipment to which the solution of the present application is applied. Include more or fewer components than shown in the figures, or combine certain components, or have a different arrangement of components.
  • the computer device includes a memory, a processor and a computer program stored on the memory and running on the processor.
  • the processor executes the computer program, the following steps are implemented: when the protocol stack is started, the network microservice, the data processing microservice and the storage microservice Each service sends its own instance information to the registered microservice; the registered microservice receives the instance information sent by the network microservice, data processing microservice and storage microservice, and stores the received instance information in the service list; the registered microservice stores the service list Send to the network microservice and data processing microservice; the network microservice receives the transaction information sent by the user, and forwards the transaction information to the data processing microservice according to the service list; the data processing microservice receives the transaction information, processes the transaction information, and The list forwards transaction information and processing results to the storage microservice for storage.
  • the network microservice selects an instance information of the data processing microservice from the service list stored in the local cache; the network microservice forwards the transaction information to the instance information according to the selected instance information Corresponding data processing microservices.
  • the network microservice inquires whether there are multiple instance information of the data processing microservice contained in the service list of the local cache; If the service list only includes the instance information of one data processing microservice, select the instance information included in the service list; if the locally cached service list includes the instance information of multiple data processing microservices, the default load balancing strategy is used. , select one instance information from the instance information of multiple data processing microservices.
  • the network microservice selects one instance information from the instance information of the multiple data processing microservices according to the data sending order corresponding to each data processing microservice specified by the preset load balancing policy ; Or, the network microservice obtains the instance information of the data processing microservice with the shortest response time currently recorded in the preset load balancing policy, and the response time is the average time required for the data processing microservice to process all tasks within the preset time period.
  • each data processing microservice in the protocol stack sends its own response time to each network microservice every preset time period; each network microservice receives each network microservice.
  • the response time sent by the data processing microservice determines the data processing microservice with the shortest response time, and records the instance information of the data processing microservice with the shortest response time in the preset load balancing policy.
  • the network microservice extracts the IP address of the data processing microservice from the instance information; the network microservice forwards the transaction information to the data processing microservice according to the IP address.
  • the data processing microservice inquires whether there are multiple instance information of the storage microservice contained in the service list of the local cache; The list only includes the instance information of one storage microservice, then the IP address of the storage microservice is extracted from the instance information, and the transaction information and processing results are forwarded to the storage microservice according to the IP address; if the locally cached service list is queried, If the instance information of multiple storage microservices is included, according to the preset storage balance strategy, select one instance information from the instance information of multiple storage microservices, extract the IP address from the selected instance information, and transfer the transaction according to the extracted IP address. The information and processing results are forwarded to the storage microservice.
  • An embodiment of the present application further provides a storage medium storing computer-readable instructions.
  • the one or more processors perform the following steps :
  • the network microservice, data processing microservice and storage microservice all send their respective instance information to the registered microservice;
  • the registered microservice receives the instance information sent by the network microservice, data processing microservice and storage microservice, Store the received instance information in the service list; register the microservice and send the service list to the network microservice and data processing microservice;
  • the network microservice receives the transaction information sent by the user, and forwards the transaction information to the data processing microservice according to the service list ;
  • the data processing microservice receives the transaction information, processes the transaction information, and forwards the transaction information and processing results to the storage microservice for storage according to the service list.
  • the processor may also perform the following steps: the network microservice selects an instance information of the data processing microservice from the service list stored in the local cache; the network microservice forwards the transaction information to the data processing corresponding to the instance information according to the selected instance information Microservices.
  • the processor may also perform the following steps: according to the microservice identifier corresponding to the data processing microservice, the network microservice queries whether there are multiple instance information of the data processing microservice contained in the service list of the local cache; If the instance information of one data processing microservice is included, select the instance information included in the service list; if the locally cached service list includes the instance information of multiple data processing microservices, according to the preset load balancing strategy, select the instance information from multiple data processing microservices. Select an instance information from the instance information of the data processing microservice.
  • the processor may also perform the following steps: the network microservice selects one instance information from the instance information of multiple data processing microservices according to the data sending order corresponding to each data processing microservice specified by the preset load balancing policy; or, the network The microservice obtains the instance information of the data processing microservice with the shortest response time currently recorded in the preset load balancing policy, and the response time is the average of the time required for the data processing microservice to process all tasks within the preset time period.
  • the processor may further perform the following steps: each data processing microservice in the protocol stack sends its own response time to each network microservice every preset time period; each network microservice receives each data processing microservice The sent response time determines the data processing microservice with the shortest response time, and records the instance information of the data processing microservice with the shortest response time in the preset load balancing policy.
  • the processor may further perform the following steps: the network microservice extracts the IP address of the data processing microservice from the instance information; the network microservice forwards the transaction information to the data processing microservice according to the IP address.
  • the processor may also perform the following steps: the data processing microservice, according to the microservice identifier corresponding to the storage microservice, inquires whether there are multiple instance information of the storage microservice contained in the service list of the local cache; For instance information of a storage microservice, the IP address of the storage microservice is extracted from the instance information, and the transaction information and processing results are forwarded to the storage microservice according to the IP address; if the locally cached service list is queried, it includes multiple storage services. For the instance information of the microservice, according to the preset storage balance strategy, select one instance information from the instance information of multiple storage microservices, extract the IP address from the selected instance information, and combine the transaction information and processing results according to the extracted IP address. Forward to the storage microservice.
  • Nonvolatile memory may include read only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory.
  • Volatile memory may include random access memory (RAM) or external cache memory.
  • RAM is available in various forms such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double-rate SDRAM (SSRSDRAM), enhanced SDRAM (ESDRAM), synchronous Link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Finance (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Accounting & Taxation (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • General Business, Economics & Management (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The present application provides a blockchain protocol stack architecture development method and system, a device, and a storage medium. The method comprises: when a protocol stack is started, a network micro-service, a data processing micro-service, and a storage micro-service all send instance information to a registration micro-service; the registration micro-service stores the received instance information in a service list, and sends the service list to the network micro-service and the data processing micro-service; the network micro-service receives transaction information sent by a user, and forwards the transaction information to the data processing micro-service according to the service list; and the data processing micro-service receives and processes the transaction information, and according to the service list, forwards the transaction information and a processing result to the storage micro-service for storage. In the present application, functions in a protocol stack of a blockchain are developed into service components in a micro-service architecture, and the service components do not affect each other, such that a service component having high processing pressure can be individually upgraded and expanded in a targeted manner, thereby flexibly adjusting and improving the performance of the protocol stack and avoiding performance bottlenecks of the protocol stack.

Description

一种区块链协议栈架构方法、系统、设备及存储介质A block chain protocol stack architecture method, system, device and storage medium
本申请要求于2021年03月17日提交中国专利局、申请号为202110287197.1,申请名称为“一种区块链协议栈架构方法、系统、设备及存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims the priority of the Chinese patent application filed on March 17, 2021 with the application number of 202110287197.1, and the application name is “A method, system, device and storage medium for a blockchain protocol stack”, which The entire contents of this application are incorporated by reference.
技术领域technical field
本申请属于区块链技术领域,具体涉及一种区块链协议栈架构方法、系统、设备及存储介质。The present application belongs to the field of blockchain technology, and specifically relates to a blockchain protocol stack architecture method, system, device and storage medium.
背景技术Background technique
区块链是一种新型去中心化协议,能安全地存储数字货币交易或其他数据,具有信息不可伪造和篡改的优点。目前,现有技术中区块链的协议栈都是单体应用的,网络、数据处理、存储等功能都是在一个程序里运行,性能很容易达到上限。且单体应用的程序比较庞大,若想通过程序扩展来提升区块链协议栈的性能,难度很高。Blockchain is a new type of decentralized protocol that can securely store digital currency transactions or other data, and has the advantage that information cannot be forged and tampered with. At present, the protocol stacks of the blockchain in the existing technology are all monolithic applications, and functions such as network, data processing, and storage are all run in one program, and the performance can easily reach the upper limit. Moreover, the program of the single application is relatively large, and it is very difficult to improve the performance of the blockchain protocol stack through program expansion.
技术问题technical problem
本申请提出一种区块链协议栈架构方法、系统、设备及存储介质,将区块链的协议栈中各功能开发成微服务架构中的服务组件。各服务组件间相互不影响,可有针对性地单独升级扩展处理压力大的服务组件,灵活调整提升协议栈性能,避免协议栈出现性能瓶颈。This application proposes a blockchain protocol stack architecture method, system, device and storage medium, which develops each function in the blockchain protocol stack into a service component in a microservice architecture. The service components do not affect each other, and the service components with high processing pressure can be individually upgraded in a targeted manner, and the performance of the protocol stack can be flexibly adjusted to improve the performance of the protocol stack to avoid performance bottlenecks in the protocol stack.
技术解决方案technical solutions
本申请第一方面实施例提出了一种区块链协议栈架构方法,区块链的协议栈包括网络微服务、数据处理微服务、存储微服务及注册微服务,所述方法包括:The embodiment of the first aspect of this application proposes a blockchain protocol stack architecture method. The blockchain protocol stack includes network microservices, data processing microservices, storage microservices, and registration microservices. The method includes:
所述协议栈启动时,所述网络微服务、所述数据处理微服务及所述存储微服务均发送各自的实例信息给所述注册微服务;When the protocol stack is started, the network microservice, the data processing microservice and the storage microservice all send respective instance information to the registration microservice;
所述注册微服务接收所述网络微服务、所述数据处理微服务及所述存储微服务发送的实例信息,将接收的所述实例信息存储在服务列表中;The registration microservice receives instance information sent by the network microservice, the data processing microservice, and the storage microservice, and stores the received instance information in a service list;
所述注册微服务将所述服务列表发送给所述网络微服务和所述数据处理微服务;The registered microservice sends the service list to the network microservice and the data processing microservice;
所述网络微服务接收用户发送的交易信息,根据所述服务列表将所述交易信息转发给所述数据处理微服务;The network microservice receives the transaction information sent by the user, and forwards the transaction information to the data processing microservice according to the service list;
所述数据处理微服务接收所述交易信息,对所述交易信息进行处理,根据所述服务列表将所述交易信息及处理结果转发给所述存储微服务进行存储。The data processing microservice receives the transaction information, processes the transaction information, and forwards the transaction information and processing results to the storage microservice for storage according to the service list.
在本申请的一些实施例中,所述网络微服务接收用户发送的交易信息,根据所述服务列表将所述交易信息转发给所述数据处理微服务,包括:In some embodiments of the present application, the network microservice receives transaction information sent by a user, and forwards the transaction information to the data processing microservice according to the service list, including:
所述网络微服务从本地缓存中存储的所述服务列表中选择一个数据处理微服务的实例信息;The network microservice selects instance information of a data processing microservice from the service list stored in the local cache;
所述网络微服务根据选择的所述实例信息,将所述交易信息转发给所述实例信息对应的数据处理微服务。The network microservice forwards the transaction information to the data processing microservice corresponding to the instance information according to the selected instance information.
在本申请的一些实施例中,所述网络微服务从本地缓存中存储的所述服务列表中选择一个数据处理微服务的实例信息,包括:In some embodiments of the present application, the network microservice selects instance information of a data processing microservice from the service list stored in the local cache, including:
所述网络微服务根据数据处理微服务对应的微服务标识,查询本地缓存的所述服务列表中包含的数据处理微服务的实例信息是否为多个;The network microservice queries whether there are multiple instance information of the data processing microservice contained in the service list in the local cache according to the microservice identifier corresponding to the data processing microservice;
若查询出服务列表中仅包括一个数据处理微服务的实例信息,则选择所述服务列表包括的所述实例信息;If it is queried that the service list only includes instance information of one data processing microservice, select the instance information included in the service list;
若查询出本地缓存的服务列表中包括多个数据处理微服务的实例信息,则按照预设负载均衡策略,从所述多个数据处理微服务的实例信息中选择一个实例信息。If it is found that the locally cached service list includes instance information of multiple data processing microservices, one instance information is selected from the instance information of the multiple data processing microservices according to the preset load balancing policy.
在本申请的一些实施例中,所述按照预设负载均衡策略,从所述多个数据处理微服务的实例信息中选择一个实例信息,包括:In some embodiments of the present application, selecting one instance information from the instance information of the plurality of data processing microservices according to a preset load balancing strategy includes:
所述网络微服务按照预设负载均衡策略规定的每个数据处理微服务对应的数据发送次序,从所述多个数据处理微服务的实例信息中选择一个实例信息;或者,所述网络微服务获取预设负载均衡策略中当前记录的响应时间最短的数据处理微服务的实例信息,所述响应时间为数据处理微服务在预设时间段内处理所有任务所需时长的平均值。The network microservice selects one instance information from the instance information of the multiple data processing microservices according to the data sending order corresponding to each data processing microservice specified by the preset load balancing policy; or, the network microservice Obtain the instance information of the data processing microservice with the shortest response time currently recorded in the preset load balancing policy, where the response time is the average value of the time required for the data processing microservice to process all tasks within the preset time period.
在本申请的一些实施例中,所述方法还包括:In some embodiments of the present application, the method further includes:
每隔所述预设时间段所述协议栈系统中的每个数据处理微服务都将自己的响应时间发送给每个网络微服务;Each data processing microservice in the protocol stack system sends its own response time to each network microservice every preset time period;
每个网络微服务接收每个数据处理微服务发送的响应时间,确定出响应时间最短的数据处理微服务,将所述响应时间最短的数据处理微服务的实例信息记录在预设负载均衡策略中。Each network microservice receives the response time sent by each data processing microservice, determines the data processing microservice with the shortest response time, and records the instance information of the data processing microservice with the shortest response time in the preset load balancing policy .
在本申请的一些实施例中,所述网络微服务根据选择的所述实例信息,将所述交易信息转发给所述实例信息对应的数据处理微服务,包括:In some embodiments of the present application, the network microservice forwards the transaction information to the data processing microservice corresponding to the instance information according to the selected instance information, including:
所述网络微服务从所述实例信息中提取所述数据处理微服务的IP地址;The network microservice extracts the IP address of the data processing microservice from the instance information;
所述网络微服务根据所述IP地址将所述交易信息转发给所述数据处理微服务。The network microservice forwards the transaction information to the data processing microservice according to the IP address.
在本申请的一些实施例中,所述数据处理微服务接收所述交易信息,对所述交易信息进行处理,根据所述服务列表将所述交易信息及处理结果转发给所述存储微服务进行存储,包括:In some embodiments of the present application, the data processing microservice receives the transaction information, processes the transaction information, and forwards the transaction information and processing results to the storage microservice for processing according to the service list. storage, including:
所述数据处理微服务根据存储微服务对应的微服务标识,查询本地缓存的所述服务列表中包含的存储微服务的实例信息是否为多个;The data processing microservice queries whether there are multiple instance information of the storage microservice contained in the service list in the local cache according to the microservice identifier corresponding to the storage microservice;
若查询出服务列表中仅包括一个存储微服务的实例信息,则从所述实例信息中提取出所述存储微服务的IP地址,根据所述IP地址将所述交易信息及处理结果转发给所述存储微服务;If it is found that the service list only includes the instance information of one storage microservice, the IP address of the storage microservice is extracted from the instance information, and the transaction information and processing result are forwarded to the storage microservice according to the IP address. Describe the storage microservice;
若查询出本地缓存的服务列表中包括多个存储微服务的实例信息,则按照预设存储均衡策略,从所述多个存储微服务的实例信息中选择一个实例信息,从选择的所述实例信息中提取IP地址,根据提取的所述IP地址将所述交易信息及处理结果转发给所述存储微服务。If it is found that the locally cached service list includes the instance information of multiple storage microservices, select one instance information from the multiple storage microservices instance information according to the preset storage balance strategy, and select one instance information from the selected instance information. The IP address is extracted from the information, and the transaction information and the processing result are forwarded to the storage microservice according to the extracted IP address.
本申请第二方面的实施例提供了一种区块链协议栈架构系统,包括网络微服务模块、数据处理微服务模块、存储微服务模块及注册微服务模块;The embodiment of the second aspect of the present application provides a blockchain protocol stack architecture system, including a network microservice module, a data processing microservice module, a storage microservice module, and a registration microservice module;
所述网络微服务模块,用于在所述协议栈启动时,发送自己的实例信息给所述注册微服务模块;接收所述注册微服务模块发送的服务列表;接收用户发送的交易信息,根据所述服务列表将所述交易信息转发给所述数据处理微服务模块;The network micro-service module is configured to send its own instance information to the registered micro-service module when the protocol stack is started; receive the service list sent by the registered micro-service module; receive transaction information sent by the user, according to the The service list forwards the transaction information to the data processing microservice module;
所述数据处理微服务模块,用于所述协议栈启动时,发送自己的实例信息给所述注册微服务模块;接收所述注册微服务模块发送的服务列表;接收所述交易信息,对所述交易信息进行处理,根据所述服务列表将所述交易信息及处理结果转发给所述存储微服务模块进行存储;The data processing micro-service module is used to send its own instance information to the registered micro-service module when the protocol stack is started; receive the service list sent by the registered micro-service module; The transaction information is processed, and the transaction information and processing results are forwarded to the storage microservice module for storage according to the service list;
所述注册微服务模块,用于接收所述网络微服务模块、所述数据处理微服务模块及所述存储微服务模块发送的实例信息,将接收的所述实例信息存储在服务列表中;将所述服务列表发送给所述网络微服务模块和所述数据处理微服务模块;The registration micro-service module is configured to receive instance information sent by the network micro-service module, the data processing micro-service module and the storage micro-service module, and store the received instance information in the service list; The service list is sent to the network microservice module and the data processing microservice module;
所述存储微服务模块,用于接收并存储所述数据处理微服务模块发送的所述交易信息及处理结果。The storage microservice module is configured to receive and store the transaction information and processing results sent by the data processing microservice module.
本申请第三方面的实施例提供了一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述第一方面所述的方法的步骤。An embodiment of the third aspect of the present application provides a computer device, including a memory and a processor, where computer-readable instructions are stored in the memory, and when the computer-readable instructions are executed by the processor, cause the processing The device executes the steps of the method described in the first aspect above.
本申请第四方面的实施例提供了一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述第一方面所述的方法的步骤。Embodiments of the fourth aspect of the present application provide a storage medium storing computer-readable instructions, and when the computer-readable instructions are executed by one or more processors, cause the one or more processors to execute the above-mentioned first aspect the steps of the method.
有益效果beneficial effect
本申请实施例将区块链的协议栈按功能进行划分,并将各个功能开发成微服务架构中相互独立的服务组件。如此各服务组件之间相互不影响,针对处理压力大的服务组件,可以有针对性地单独对压力大的服务组件进行升级扩展,能够灵活地调整提升协议栈的性能,避免协议栈出现性能瓶颈。而且协议栈的微服务架构中的网络微服务、数据处理微服务和存储微服务均在注册微服务中注册自己的实例信息,并可以依据注册微服务中的服务列表实现网络分发以及数据处理的负载均衡。In the embodiment of the present application, the protocol stack of the blockchain is divided by function, and each function is developed into mutually independent service components in the microservice architecture. In this way, the service components do not affect each other. For the service components with high processing pressure, the service components with high pressure can be individually upgraded and expanded, and the performance of the protocol stack can be flexibly adjusted and improved to avoid performance bottlenecks in the protocol stack. . Moreover, the network microservices, data processing microservices and storage microservices in the microservice architecture of the protocol stack all register their own instance information in the registered microservices, and can realize network distribution and data processing according to the service list in the registered microservices. load balancing.
附图说明Description of drawings
图1示出了本申请一实施例所提供的一种区块链协议栈架构方法的流程图;FIG. 1 shows a flowchart of a blockchain protocol stack architecture method provided by an embodiment of the present application;
图2示出了本申请一实施例所提供的一种区块链协议栈架构系统的结构示意图;FIG. 2 shows a schematic structural diagram of a blockchain protocol stack architecture system provided by an embodiment of the present application;
图3示出了本申请一实施例所提供的一种计算机设备的结构示意图;FIG. 3 shows a schematic structural diagram of a computer device provided by an embodiment of the present application;
图4示出了本申请一实施例所提供的一种存储介质的示意图。FIG. 4 shows a schematic diagram of a storage medium provided by an embodiment of the present application.
本发明的实施方式Embodiments of the present invention
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。In order to make the purpose, technical solutions and advantages of the present application more clearly understood, the present application will be described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application, but not to limit the present application.
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。It will be understood that the terms "first", "second", etc. used in this application may be used herein to describe various elements, but these elements are not limited by these terms. These terms are only used to distinguish a first element from another element.
本申请的一些实施例提供了一种区块链协议栈架构方法,该方法将微服务技术应用于区块链的协议栈。将区块链的协议栈按功能划分为网络、数据处理、存储和注册四种功能,将这四种功能开发为微服务架构中的网络微服务、数据处理微服务、存储微服务和注册微服务。网络微服务、数据处理微服务和存储微服务均在注册微服务中注册自己的实例信息,网络微服务和数据处理微服务还从注册微服务拉取服务列表,并依据该服务列表实现网络分发以及数据处理的负载均衡。Some embodiments of the present application provide a blockchain protocol stack architecture method, which applies the microservice technology to the blockchain protocol stack. The protocol stack of the blockchain is divided into four functions: network, data processing, storage and registration according to functions, and these four functions are developed into network microservices, data processing microservices, storage microservices and registration microservices in the microservice architecture. Serve. The network microservices, data processing microservices, and storage microservices all register their own instance information in the registration microservices. The network microservices and data processing microservices also pull the service list from the registered microservices, and implement network distribution based on the service list. and load balancing of data processing.
如此协议栈中各微服务组件之间相互不影响,针对处理压力大的微服务组件,可以有针对性地单独对压力大的微服务组件进行升级扩展,能够灵活地调整提升协议栈的性能,避免协议栈出现性能瓶颈。In this way, the microservice components in the protocol stack do not affect each other. For the microservice components with high processing pressure, the microservice components with high pressure can be individually upgraded and expanded, and the performance of the protocol stack can be flexibly adjusted and improved. Avoid performance bottlenecks in the protocol stack.
参见图1,该方法具体包括以下步骤:Referring to Figure 1, the method specifically includes the following steps:
步骤101:区块链的协议栈启动时,网络微服务、数据处理微服务及存储微服务均发送各自的实例信息给注册微服务。Step 101: When the protocol stack of the blockchain is started, the network microservice, the data processing microservice and the storage microservice all send their respective instance information to the registered microservice.
其中,区块链的协议栈包括网络微服务、数据处理微服务、存储微服务及注册微服务。Among them, the protocol stack of the blockchain includes network microservices, data processing microservices, storage microservices and registration microservices.
本申请实施例将区块链的协议栈按照功能划分为网络、数据处理、存储和注册四种功能。然后将这四种功能开发为微服务架构中的网络微服务、数据处理微服务、存储微服务和注册微服务,这些微服务是相互独立的微服务组件,这些微服务组件可以配置在相同的硬件设备上,也可以配置在不同的硬件设备上。In this embodiment of the present application, the protocol stack of the blockchain is divided into four functions: network, data processing, storage, and registration according to functions. Then these four functions are developed into network microservices, data processing microservices, storage microservices and registration microservices in the microservice architecture. These microservices are independent microservice components, and these microservice components can be configured in the same It can also be configured on different hardware devices.
其中,网络微服务负责协议栈网络的收发,比如交易及区块的接收或转发,共识消息的接收或发生,用户的查询请求、执行请求等请求信息的接收或转发等。数据处理微服务负责打块共识的执行、交易的执行以及信息查询等数据处理操作,本申请的另一些实施例中还可以依据数据处理的具体处理功能细分为多个微服务,如可以设置仅负责执行打块共识的微服务,只负责信息查询的微服务,只负责执行交易的微服务等。存储微服务负责存储区块、状态信息、交易信息等。注册微服务用于收集网络微服务、数据处理微服务和存储微服务的实例信息,并将收集的实例信息存储在服务列表中,将该服务列表同步给网络微服务、数据处理微服务、存储微服务。Among them, the network microservice is responsible for the transmission and reception of the protocol stack network, such as the reception or forwarding of transactions and blocks, the reception or occurrence of consensus messages, the reception or forwarding of user query requests, execution requests and other request information. The data processing microservice is responsible for data processing operations such as the execution of block consensus, the execution of transactions, and information query. In other embodiments of this application, it can also be subdivided into multiple microservices according to the specific processing functions of data processing. For example, you can set Microservices that are only responsible for executing block consensus, microservices that are only responsible for information query, and microservices that are only responsible for executing transactions. The storage microservice is responsible for storing blocks, state information, transaction information, etc. Registering microservices is used to collect instance information of network microservices, data processing microservices, and storage microservices, store the collected instance information in a service list, and synchronize the service list to network microservices, data processing microservices, and storage microservices. Microservices.
在本申请实施例中,区块链的协议栈中可以包括一个或多个网络微服务、一个或多个数据处理微服务以及一个或多个存储微服务。网络微服务、数据处理微服务以及存储微服务的数目可以根据区块链系统的性能需求进行设置。In this embodiment of the present application, the protocol stack of the blockchain may include one or more network microservices, one or more data processing microservices, and one or more storage microservices. The number of network microservices, data processing microservices, and storage microservices can be set according to the performance requirements of the blockchain system.
将区块链的协议栈构建成微服务架构模式的协议栈之后,当区块链的协议栈启动时,网络微服务、数据处理微服务及存储微服务均发送各自的实例信息给注册微服务。实例信息中包括微服务标识、实例编号及IP地址。After building the protocol stack of the blockchain into the protocol stack of the microservice architecture mode, when the protocol stack of the blockchain is started, the network microservice, data processing microservice and storage microservice all send their respective instance information to the registered microservice . The instance information includes the microservice identifier, instance number, and IP address.
例如,假设有两个网络微服务,网络微服务的微服务标识可以为net,两个网络微服务的实例编号分别为instance1和instance2,一个网络微服务的IP地址为192.168.0.10,另一个网络微服务的IP地址为192.168.0.11。则这两个网络微服务的实例信息可以分别为net- instance1-192.168.0.10,net- instance2-192.168.0.11。For example, suppose there are two network microservices, the microservice identifier of the network microservice can be net, the instance numbers of the two network microservices are instance1 and instance2 respectively, the IP address of one network microservice is 192.168.0.10, and the other network microservice The IP address of the microservice is 192.168.0.11. Then the instance information of these two network microservices can be net-instance1-192.168.0.10, net- instance2-192.168.0.11.
又如,假设有两个数据处理微服务,数据处理微服务的微服务标识可以为compute,两个数据处理微服务的实例编号分别为instance1和instance2,一个数据处理微服务的IP地址为192.168.0.12,另一个数据处理微服务的IP地址为192.168.0.13。则这两个数据处理微服务的实例信息可以分别为compute- instance1-192.168.0.12,compute- instance2-192.168.0.13。For another example, suppose there are two data processing microservices, the microservice identifier of the data processing microservice can be compute, the instance numbers of the two data processing microservices are instance1 and instance2 respectively, and the IP address of one data processing microservice is 192.168. 0.12, the IP address of another data processing microservice is 192.168.0.13. Then the instance information of the two data processing microservices can be compute-instance1-192.168.0.12 and compute-instance2-192.168.0.13 respectively.
步骤102:注册微服务接收网络微服务、数据处理微服务及存储微服务发送的实例信息,将接收的实例信息存储在服务列表中。Step 102 : The registered microservice receives the instance information sent by the network microservice, the data processing microservice, and the storage microservice, and stores the received instance information in the service list.
注册微服务接收到网络微服务、数据处理微服务及存储微服务发送的实例信息后,将接收的实例信息存储在服务列表中。在服务列表中相同类型的微服务的实例信息可以连续排列,如表1所示的服务列表中先是网络微服务的实例信息、再是数据处理微服务的实例信息,最后是存储微服务的实例信息。After the registration microservice receives the instance information sent by the network microservice, data processing microservice, and storage microservice, it stores the received instance information in the service list. The instance information of the same type of microservices in the service list can be arranged consecutively. As shown in Table 1, the service list is firstly the instance information of the network microservice, then the instance information of the data processing microservice, and finally the instance information of the storage microservice. information.
表1Table 1
Figure dest_path_image001
Figure dest_path_image001
步骤103:注册微服务将该服务列表发送给网络微服务和数据处理微服务。Step 103: The registered microservice sends the service list to the network microservice and the data processing microservice.
注册微服务接收到区块链的协议栈中其他每个微服务发送的实例信息,并将接收的实例信息存储到服务列表之后,将该服务列表发送给每个网络微服务和每个数据处理微服务。每个网络微服务和每个数据处理微服务接收到该服务列表之后,将该服务列表存储在各自的缓存中。The registered microservice receives the instance information sent by each other microservice in the protocol stack of the blockchain, stores the received instance information in the service list, and sends the service list to each network microservice and each data processing Microservices. After each network microservice and each data processing microservice receive the service list, the service list is stored in their respective caches.
步骤104:网络微服务接收用户发送的交易信息,根据该服务列表将该交易信息转发给数据处理微服务。Step 104: The network microservice receives the transaction information sent by the user, and forwards the transaction information to the data processing microservice according to the service list.
在用户使用本申请实施例的区块链系统来处理业务时,用户发送交易信息给该区块链。区块链的协议栈中的某个网络微服务接收到用户发送的该交易信息,从本地缓存中存储的服务列表中选择一个数据处理微服务的实例信息,根据选择的实例信息,将该交易信息转发给该实例信息对应的数据处理微服务。When a user uses the blockchain system of the embodiment of the present application to process a business, the user sends transaction information to the blockchain. A network microservice in the protocol stack of the blockchain receives the transaction information sent by the user, selects the instance information of a data processing microservice from the service list stored in the local cache, and executes the transaction according to the selected instance information. The information is forwarded to the data processing microservice corresponding to the instance information.
具体地,网络微服务根据数据处理微服务对应的微服务标识(如compute),查询本地缓存的服务列表中包含的数据处理微服务的实例信息是否为多个,若查询出服务列表中仅包括一个数据处理微服务的实例信息,则从该实例信息中提取出该数据处理微服务的IP地址。根据该IP地址将该交易信息转发给该数据处理微服务。Specifically, the network microservice queries whether there are multiple instance information of the data processing microservice contained in the service list of the local cache according to the microservice identifier (such as compute) corresponding to the data processing microservice. For instance information of a data processing microservice, the IP address of the data processing microservice is extracted from the instance information. The transaction information is forwarded to the data processing microservice according to the IP address.
若网络微服务查询出本地缓存的服务列表中包括多个数据处理微服务的实例信息,则按照预设负载均衡策略,从这多个数据处理微服务的实例信息中选择一个实例信息。从该实例信息中提取出该数据处理微服务的IP地址。根据该IP地址将该交易信息转发给该数据处理微服务。If the network microservice finds that the locally cached service list includes instance information of multiple data processing microservices, one instance information is selected from the instance information of the multiple data processing microservices according to the preset load balancing policy. The IP address of the data processing microservice is extracted from the instance information. The transaction information is forwarded to the data processing microservice according to the IP address.
预设负载均衡策略可以规定服务列表中的所有数据处理微服务的数据发送次序,网络微服务按照预设负载均衡策略规定的数据发送次序,轮流给每个数据处理微服务发送数据。例如,假设服务列表中包括compute- instance1-192.168.0.12,compute- instance2-192.168.0.13,compute- instance3-192.168.0.15共三个数据处理微服务的实例信息,预设负载均衡策略规定的数据发送次序为按照编号依次排列的顺序,即数据发送次序为instance1、instance2、instance3。则网络微服务接收到交易信息后,首先发给instance1对应的数据处理微服务,后续再接收到一个交易信息则发送给instance2对应的数据处理微服务,再接收到的交易信息则发送给instance3对应的数据处理微服务,后面再接收到交易信息则再发送给instance1对应的数据处理微服务,如此循环。The preset load balancing policy can specify the data sending order of all data processing microservices in the service list, and the network microservices send data to each data processing microservice in turn according to the data sending order specified by the preset load balancing policy. For example, assuming that the service list includes compute-instance1-192.168.0.12, compute-instance2-192.168.0.13, and compute-instance3-192.168.0.15, a total of three data processing microservice instance information, the data is sent according to the preset load balancing policy The order is the order in which the numbers are arranged in sequence, that is, the order of data transmission is instance1, instance2, and instance3. After the network microservice receives the transaction information, it first sends it to the data processing microservice corresponding to instance1, and then receives a transaction information and sends it to the data processing microservice corresponding to instance2, and then sends the received transaction information to the corresponding data processing microservice of instance3. The data processing microservice of instance1, and then the transaction information is received and sent to the data processing microservice corresponding to instance1, and so on.
在本申请的另一些实施例中,预设负载均衡策略也可以不按照上述编号的排列顺序来进行负载均衡,而是在预设负载均衡策略中规定根据每个数据处理微服务的响应时间进行负载均衡,即每次都将数据发送给当前响应时间最短的数据处理微服务。具体地,每隔预设时间段区块链的协议栈系统中的每个数据处理微服务都需要将自己的响应时间发送给每个网络微服务,响应时间为数据处理微服务在该预设时间段内处理所有任务所需时长的平均值。数据处理微服务根据网络微服务对应的服务标识,从本地缓存的服务列表中获取每个网络微服务的实例信息,从每个网络微服务的实例信息中分别提取每个网络微服务的IP地址。然后分别根据每个网络微服务的IP地址,将自身的响应时间发送给每个网络微服务。上述预设时间段可以为20分钟、30分钟或1小时等,该预设时间段越短,负载均衡的准确性越高。In other embodiments of the present application, the preset load balancing strategy may not perform load balancing according to the above-mentioned sequence of numbers, but the preset load balancing strategy stipulates that the load balancing is performed according to the response time of each data processing microservice Load balancing, that is, sending data to the data processing microservice with the shortest response time each time. Specifically, each data processing microservice in the protocol stack system of the blockchain needs to send its own response time to each network microservice every preset time period, and the response time is the data processing microservice in the preset time period. The average time it takes to process all tasks over the time period. The data processing microservice obtains the instance information of each network microservice from the locally cached service list according to the service identifier corresponding to the network microservice, and extracts the IP address of each network microservice from the instance information of each network microservice. . Then send its own response time to each network microservice according to the IP address of each network microservice. The above-mentioned preset time period may be 20 minutes, 30 minutes, or 1 hour, etc. The shorter the preset time period, the higher the accuracy of load balancing.
网络微服务接收到每个数据处理微服务发送的响应时间后,确定出响应时间最短的数据处理微服务,将该数据处理微服务的实例信息记录在预设负载均衡策略中。当网络微服务接收到交易信息后,获取预设负载均衡策略中当前记录的数据处理微服务的实例信息。从该实例信息中提取出该数据处理微服务的IP地址。根据该IP地址将该交易信息转发给该数据处理微服务。After receiving the response time sent by each data processing microservice, the network microservice determines the data processing microservice with the shortest response time, and records the instance information of the data processing microservice in the preset load balancing policy. After the network microservice receives the transaction information, it obtains the instance information of the data processing microservice currently recorded in the preset load balancing policy. The IP address of the data processing microservice is extracted from the instance information. The transaction information is forwarded to the data processing microservice according to the IP address.
网络微服务依据预设负载均衡策略及该服务列表实现了区块链的协议栈中多个数据处理微服务之间的负载均衡,避免个别数据处理微服务出现任务积压的情况,提高数据处理效率,减少用户等待时间。The network microservice realizes the load balancing among multiple data processing microservices in the blockchain protocol stack according to the preset load balancing strategy and the service list, avoiding the task backlog of individual data processing microservices and improving data processing efficiency , to reduce user waiting time.
步骤105:数据处理微服务接收该交易信息,对该交易信息进行处理,根据该服务列表将该交易信息及处理结果转发给存储微服务进行存储。Step 105: The data processing microservice receives the transaction information, processes the transaction information, and forwards the transaction information and the processing result to the storage microservice for storage according to the service list.
数据处理微服务接收到网络微服务发送的交易信息之后,对该交易信息进行处理,得到处理结果。之后需要存储该交易信息及其处理结果,则数据处理微服务从本地缓存中获取服务列表,根据存储微服务对应的微服务标识(如store),查询本地缓存的服务列表中包含的存储微服务的实例信息是否为多个,若查询出服务列表中仅包括一个存储微服务的实例信息,则从该实例信息中提取出该存储微服务的IP地址。根据该IP地址将该交易信息及处理结果转发给该存储微服务。After the data processing microservice receives the transaction information sent by the network microservice, it processes the transaction information to obtain a processing result. After that, the transaction information and its processing result need to be stored, the data processing microservice obtains the service list from the local cache, and queries the storage microservice contained in the service list in the local cache according to the microservice identifier (such as store) corresponding to the storage microservice. Whether the instance information is multiple, and if the service list includes only one instance information of the storage microservice, the IP address of the storage microservice is extracted from the instance information. The transaction information and processing result are forwarded to the storage microservice according to the IP address.
若网络微服务查询出本地缓存的服务列表中包括多个存储微服务的实例信息,则按照预设存储均衡策略,从这多个存储微服务的实例信息中选择一个实例信息。从该实例信息中提取出该存储微服务的IP地址。根据该IP地址将该交易信息及处理结果转发给该存储微服务。If the network microservice finds that the locally cached service list includes instance information of multiple storage microservices, one instance information is selected from the instance information of the multiple storage microservices according to the preset storage balancing strategy. Extract the IP address of the storage microservice from the instance information. The transaction information and processing result are forwarded to the storage microservice according to the IP address.
预设存储均衡策略可以规定服务列表中的所有存储微服务的数据发送次序,数据处理微服务按照预设存储均衡策略规定的数据发送次序,轮流给每个存储微服务发送数据。例如,假设服务列表中包括store- instance1-192.168.0.14,store- instance2-192.168.0.16,store- instance3-192.168.0.17共三个存储微服务的实例信息,预设存储均衡策略规定的数据发送次序为按照编号依次排列的顺序,即数据发送次序为instance1、instance2、instance3。则数据处理微服务首先发送交易信息及其处理结果给instance1对应的存储微服务,后续再处理一个交易信息则发送给instance2对应的存储微服务,再次处理一个交易信息则发送给instance3对应的存储微服务,后面再处理交易信息则再发送给instance1对应的存储微服务,如此循环。The preset storage balance strategy can specify the data sending order of all storage microservices in the service list, and the data processing microservice sends data to each storage microservice in turn according to the data sending order specified by the preset storage balance strategy. For example, assuming that the service list includes store-instance1-192.168.0.14, store-instance2-192.168.0.16, store-instance3-192.168.0.17, a total of three storage microservice instance information, the preset storage balance policy specifies the data sending order It is the order in which the numbers are arranged in sequence, that is, the data sending order is instance1, instance2, and instance3. Then the data processing microservice first sends the transaction information and its processing result to the storage microservice corresponding to instance1, and then processes a transaction information and sends it to the storage microservice corresponding to instance2, and processes another transaction information and sends it to the storage microservice corresponding to instance3. service, and then process the transaction information and then send it to the storage microservice corresponding to instance1, and so on.
数据处理微服务依据该服务列表实现了区块链的协议栈中多个存储微服务之间的存储量的均衡,避免个别存储微服务出现存储量远大于其他存储微服务的情况,减少出现个别存储微服务的存储空间不足导致存储失败的情况。According to the service list, the data processing microservice realizes the balance of storage capacity among multiple storage microservices in the blockchain protocol stack, avoiding the situation that the storage capacity of individual storage microservices is much larger than that of other storage microservices, and reducing the occurrence of individual storage microservices. Storage failure due to insufficient storage space for the storage microservice.
在本申请实施例中,将区块链的协议栈设计为微服务架构模式,由于微服务架构中各网络微服务、数据处理微服务、存储微服务以及注册微服务之间彼此是解耦的,相互之间不会存在性能上的相互干扰。因此针对各种功能的微服务,在解决性能瓶颈问题时,可以针对存在性能问题的某功能的微服务所在的硬件进行有针对的改善。例如,若网络微服务存在数据分发瓶颈,则可以提高网络微服务所在硬件的带宽。若数据处理微服务存在运算瓶颈,则可以提高数据处理微服务所在硬件的中央处理器的算力。若存储微服务存在存储空间的瓶颈,则可以提高存储微服务所在硬件的硬盘的存储容量。In the embodiment of this application, the protocol stack of the blockchain is designed as a micro-service architecture mode, because the network micro-services, data processing micro-services, storage micro-services and registration micro-services in the micro-service architecture are decoupled from each other , there will be no mutual interference in performance. Therefore, for microservices of various functions, when solving the performance bottleneck problem, targeted improvements can be made to the hardware where the microservices of a certain function with performance problems are located. For example, if the network microservice has a data distribution bottleneck, the bandwidth of the hardware where the network microservice is located can be increased. If there is a computing bottleneck in the data processing microservice, the computing power of the central processing unit of the hardware where the data processing microservice is located can be improved. If the storage microservice has a storage space bottleneck, the storage capacity of the hard disk of the hardware where the storage microservice is located can be increased.
在本申请的另一些实施例中,也可以针对存在性能问题的某功能的微服务进行横向的实例扩展,即增加该功能的微服务的数目。例如,若网络微服务存在数据分发瓶颈,则增加网络微服务的数目。若数据处理微服务存在运算瓶颈,则增加数据处理微服务的数目。In other embodiments of the present application, horizontal instance expansion may also be performed for the microservices of a certain function with performance problems, that is, to increase the number of microservices of the function. For example, if network microservices have data distribution bottlenecks, increase the number of network microservices. If the data processing microservices have computing bottlenecks, increase the number of data processing microservices.
本申请实施例将区块链的协议栈按功能进行划分,并将各个功能开发成微服务架构中相互独立的服务组件。如此各服务组件之间相互不影响,针对处理压力大的服务组件,可以有针对性地单独对压力大的服务组件进行升级扩展,能够灵活地调整提升协议栈的性能,避免协议栈出现性能瓶颈。而且协议栈的微服务架构中的网络微服务、数据处理微服务和存储微服务均在注册微服务中注册自己的实例信息,并可以依据注册微服务中的服务列表实现网络分发以及数据处理的负载均衡。In the embodiment of the present application, the protocol stack of the blockchain is divided by function, and each function is developed into mutually independent service components in the microservice architecture. In this way, the service components do not affect each other. For the service components with high processing pressure, the service components with high pressure can be individually upgraded and expanded, and the performance of the protocol stack can be flexibly adjusted and improved to avoid performance bottlenecks in the protocol stack. . Moreover, the network microservices, data processing microservices and storage microservices in the microservice architecture of the protocol stack all register their own instance information in the registered microservices, and can realize network distribution and data processing according to the service list in the registered microservices. load balancing.
本申请实施例提供了一种区块链协议栈架构系统,该系统用于执行上述任一实施例所述的区块链协议栈架构方法,如图2所示,该系统包括:网络微服务模块201、数据处理微服务模块202、存储微服务模块203及注册微服务模块204;An embodiment of the present application provides a blockchain protocol stack architecture system, which is used to execute the blockchain protocol stack architecture method described in any of the above embodiments. As shown in FIG. 2 , the system includes: network microservices module 201, data processing microservice module 202, storage microservice module 203 and registration microservice module 204;
网络微服务模块201,用于在协议栈启动时,发送自己的实例信息给注册微服务模块204;接收注册微服务模块204发送的服务列表;接收用户发送的交易信息,根据服务列表将交易信息转发给数据处理微服务模块202;The network microservice module 201 is used to send its own instance information to the registration microservice module 204 when the protocol stack is started; receive the service list sent by the registration microservice module 204; receive the transaction information sent by the user, and convert the transaction information according to the service list. forwarded to the data processing microservice module 202;
数据处理微服务模块202,用于协议栈启动时,发送自己的实例信息给注册微服务模块204;接收注册微服务模块204发送的服务列表;接收交易信息,对交易信息进行处理,根据服务列表将交易信息及处理结果转发给存储微服务模块203进行存储;The data processing microservice module 202 is used for sending its own instance information to the registration microservice module 204 when the protocol stack is started; receiving the service list sent by the registration microservice module 204; receiving transaction information, processing the transaction information, and according to the service list Forward the transaction information and processing results to the storage microservice module 203 for storage;
注册微服务模块204,用于接收网络微服务模块201、数据处理微服务模块202及存储微服务模块203发送的实例信息,将接收的实例信息存储在服务列表中;将服务列表发送给网络微服务模块201和数据处理微服务模块202;The registration micro-service module 204 is used to receive the instance information sent by the network micro-service module 201, the data processing micro-service module 202 and the storage micro-service module 203, and store the received instance information in the service list; send the service list to the network micro-service module Service module 201 and data processing microservice module 202;
存储微服务模块203,用于接收并存储数据处理微服务模块202发送的交易信息及处理结果。The storage microservice module 203 is used to receive and store the transaction information and processing results sent by the data processing microservice module 202 .
网络微服务模块201,用于从本地缓存中存储的服务列表中选择一个数据处理微服务模块202的实例信息;根据选择的实例信息,将交易信息转发给实例信息对应的数据处理微服务模块202。The network microservice module 201 is used to select an instance information of the data processing microservice module 202 from the service list stored in the local cache; according to the selected instance information, forward the transaction information to the data processing microservice module 202 corresponding to the instance information .
网络微服务模块201,用于根据数据处理微服务模块202对应的微服务模块标识,查询本地缓存的服务列表中包含的数据处理微服务模块202的实例信息是否为多个;若查询出服务列表中仅包括一个数据处理微服务模块202的实例信息,则选择服务列表包括的实例信息;若查询出本地缓存的服务列表中包括多个数据处理微服务模块202的实例信息,则按照预设负载均衡策略,从多个数据处理微服务模块202的实例信息中选择一个实例信息。The network microservice module 201 is configured to query whether there are multiple instance information of the data processing microservice module 202 contained in the service list of the local cache according to the microservice module identifier corresponding to the data processing microservice module 202; if the service list is obtained by querying only includes the instance information of one data processing microservice module 202, then select the instance information included in the service list; if the locally cached service list includes the instance information of multiple data processing microservice modules 202, according to the preset load For the balancing strategy, one instance information is selected from the instance information of the multiple data processing microservice modules 202 .
网络微服务模块201,用于按照预设负载均衡策略规定的每个数据处理微服务模块202对应的数据发送次序,从多个数据处理微服务模块202的实例信息中选择一个实例信息;或者,用于获取预设负载均衡策略中当前记录的响应时间最短的数据处理微服务模块202的实例信息,响应时间为数据处理微服务模块202在预设时间段内处理所有任务所需时长的平均值。The network microservice module 201 is configured to select one instance information from the instance information of the multiple data processing microservice modules 202 according to the data sending order corresponding to each data processing microservice module 202 specified by the preset load balancing policy; or, It is used to obtain the instance information of the data processing microservice module 202 with the shortest response time currently recorded in the preset load balancing policy, and the response time is the average value of the time required for the data processing microservice module 202 to process all tasks within the preset time period. .
每个数据处理微服务模块202,用于每隔预设时间段都将自己的响应时间发送给每个网络微服务模块201;Each data processing microservice module 202 is configured to send its own response time to each network microservice module 201 every preset time period;
每个网络微服务模块201,用于接收每个数据处理微服务模块202发送的响应时间,确定出响应时间最短的数据处理微服务模块202,将响应时间最短的数据处理微服务模块202的实例信息记录在预设负载均衡策略中。Each network microservice module 201 is configured to receive the response time sent by each data processing microservice module 202, determine the data processing microservice module 202 with the shortest response time, and use the instance of the data processing microservice module 202 with the shortest response time The information is recorded in the preset load balancing policy.
网络微服务模块201,用于从实例信息中提取数据处理微服务模块202的IP地址;根据IP地址将交易信息转发给数据处理微服务模块202。The network microservice module 201 is configured to extract the IP address of the data processing microservice module 202 from the instance information; and forward the transaction information to the data processing microservice module 202 according to the IP address.
数据处理微服务模块202,用于根据存储微服务模块203对应的微服务模块标识,查询本地缓存的服务列表中包含的存储微服务模块203的实例信息是否为多个;若查询出服务列表中仅包括一个存储微服务模块203的实例信息,则从实例信息中提取出存储微服务模块203的IP地址,根据IP地址将交易信息及处理结果转发给存储微服务模块203;若查询出本地缓存的服务列表中包括多个存储微服务模块203的实例信息,则按照预设存储均衡策略,从多个存储微服务模块203的实例信息中选择一个实例信息,从选择的实例信息中提取IP地址,根据提取的IP地址将交易信息及处理结果转发给存储微服务模块203。The data processing microservice module 202 is used to query whether there are multiple instance information of the storage microservice module 203 contained in the service list of the local cache according to the microservice module identifier corresponding to the storage microservice module 203; Only one instance information of the storage microservice module 203 is included, then the IP address of the storage microservice module 203 is extracted from the instance information, and the transaction information and processing results are forwarded to the storage microservice module 203 according to the IP address; if the local cache is queried The service list includes the instance information of multiple storage micro-service modules 203, then according to the preset storage balancing strategy, select one instance information from the multiple storage micro-service modules 203 instance information, and extract the IP address from the selected instance information. , and forward the transaction information and the processing result to the storage microservice module 203 according to the extracted IP address.
本申请实施例将区块链的协议栈按功能进行划分,并将各个功能开发成微服务架构中相互独立的服务组件。如此各服务组件之间相互不影响,针对处理压力大的服务组件,可以有针对性地单独对压力大的服务组件进行升级扩展,能够灵活地调整提升协议栈的性能,避免协议栈出现性能瓶颈。而且协议栈的微服务架构中的网络微服务模块、数据处理微服务模块和存储微服务模块均在注册微服务模块中注册自己的实例信息,并可以依据注册微服务模块中的服务列表实现网络分发以及数据处理的负载均衡。In the embodiment of the present application, the protocol stack of the blockchain is divided by function, and each function is developed into mutually independent service components in the microservice architecture. In this way, the service components do not affect each other. For the service components with high processing pressure, the service components with high pressure can be individually upgraded and expanded, and the performance of the protocol stack can be flexibly adjusted and improved to avoid performance bottlenecks in the protocol stack. . Moreover, the network microservice module, data processing microservice module and storage microservice module in the microservice architecture of the protocol stack all register their own instance information in the registration microservice module, and can implement the network according to the service list in the registration microservice module. Distribution and load balancing of data processing.
本申请实施例提供了一种计算机设备。如图3所示,该计算机设备包括通过系统总线连接的处理器、存储介质、存储器和网络接口。其中,该计算机设备的存储介质存储有操作系统、数据库和计算机可读指令,数据库中可存储有控件信息序列,该计算机可读指令被处理器执行时,可使得处理器实现一种区块链协议栈架构方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该计算机设备的存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种区块链协议栈架构方法。该计算机设备的网络接口用于与终端连接通信。本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。The embodiments of the present application provide a computer device. As shown in FIG. 3, the computer device includes a processor, a storage medium, a memory, and a network interface connected through a system bus. Wherein, the storage medium of the computer device stores an operating system, a database and computer-readable instructions, the database can store a sequence of control information, and when the computer-readable instructions are executed by the processor, the processor can be made to implement a blockchain Protocol stack architecture approach. The processor of the computer device is used to provide computing and control capabilities and support the operation of the entire computer device. Computer-readable instructions may be stored in the memory of the computer device, and when the computer-readable instructions are executed by the processor, the processor may execute a blockchain protocol stack architecture method. The network interface of the computer equipment is used for communication with the terminal connection. Those skilled in the art can understand that the structure shown in FIG. 3 is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer equipment to which the solution of the present application is applied. Include more or fewer components than shown in the figures, or combine certain components, or have a different arrangement of components.
该计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:协议栈启动时,网络微服务、数据处理微服务及存储微服务均发送各自的实例信息给注册微服务;注册微服务接收网络微服务、数据处理微服务及存储微服务发送的实例信息,将接收的实例信息存储在服务列表中;注册微服务将服务列表发送给网络微服务和数据处理微服务;网络微服务接收用户发送的交易信息,根据服务列表将交易信息转发给数据处理微服务;数据处理微服务接收交易信息,对交易信息进行处理,根据服务列表将交易信息及处理结果转发给存储微服务进行存储。The computer device includes a memory, a processor and a computer program stored on the memory and running on the processor. When the processor executes the computer program, the following steps are implemented: when the protocol stack is started, the network microservice, the data processing microservice and the storage microservice Each service sends its own instance information to the registered microservice; the registered microservice receives the instance information sent by the network microservice, data processing microservice and storage microservice, and stores the received instance information in the service list; the registered microservice stores the service list Send to the network microservice and data processing microservice; the network microservice receives the transaction information sent by the user, and forwards the transaction information to the data processing microservice according to the service list; the data processing microservice receives the transaction information, processes the transaction information, and The list forwards transaction information and processing results to the storage microservice for storage.
处理器执行计算机程序时还可以实现以下步骤:网络微服务从本地缓存中存储的服务列表中选择一个数据处理微服务的实例信息;网络微服务根据选择的实例信息,将交易信息转发给实例信息对应的数据处理微服务。When the processor executes the computer program, the following steps may also be implemented: the network microservice selects an instance information of the data processing microservice from the service list stored in the local cache; the network microservice forwards the transaction information to the instance information according to the selected instance information Corresponding data processing microservices.
处理器执行计算机程序时还可以实现以下步骤:网络微服务根据数据处理微服务对应的微服务标识,查询本地缓存的服务列表中包含的数据处理微服务的实例信息是否为多个;若查询出服务列表中仅包括一个数据处理微服务的实例信息,则选择服务列表包括的实例信息;若查询出本地缓存的服务列表中包括多个数据处理微服务的实例信息,则按照预设负载均衡策略,从多个数据处理微服务的实例信息中选择一个实例信息。When the processor executes the computer program, the following steps may also be implemented: the network microservice, according to the microservice identifier corresponding to the data processing microservice, inquires whether there are multiple instance information of the data processing microservice contained in the service list of the local cache; If the service list only includes the instance information of one data processing microservice, select the instance information included in the service list; if the locally cached service list includes the instance information of multiple data processing microservices, the default load balancing strategy is used. , select one instance information from the instance information of multiple data processing microservices.
处理器执行计算机程序时还可以实现以下步骤:网络微服务按照预设负载均衡策略规定的每个数据处理微服务对应的数据发送次序,从多个数据处理微服务的实例信息中选择一个实例信息;或者,网络微服务获取预设负载均衡策略中当前记录的响应时间最短的数据处理微服务的实例信息,响应时间为数据处理微服务在预设时间段内处理所有任务所需时长的平均值。When the processor executes the computer program, the following steps may also be implemented: the network microservice selects one instance information from the instance information of the multiple data processing microservices according to the data sending order corresponding to each data processing microservice specified by the preset load balancing policy ; Or, the network microservice obtains the instance information of the data processing microservice with the shortest response time currently recorded in the preset load balancing policy, and the response time is the average time required for the data processing microservice to process all tasks within the preset time period. .
处理器执行计算机程序时还可以实现以下步骤:每隔预设时间段协议栈中的每个数据处理微服务都将自己的响应时间发送给每个网络微服务;每个网络微服务接收每个数据处理微服务发送的响应时间,确定出响应时间最短的数据处理微服务,将响应时间最短的数据处理微服务的实例信息记录在预设负载均衡策略中。When the processor executes the computer program, the following steps may also be implemented: each data processing microservice in the protocol stack sends its own response time to each network microservice every preset time period; each network microservice receives each network microservice. The response time sent by the data processing microservice determines the data processing microservice with the shortest response time, and records the instance information of the data processing microservice with the shortest response time in the preset load balancing policy.
处理器执行计算机程序时还可以实现以下步骤:网络微服务从实例信息中提取数据处理微服务的IP地址;网络微服务根据IP地址将交易信息转发给数据处理微服务。When the processor executes the computer program, the following steps may also be implemented: the network microservice extracts the IP address of the data processing microservice from the instance information; the network microservice forwards the transaction information to the data processing microservice according to the IP address.
处理器执行计算机程序时还可以实现以下步骤:数据处理微服务根据存储微服务对应的微服务标识,查询本地缓存的服务列表中包含的存储微服务的实例信息是否为多个;若查询出服务列表中仅包括一个存储微服务的实例信息,则从实例信息中提取出存储微服务的IP地址,根据IP地址将交易信息及处理结果转发给存储微服务;若查询出本地缓存的服务列表中包括多个存储微服务的实例信息,则按照预设存储均衡策略,从多个存储微服务的实例信息中选择一个实例信息,从选择的实例信息中提取IP地址,根据提取的IP地址将交易信息及处理结果转发给存储微服务。When the processor executes the computer program, the following steps may also be implemented: the data processing microservice, according to the microservice identifier corresponding to the storage microservice, inquires whether there are multiple instance information of the storage microservice contained in the service list of the local cache; The list only includes the instance information of one storage microservice, then the IP address of the storage microservice is extracted from the instance information, and the transaction information and processing results are forwarded to the storage microservice according to the IP address; if the locally cached service list is queried, If the instance information of multiple storage microservices is included, according to the preset storage balance strategy, select one instance information from the instance information of multiple storage microservices, extract the IP address from the selected instance information, and transfer the transaction according to the extracted IP address. The information and processing results are forwarded to the storage microservice.
本申请实施例还提出了一种存储有计算机可读指令的存储介质,如图4所示,该计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:协议栈启动时,网络微服务、数据处理微服务及存储微服务均发送各自的实例信息给注册微服务;注册微服务接收网络微服务、数据处理微服务及存储微服务发送的实例信息,将接收的实例信息存储在服务列表中;注册微服务将服务列表发送给网络微服务和数据处理微服务;网络微服务接收用户发送的交易信息,根据服务列表将交易信息转发给数据处理微服务;数据处理微服务接收交易信息,对交易信息进行处理,根据服务列表将交易信息及处理结果转发给存储微服务进行存储。An embodiment of the present application further provides a storage medium storing computer-readable instructions. As shown in FIG. 4 , when the computer-readable instructions are executed by one or more processors, the one or more processors perform the following steps : When the protocol stack starts, the network microservice, data processing microservice and storage microservice all send their respective instance information to the registered microservice; the registered microservice receives the instance information sent by the network microservice, data processing microservice and storage microservice, Store the received instance information in the service list; register the microservice and send the service list to the network microservice and data processing microservice; the network microservice receives the transaction information sent by the user, and forwards the transaction information to the data processing microservice according to the service list ; The data processing microservice receives the transaction information, processes the transaction information, and forwards the transaction information and processing results to the storage microservice for storage according to the service list.
处理器还可以执行以下步骤:网络微服务从本地缓存中存储的服务列表中选择一个数据处理微服务的实例信息;网络微服务根据选择的实例信息,将交易信息转发给实例信息对应的数据处理微服务。The processor may also perform the following steps: the network microservice selects an instance information of the data processing microservice from the service list stored in the local cache; the network microservice forwards the transaction information to the data processing corresponding to the instance information according to the selected instance information Microservices.
处理器还可以执行以下步骤:网络微服务根据数据处理微服务对应的微服务标识,查询本地缓存的服务列表中包含的数据处理微服务的实例信息是否为多个;若查询出服务列表中仅包括一个数据处理微服务的实例信息,则选择服务列表包括的实例信息;若查询出本地缓存的服务列表中包括多个数据处理微服务的实例信息,则按照预设负载均衡策略,从多个数据处理微服务的实例信息中选择一个实例信息。The processor may also perform the following steps: according to the microservice identifier corresponding to the data processing microservice, the network microservice queries whether there are multiple instance information of the data processing microservice contained in the service list of the local cache; If the instance information of one data processing microservice is included, select the instance information included in the service list; if the locally cached service list includes the instance information of multiple data processing microservices, according to the preset load balancing strategy, select the instance information from multiple data processing microservices. Select an instance information from the instance information of the data processing microservice.
处理器还可以执行以下步骤:网络微服务按照预设负载均衡策略规定的每个数据处理微服务对应的数据发送次序,从多个数据处理微服务的实例信息中选择一个实例信息;或者,网络微服务获取预设负载均衡策略中当前记录的响应时间最短的数据处理微服务的实例信息,响应时间为数据处理微服务在预设时间段内处理所有任务所需时长的平均值。The processor may also perform the following steps: the network microservice selects one instance information from the instance information of multiple data processing microservices according to the data sending order corresponding to each data processing microservice specified by the preset load balancing policy; or, the network The microservice obtains the instance information of the data processing microservice with the shortest response time currently recorded in the preset load balancing policy, and the response time is the average of the time required for the data processing microservice to process all tasks within the preset time period.
处理器还可以执行以下步骤:每隔预设时间段协议栈中的每个数据处理微服务都将自己的响应时间发送给每个网络微服务;每个网络微服务接收每个数据处理微服务发送的响应时间,确定出响应时间最短的数据处理微服务,将响应时间最短的数据处理微服务的实例信息记录在预设负载均衡策略中。The processor may further perform the following steps: each data processing microservice in the protocol stack sends its own response time to each network microservice every preset time period; each network microservice receives each data processing microservice The sent response time determines the data processing microservice with the shortest response time, and records the instance information of the data processing microservice with the shortest response time in the preset load balancing policy.
处理器还可以执行以下步骤:网络微服务从实例信息中提取数据处理微服务的IP地址;网络微服务根据IP地址将交易信息转发给数据处理微服务。The processor may further perform the following steps: the network microservice extracts the IP address of the data processing microservice from the instance information; the network microservice forwards the transaction information to the data processing microservice according to the IP address.
处理器还可以执行以下步骤:数据处理微服务根据存储微服务对应的微服务标识,查询本地缓存的服务列表中包含的存储微服务的实例信息是否为多个;若查询出服务列表中仅包括一个存储微服务的实例信息,则从实例信息中提取出存储微服务的IP地址,根据IP地址将交易信息及处理结果转发给存储微服务;若查询出本地缓存的服务列表中包括多个存储微服务的实例信息,则按照预设存储均衡策略,从多个存储微服务的实例信息中选择一个实例信息,从选择的实例信息中提取IP地址,根据提取的IP地址将交易信息及处理结果转发给存储微服务。The processor may also perform the following steps: the data processing microservice, according to the microservice identifier corresponding to the storage microservice, inquires whether there are multiple instance information of the storage microservice contained in the service list of the local cache; For instance information of a storage microservice, the IP address of the storage microservice is extracted from the instance information, and the transaction information and processing results are forwarded to the storage microservice according to the IP address; if the locally cached service list is queried, it includes multiple storage services. For the instance information of the microservice, according to the preset storage balance strategy, select one instance information from the instance information of multiple storage microservices, extract the IP address from the selected instance information, and combine the transaction information and processing results according to the extracted IP address. Forward to the storage microservice.
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be implemented by instructing relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage In the medium, when the computer program is executed, it may include the processes of the above-mentioned method embodiments. Wherein, any reference to memory, storage, database or other medium provided in this application and used in the embodiments may include non-volatile and/or volatile memory. Nonvolatile memory may include read only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory may include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double-rate SDRAM (SSRSDRAM), enhanced SDRAM (ESDRAM), synchronous Link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。It should be noted that, herein, the terms "comprising", "comprising" or any other variation thereof are intended to encompass non-exclusive inclusion, such that a process, device, article or method comprising a series of elements includes not only those elements, It also includes other elements not expressly listed or inherent to such a process, apparatus, article or method. Without further limitation, an element qualified by the phrase "comprising a..." does not preclude the presence of additional identical elements in the process, apparatus, article, or method that includes the element.
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。The above are only the preferred embodiments of the present application, and are not intended to limit the scope of the patent of the present application. Any equivalent structure or equivalent process transformation made by using the contents of the description and drawings of the present application, or directly or indirectly applied to other related The technical field is similarly included in the scope of patent protection of this application.

Claims (20)

  1. 一种区块链协议栈架构方法,其中,所述区块链的协议栈包括网络微服务、数据处理微服务、存储微服务及注册微服务,所述方法包括:A blockchain protocol stack architecture method, wherein the blockchain protocol stack includes network microservices, data processing microservices, storage microservices, and registration microservices, and the method includes:
    所述协议栈启动时,所述网络微服务、所述数据处理微服务及所述存储微服务均发送各自的实例信息给所述注册微服务;When the protocol stack is started, the network microservice, the data processing microservice and the storage microservice all send respective instance information to the registration microservice;
    所述注册微服务接收所述网络微服务、所述数据处理微服务及所述存储微服务发送的实例信息,将接收的所述实例信息存储在服务列表中;The registration microservice receives instance information sent by the network microservice, the data processing microservice, and the storage microservice, and stores the received instance information in a service list;
    所述注册微服务将所述服务列表发送给所述网络微服务和所述数据处理微服务;The registered microservice sends the service list to the network microservice and the data processing microservice;
    所述网络微服务接收用户发送的交易信息,根据所述服务列表将所述交易信息转发给所述数据处理微服务;The network microservice receives the transaction information sent by the user, and forwards the transaction information to the data processing microservice according to the service list;
    所述数据处理微服务接收所述交易信息,对所述交易信息进行处理,根据所述服务列表将所述交易信息及处理结果转发给所述存储微服务进行存储。The data processing microservice receives the transaction information, processes the transaction information, and forwards the transaction information and processing results to the storage microservice for storage according to the service list.
  2. 根据权利要求1所述的方法,其中,所述网络微服务接收用户发送的交易信息,根据所述服务列表将所述交易信息转发给所述数据处理微服务,包括:The method according to claim 1, wherein the network microservice receives transaction information sent by a user, and forwards the transaction information to the data processing microservice according to the service list, comprising:
    所述网络微服务从本地缓存中存储的所述服务列表中选择一个数据处理微服务的实例信息;The network microservice selects instance information of a data processing microservice from the service list stored in the local cache;
    所述网络微服务根据选择的所述实例信息,将所述交易信息转发给所述实例信息对应的数据处理微服务。The network microservice forwards the transaction information to the data processing microservice corresponding to the instance information according to the selected instance information.
  3. 根据权利要求2所述的方法,其中,所述网络微服务从本地缓存中存储的所述服务列表中选择一个数据处理微服务的实例信息,包括:The method according to claim 2, wherein the network microservice selects instance information of a data processing microservice from the service list stored in the local cache, comprising:
    所述网络微服务根据数据处理微服务对应的微服务标识,查询本地缓存的所述服务列表中包含的数据处理微服务的实例信息是否为多个;The network microservice queries whether there are multiple instance information of the data processing microservice contained in the service list in the local cache according to the microservice identifier corresponding to the data processing microservice;
    若查询出服务列表中仅包括一个数据处理微服务的实例信息,则选择所述服务列表包括的所述实例信息;If it is queried that the service list only includes instance information of one data processing microservice, select the instance information included in the service list;
    若查询出本地缓存的服务列表中包括多个数据处理微服务的实例信息,则按照预设负载均衡策略,从所述多个数据处理微服务的实例信息中选择一个实例信息。If it is found that the locally cached service list includes instance information of multiple data processing microservices, one instance information is selected from the instance information of the multiple data processing microservices according to the preset load balancing policy.
  4. 根据权利要求3所述的方法,其中,所述按照预设负载均衡策略,从所述多个数据处理微服务的实例信息中选择一个实例信息,包括:The method according to claim 3, wherein the selecting one instance information from the instance information of the plurality of data processing microservices according to a preset load balancing strategy comprises:
    所述网络微服务按照预设负载均衡策略规定的每个数据处理微服务对应的数据发送次序,从所述多个数据处理微服务的实例信息中选择一个实例信息;或者,所述网络微服务获取预设负载均衡策略中当前记录的响应时间最短的数据处理微服务的实例信息,所述响应时间为数据处理微服务在预设时间段内处理所有任务所需时长的平均值。The network microservice selects one instance information from the instance information of the multiple data processing microservices according to the data sending order corresponding to each data processing microservice specified by the preset load balancing policy; or, the network microservice Obtain the instance information of the data processing microservice with the shortest response time currently recorded in the preset load balancing policy, where the response time is the average value of the time required for the data processing microservice to process all tasks within the preset time period.
  5. 根据权利要求4所述的方法,其中,所述方法还包括:The method of claim 4, wherein the method further comprises:
    每隔所述预设时间段所述协议栈系统中的每个数据处理微服务都将自己的响应时间发送给每个网络微服务;Each data processing microservice in the protocol stack system sends its own response time to each network microservice every preset time period;
    每个网络微服务接收每个数据处理微服务发送的响应时间,确定出响应时间最短的数据处理微服务,将所述响应时间最短的数据处理微服务的实例信息记录在预设负载均衡策略中。Each network microservice receives the response time sent by each data processing microservice, determines the data processing microservice with the shortest response time, and records the instance information of the data processing microservice with the shortest response time in the preset load balancing policy .
  6. 根据权利要求2所述的方法,其中,所述网络微服务根据选择的所述实例信息,将所述交易信息转发给所述实例信息对应的数据处理微服务,包括:The method according to claim 2, wherein the network microservice forwards the transaction information to the data processing microservice corresponding to the instance information according to the selected instance information, comprising:
    所述网络微服务从所述实例信息中提取所述数据处理微服务的IP地址;The network microservice extracts the IP address of the data processing microservice from the instance information;
    所述网络微服务根据所述IP地址将所述交易信息转发给所述数据处理微服务。The network microservice forwards the transaction information to the data processing microservice according to the IP address.
  7. 根据权利要求1所述的方法,其中,所述数据处理微服务接收所述交易信息,对所述交易信息进行处理,根据所述服务列表将所述交易信息及处理结果转发给所述存储微服务进行存储,包括:The method according to claim 1, wherein the data processing microservice receives the transaction information, processes the transaction information, and forwards the transaction information and processing result to the storage microservice according to the service list Services for storage, including:
    所述数据处理微服务根据存储微服务对应的微服务标识,查询本地缓存的所述服务列表中包含的存储微服务的实例信息是否为多个;The data processing microservice queries whether there are multiple instance information of the storage microservice contained in the service list in the local cache according to the microservice identifier corresponding to the storage microservice;
    若查询出服务列表中仅包括一个存储微服务的实例信息,则从所述实例信息中提取出所述存储微服务的IP地址,根据所述IP地址将所述交易信息及处理结果转发给所述存储微服务;If it is found that the service list only includes the instance information of one storage microservice, the IP address of the storage microservice is extracted from the instance information, and the transaction information and processing result are forwarded to the storage microservice according to the IP address. Describe storage microservices;
    若查询出本地缓存的服务列表中包括多个存储微服务的实例信息,则按照预设存储均衡策略,从所述多个存储微服务的实例信息中选择一个实例信息,从选择的所述实例信息中提取IP地址,根据提取的所述IP地址将所述交易信息及处理结果转发给所述存储微服务。If it is found that the locally cached service list includes the instance information of multiple storage microservices, select one instance information from the multiple storage microservices instance information according to the preset storage balance strategy, and select one instance information from the selected instance information. The IP address is extracted from the information, and the transaction information and the processing result are forwarded to the storage microservice according to the extracted IP address.
  8. 一种区块链协议栈架构系统,其中,包括网络微服务模块、数据处理微服务模块、存储微服务模块及注册微服务模块;A blockchain protocol stack architecture system, including a network microservice module, a data processing microservice module, a storage microservice module and a registration microservice module;
    所述网络微服务模块,用于在所述协议栈启动时,发送自己的实例信息给所述注册微服务模块;接收所述注册微服务模块发送的服务列表;接收用户发送的交易信息,根据所述服务列表将所述交易信息转发给所述数据处理微服务模块;The network micro-service module is configured to send its own instance information to the registered micro-service module when the protocol stack is started; receive the service list sent by the registered micro-service module; receive transaction information sent by the user, according to the The service list forwards the transaction information to the data processing microservice module;
    所述数据处理微服务模块,用于所述协议栈启动时,发送自己的实例信息给所述注册微服务模块;接收所述注册微服务模块发送的服务列表;接收所述交易信息,对所述交易信息进行处理,根据所述服务列表将所述交易信息及处理结果转发给所述存储微服务模块进行存储;The data processing micro-service module is used to send its own instance information to the registered micro-service module when the protocol stack is started; receive the service list sent by the registered micro-service module; The transaction information is processed, and the transaction information and processing results are forwarded to the storage microservice module for storage according to the service list;
    所述注册微服务模块,用于接收所述网络微服务模块、所述数据处理微服务模块及所述存储微服务模块发送的实例信息,将接收的所述实例信息存储在服务列表中;将所述服务列表发送给所述网络微服务模块和所述数据处理微服务模块;The registration micro-service module is configured to receive instance information sent by the network micro-service module, the data processing micro-service module and the storage micro-service module, and store the received instance information in the service list; The service list is sent to the network microservice module and the data processing microservice module;
    所述存储微服务模块,用于接收并存储所述数据处理微服务模块发送的所述交易信息及处理结果。The storage microservice module is configured to receive and store the transaction information and processing results sent by the data processing microservice module.
  9. 一种计算机设备,其中,区块链的协议栈包括网络微服务、数据处理微服务、存储微服务及注册微服务,所述电子设备包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,所述处理器执行所述计算机可读指令时执行以下步骤:A computer device, wherein the protocol stack of the blockchain includes network microservices, data processing microservices, storage microservices, and registration microservices, and the electronic device includes a memory, a processor, and storage in the memory and available in the memory. Computer-readable instructions running on the processor, the processor executes the following steps when executing the computer-readable instructions:
    所述协议栈启动时,所述网络微服务、所述数据处理微服务及所述存储微服务均发送各自的实例信息给所述注册微服务;When the protocol stack is started, the network microservice, the data processing microservice and the storage microservice all send respective instance information to the registration microservice;
    所述注册微服务接收所述网络微服务、所述数据处理微服务及所述存储微服务发送的实例信息,将接收的所述实例信息存储在服务列表中;The registration microservice receives instance information sent by the network microservice, the data processing microservice, and the storage microservice, and stores the received instance information in a service list;
    所述注册微服务将所述服务列表发送给所述网络微服务和所述数据处理微服务;The registered microservice sends the service list to the network microservice and the data processing microservice;
    所述网络微服务接收用户发送的交易信息,根据所述服务列表将所述交易信息转发给所述数据处理微服务;The network microservice receives the transaction information sent by the user, and forwards the transaction information to the data processing microservice according to the service list;
    所述数据处理微服务接收所述交易信息,对所述交易信息进行处理,根据所述服务列表将所述交易信息及处理结果转发给所述存储微服务进行存储。The data processing microservice receives the transaction information, processes the transaction information, and forwards the transaction information and processing results to the storage microservice for storage according to the service list.
  10. 根据权利要求9所述的计算机设备,其中,所述网络微服务接收用户发送的交易信息,根据所述服务列表将所述交易信息转发给所述数据处理微服务,包括:The computer device according to claim 9, wherein the network microservice receives transaction information sent by a user, and forwards the transaction information to the data processing microservice according to the service list, comprising:
    所述网络微服务从本地缓存中存储的所述服务列表中选择一个数据处理微服务的实例信息;The network microservice selects instance information of a data processing microservice from the service list stored in the local cache;
    所述网络微服务根据选择的所述实例信息,将所述交易信息转发给所述实例信息对应的数据处理微服务。The network microservice forwards the transaction information to the data processing microservice corresponding to the instance information according to the selected instance information.
  11. 据权利要求10所述的计算机设备,其中,所述网络微服务从本地缓存中存储的所述服务列表中选择一个数据处理微服务的实例信息,包括:The computer device according to claim 10, wherein the network microservice selects one instance information of the data processing microservice from the service list stored in the local cache, comprising:
    所述网络微服务根据数据处理微服务对应的微服务标识,查询本地缓存的所述服务列表中包含的数据处理微服务的实例信息是否为多个;The network microservice queries whether there are multiple instance information of the data processing microservice contained in the service list in the local cache according to the microservice identifier corresponding to the data processing microservice;
    若查询出服务列表中仅包括一个数据处理微服务的实例信息,则选择所述服务列表包括的所述实例信息;If it is queried that the service list only includes instance information of one data processing microservice, select the instance information included in the service list;
    若查询出本地缓存的服务列表中包括多个数据处理微服务的实例信息,则按照预设负载均衡策略,从所述多个数据处理微服务的实例信息中选择一个实例信息。If it is found that the locally cached service list includes instance information of multiple data processing microservices, one instance information is selected from the instance information of the multiple data processing microservices according to the preset load balancing policy.
  12. 权利要求11所述的计算机设备,其中,所述按照预设负载均衡策略,从所述多个数据处理微服务的实例信息中选择一个实例信息,包括:The computer device according to claim 11, wherein the selecting one instance information from the instance information of the plurality of data processing microservices according to a preset load balancing strategy comprises:
    所述网络微服务按照预设负载均衡策略规定的每个数据处理微服务对应的数据发送次序,从所述多个数据处理微服务的实例信息中选择一个实例信息;或者,所述网络微服务获取预设负载均衡策略中当前记录的响应时间最短的数据处理微服务的实例信息,所述响应时间为数据处理微服务在预设时间段内处理所有任务所需时长的平均值。The network microservice selects one instance information from the instance information of the multiple data processing microservices according to the data sending order corresponding to each data processing microservice specified by the preset load balancing policy; or, the network microservice Obtain the instance information of the data processing microservice with the shortest response time currently recorded in the preset load balancing policy, where the response time is the average value of the time required for the data processing microservice to process all tasks within the preset time period.
  13. 根据权利要求12所述的计算机设备,其中,所述处理器执行所述计算机可读指令时还执行以下步骤:The computer device of claim 12, wherein the processor, when executing the computer-readable instructions, further performs the following steps:
    每隔所述预设时间段所述协议栈系统中的每个数据处理微服务都将自己的响应时间发送给每个网络微服务;Each data processing microservice in the protocol stack system sends its own response time to each network microservice every preset time period;
    每个网络微服务接收每个数据处理微服务发送的响应时间,确定出响应时间最短的数据处理微服务,将所述响应时间最短的数据处理微服务的实例信息记录在预设负载均衡策略中。Each network microservice receives the response time sent by each data processing microservice, determines the data processing microservice with the shortest response time, and records the instance information of the data processing microservice with the shortest response time in the preset load balancing policy .
  14. 根据权利要求10所述的计算机设备,其中,所述网络微服务根据选择的所述实例信息,将所述交易信息转发给所述实例信息对应的数据处理微服务,包括:The computer device according to claim 10, wherein the network microservice forwards the transaction information to the data processing microservice corresponding to the instance information according to the selected instance information, comprising:
    所述网络微服务从所述实例信息中提取所述数据处理微服务的IP地址;The network microservice extracts the IP address of the data processing microservice from the instance information;
    所述网络微服务根据所述IP地址将所述交易信息转发给所述数据处理微服务。The network microservice forwards the transaction information to the data processing microservice according to the IP address.
  15. 根据权利要求9所述的计算机设备,其中,所述数据处理微服务接收所述交易信息,对所述交易信息进行处理,根据所述服务列表将所述交易信息及处理结果转发给所述存储微服务进行存储,包括: The computer device according to claim 9, wherein the data processing microservice receives the transaction information, processes the transaction information, and forwards the transaction information and processing results to the storage according to the service list Microservices for storage, including:
    所述数据处理微服务根据存储微服务对应的微服务标识,查询本地缓存的所述服务列表中包含的存储微服务的实例信息是否为多个;The data processing microservice queries whether there are multiple instance information of the storage microservice contained in the service list in the local cache according to the microservice identifier corresponding to the storage microservice;
    若查询出服务列表中仅包括一个存储微服务的实例信息,则从所述实例信息中提取出所述存储微服务的IP地址,根据所述IP地址将所述交易信息及处理结果转发给所述存储微服务;If it is found that the service list only includes the instance information of one storage microservice, the IP address of the storage microservice is extracted from the instance information, and the transaction information and processing result are forwarded to the storage microservice according to the IP address. Describe storage microservices;
    若查询出本地缓存的服务列表中包括多个存储微服务的实例信息,则按照预设存储均衡策略,从所述多个存储微服务的实例信息中选择一个实例信息,从选择的所述实例信息中提取IP地址,根据提取的所述IP地址将所述交易信息及处理结果转发给所述存储微服务。If it is found that the locally cached service list includes the instance information of multiple storage microservices, select one instance information from the multiple storage microservices instance information according to the preset storage balance strategy, and select one instance information from the selected instance information. The IP address is extracted from the information, and the transaction information and the processing result are forwarded to the storage microservice according to the extracted IP address.
  16. 一种计算机可读存储介质,其中,区块链的协议栈包括网络微服务、数据处理微服务、存储微服务及注册微服务,所述计算机可读存储介质存储有至少一个指令,所述至少一个指令被处理器执行时实现时执行以下步骤: A computer-readable storage medium, wherein the protocol stack of the blockchain includes network microservices, data processing microservices, storage microservices, and registration microservices, the computer-readable storage medium stores at least one instruction, the at least one instruction When an instruction is executed by the processor, the implementation performs the following steps:
    所述协议栈启动时,所述网络微服务、所述数据处理微服务及所述存储微服务均发送各自的实例信息给所述注册微服务;When the protocol stack is started, the network microservice, the data processing microservice and the storage microservice all send respective instance information to the registration microservice;
    所述注册微服务接收所述网络微服务、所述数据处理微服务及所述存储微服务发送的实例信息,将接收的所述实例信息存储在服务列表中;The registration microservice receives instance information sent by the network microservice, the data processing microservice, and the storage microservice, and stores the received instance information in a service list;
    所述注册微服务将所述服务列表发送给所述网络微服务和所述数据处理微服务;The registered microservice sends the service list to the network microservice and the data processing microservice;
    所述网络微服务接收用户发送的交易信息,根据所述服务列表将所述交易信息转发给所述数据处理微服务;The network microservice receives the transaction information sent by the user, and forwards the transaction information to the data processing microservice according to the service list;
    所述数据处理微服务接收所述交易信息,对所述交易信息进行处理,根据所述服务列表将所述交易信息及处理结果转发给所述存储微服务进行存储。The data processing microservice receives the transaction information, processes the transaction information, and forwards the transaction information and processing results to the storage microservice for storage according to the service list.
  17. 根据权利要求16所述的计算机可读存储介质,其中,所述网络微服务接收用户发送的交易信息,根据所述服务列表将所述交易信息转发给所述数据处理微服务,包括: The computer-readable storage medium according to claim 16, wherein the network microservice receives transaction information sent by a user, and forwards the transaction information to the data processing microservice according to the service list, comprising:
    所述网络微服务从本地缓存中存储的所述服务列表中选择一个数据处理微服务的实例信息;The network microservice selects instance information of a data processing microservice from the service list stored in the local cache;
    所述网络微服务根据选择的所述实例信息,将所述交易信息转发给所述实例信息对应的数据处理微服务。The network microservice forwards the transaction information to the data processing microservice corresponding to the instance information according to the selected instance information.
  18. 根据权利要求17所述的计算机可读存储介质,其中,所述网络微服务从本地缓存中存储的所述服务列表中选择一个数据处理微服务的实例信息,包括: The computer-readable storage medium of claim 17, wherein the network microservice selects instance information of a data processing microservice from the service list stored in the local cache, comprising:
    所述网络微服务根据数据处理微服务对应的微服务标识,查询本地缓存的所述服务列表中包含的数据处理微服务的实例信息是否为多个;The network microservice queries whether there are multiple instance information of the data processing microservice contained in the service list in the local cache according to the microservice identifier corresponding to the data processing microservice;
    若查询出服务列表中仅包括一个数据处理微服务的实例信息,则选择所述服务列表包括的所述实例信息;If it is queried that the service list only includes instance information of one data processing microservice, select the instance information included in the service list;
    若查询出本地缓存的服务列表中包括多个数据处理微服务的实例信息,则按照预设负载均衡策略,从所述多个数据处理微服务的实例信息中选择一个实例信息。If it is found that the locally cached service list includes instance information of multiple data processing microservices, one instance information is selected from the instance information of the multiple data processing microservices according to the preset load balancing policy.
  19. 根据权利要求18所述的计算机可读存储介质,其中,所述按照预设负载均衡策略,从所述多个数据处理微服务的实例信息中选择一个实例信息,包括: The computer-readable storage medium according to claim 18, wherein the selecting one instance information from the instance information of the plurality of data processing microservices according to a preset load balancing policy comprises:
    所述网络微服务按照预设负载均衡策略规定的每个数据处理微服务对应的数据发送次序,从所述多个数据处理微服务的实例信息中选择一个实例信息;或者,所述网络微服务获取预设负载均衡策略中当前记录的响应时间最短的数据处理微服务的实例信息,所述响应时间为数据处理微服务在预设时间段内处理所有任务所需时长的平均值。The network microservice selects one instance information from the instance information of the multiple data processing microservices according to the data sending order corresponding to each data processing microservice specified by the preset load balancing policy; or, the network microservice Obtain the instance information of the data processing microservice with the shortest response time currently recorded in the preset load balancing policy, where the response time is the average value of the time required for the data processing microservice to process all tasks within the preset time period.
  20. 根据权利要求19所述的计算机可读存储介质,其中,所述处理器执行所述计算机可读指令时还执行以下步骤: The computer-readable storage medium of claim 19, wherein the processor, when executing the computer-readable instructions, further performs the following steps:
    每隔所述预设时间段所述协议栈系统中的每个数据处理微服务都将自己的响应时间发送给每个网络微服务;Each data processing microservice in the protocol stack system sends its own response time to each network microservice every preset time period;
    每个网络微服务接收每个数据处理微服务发送的响应时间,确定出响应时间最短的数据处理微服务,将所述响应时间最短的数据处理微服务的实例信息记录在预设负载均衡策略中。Each network microservice receives the response time sent by each data processing microservice, determines the data processing microservice with the shortest response time, and records the instance information of the data processing microservice with the shortest response time in the preset load balancing policy .
PCT/CN2021/109468 2021-03-17 2021-07-30 Blockchain protocol stack architecture development method and system, device, and storage medium WO2022193530A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110287197.1A CN113014666B (en) 2021-03-17 2021-03-17 Block chain protocol stack architecture method, system, equipment and storage medium
CN202110287197.1 2021-03-17

Publications (1)

Publication Number Publication Date
WO2022193530A1 true WO2022193530A1 (en) 2022-09-22

Family

ID=76409330

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/109468 WO2022193530A1 (en) 2021-03-17 2021-07-30 Blockchain protocol stack architecture development method and system, device, and storage medium

Country Status (2)

Country Link
CN (1) CN113014666B (en)
WO (1) WO2022193530A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115996229A (en) * 2022-11-30 2023-04-21 中国电子科技集团公司第十研究所 Micro-service data synchronization method for cloud measurement and control baseband pool

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113014666B (en) * 2021-03-17 2023-02-28 深圳壹账通智能科技有限公司 Block chain protocol stack architecture method, system, equipment and storage medium
CN114615284A (en) * 2022-03-09 2022-06-10 北京沃东天骏信息技术有限公司 Method and device for notifying and receiving messages in cluster

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102420697A (en) * 2011-09-07 2012-04-18 北京邮电大学 Service-configurable comprehensive resource monitoring managing system and method
CN108270813A (en) * 2016-12-30 2018-07-10 华为技术有限公司 A kind of isomery multi-protocol stack method, apparatus and system
US20180308072A1 (en) * 2017-04-21 2018-10-25 Gem Method and apparatus for blockchain management
CN108989389A (en) * 2018-06-11 2018-12-11 北京航空航天大学 A method of establishing intelligent contract micro services
CN110266815A (en) * 2019-07-10 2019-09-20 西安纸贵互联网科技有限公司 Micro services network system based on block chain
CN110554927A (en) * 2019-09-12 2019-12-10 北京笔新互联网科技有限公司 Micro-service calling method based on block chain
CN111026982A (en) * 2019-10-15 2020-04-17 深圳壹账通智能科技有限公司 Intelligent contract processing method, computer equipment and storage medium
CN111240732A (en) * 2020-01-17 2020-06-05 腾讯科技(深圳)有限公司 Method, device, equipment and storage medium for distributing distributed microservice
CN112000448A (en) * 2020-07-17 2020-11-27 北京计算机技术及应用研究所 Micro-service architecture-based application management method
CN112511608A (en) * 2020-11-19 2021-03-16 中国平安财产保险股份有限公司 Micro-service module registration and test method, device, equipment and storage medium
CN113014666A (en) * 2021-03-17 2021-06-22 深圳壹账通智能科技有限公司 Block chain protocol stack architecture method, system, equipment and storage medium

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104301414A (en) * 2014-10-21 2015-01-21 无锡云捷科技有限公司 Server load balancing method based on network protocol stack
US10860390B2 (en) * 2017-06-28 2020-12-08 Intel Corporation Microservices architecture
CN107979635A (en) * 2017-10-24 2018-05-01 广东康美通信息服务有限公司 System, method and storage medium based on micro services
CN109547570B (en) * 2018-12-29 2021-07-06 深圳云天励飞技术有限公司 Service registration method, device, registration center management equipment and storage medium
CN110365533B (en) * 2019-07-12 2022-04-12 上海和数软件有限公司 Digital asset transaction method, system and computer readable storage medium

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102420697A (en) * 2011-09-07 2012-04-18 北京邮电大学 Service-configurable comprehensive resource monitoring managing system and method
CN108270813A (en) * 2016-12-30 2018-07-10 华为技术有限公司 A kind of isomery multi-protocol stack method, apparatus and system
US20180308072A1 (en) * 2017-04-21 2018-10-25 Gem Method and apparatus for blockchain management
CN108989389A (en) * 2018-06-11 2018-12-11 北京航空航天大学 A method of establishing intelligent contract micro services
CN110266815A (en) * 2019-07-10 2019-09-20 西安纸贵互联网科技有限公司 Micro services network system based on block chain
CN110554927A (en) * 2019-09-12 2019-12-10 北京笔新互联网科技有限公司 Micro-service calling method based on block chain
CN111026982A (en) * 2019-10-15 2020-04-17 深圳壹账通智能科技有限公司 Intelligent contract processing method, computer equipment and storage medium
CN111240732A (en) * 2020-01-17 2020-06-05 腾讯科技(深圳)有限公司 Method, device, equipment and storage medium for distributing distributed microservice
CN112000448A (en) * 2020-07-17 2020-11-27 北京计算机技术及应用研究所 Micro-service architecture-based application management method
CN112511608A (en) * 2020-11-19 2021-03-16 中国平安财产保险股份有限公司 Micro-service module registration and test method, device, equipment and storage medium
CN113014666A (en) * 2021-03-17 2021-06-22 深圳壹账通智能科技有限公司 Block chain protocol stack architecture method, system, equipment and storage medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115996229A (en) * 2022-11-30 2023-04-21 中国电子科技集团公司第十研究所 Micro-service data synchronization method for cloud measurement and control baseband pool
CN115996229B (en) * 2022-11-30 2024-04-05 中国电子科技集团公司第十研究所 Micro-service data synchronization method for cloud measurement and control baseband pool

Also Published As

Publication number Publication date
CN113014666A (en) 2021-06-22
CN113014666B (en) 2023-02-28

Similar Documents

Publication Publication Date Title
WO2022193530A1 (en) Blockchain protocol stack architecture development method and system, device, and storage medium
JP6004299B2 (en) Method and apparatus for matching flow tables and switch
US20240031309A1 (en) Data Processing Method, Apparatus, Device and Storage Medium
WO2019001092A1 (en) Load balancing engine, client, distributed computing system, and load balancing method
WO2020019743A1 (en) Traffic control method and device
US20210026692A1 (en) Systems and methods providing serverless dns integration
US20170124021A1 (en) Methods for enabling direct memory access (dma) capable devices for remote dma (rdma) usage and devices thereof
CN109413211B (en) Architecture of EOS block chain super node and implementation method thereof
US20200274832A1 (en) Rdma transport with hardware integration and out of order placement
US10067719B1 (en) Methods and systems for storing and accessing data in a distributed data storage system
CN101827019A (en) Network Interface Unit
US8930518B2 (en) Processing of write requests in application server clusters
US8539089B2 (en) System and method for vertical perimeter protection
CN110727738B (en) Global routing system based on data fragmentation, electronic equipment and storage medium
CN106503058A (en) A kind of data load method, terminal and computing cluster
CN103248670A (en) Connection management in a computer networking environment
US20240045869A1 (en) A method and device of data transmission
EP1589424A2 (en) Vertical perimeter framework for providing application services in multi-CPU environments
US20060206453A1 (en) Dynamically Sizing Buffers to Optimal Size in Network Layers When Supporting Data Transfers Related to Database Applications
CN106131162B (en) A method of network service agent is realized based on IOCP mechanism
JP2014528611A (en) System and method for preventing single point bottlenecks in a transaction middleware machine environment
CN112600882B (en) Hardware acceleration method based on shared memory communication mode
WO2021000622A1 (en) Database access method and apparatus, computing device and computer program product
JP5945543B2 (en) System including middleware machine environment
CN109743350B (en) Unloading implementation method for switching communication mode of scientific computing application image area

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21931108

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 110124)