Resource processing method and device, computer equipment and storage medium
By using intermediate accounts to transfer and return the resource when the resource transfer account does not support the resource transfer amount, the problem of transaction blocking in asynchronous message processing is solved, and the efficiency and accuracy of resource processing are improved.
Patent Information
- Application Number
- CN202410035212.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-08
- Publication Date
- 2025-07-08
AI Technical Summary
In the prior art, due to network delay and system failure, the asynchronous message processing mechanism may cause transaction blockage in resource transfer operations, resulting in low resource processing efficiency.
By introducing an intermediate account mechanism, when the resource transfer account does not support the resource transfer amount, the intermediate account is used for resource transfer, and resource return is carried out when the conditions are met to ensure the smooth completion of resource transfer processing.
It reduces the blocking problem of resource transfer processing, improves the efficiency of resource processing, simplifies performance and technical complexity, and ensures the accuracy and security of resource transfer.
Smart Images

Figure CN120278813A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technologies, and in particular, to a resource processing method, apparatus, computer device, storage medium, and computer program product. Background Art
[0002] With the development of computer technologies, more and more users choose to perform resource transfer operations on various resources through computer devices, such as terminal devices, such as shopping payment operations, fund transfer operations, digital product transfers, etc. In resource transfer processing, an asynchronous processing mechanism is usually adopted to process transaction requests. Specifically, for a large number of triggered resource transfer operations, after completing the resource transfer logic processing, corresponding asynchronous messages are generated, and the actual resource transfer processing is performed according to the asynchronous messages.
[0003] However, due to reasons such as network latency and system failures, it may not be possible to process asynchronous messages in the order of resource transfer logic processing, thus causing transaction blocking problems and resulting in low resource processing efficiency. Summary of the Invention
[0004] Based on this, it is necessary to provide a resource processing method, apparatus, computer device, computer-readable storage medium, and computer program product that can improve resource processing efficiency for the above technical problems.
[0005] In a first aspect, this application provides a resource processing method. The method includes:
[0006] Obtain at least two resource processing messages generated when resource logical transfer processing is completed;
[0007] Determine the resource transfer-out account, resource transfer-in account, and resource transfer amount corresponding to the resource processing message among the at least two resource processing messages;
[0008] When the resource transfer-out account does not support resource transfer out according to the resource transfer amount, transfer transfer resources to the resource transfer-out account according to the resource transfer amount through an intermediate account, and perform resource transfer from the resource transfer-out account to the resource transfer-in account according to the resource transfer amount to obtain the resource transfer result of the targeted resource processing message;
[0009] When the resource transfer-out account meets the resource return determination condition, transfer return resources matching the transfer resources from the resource transfer-out account to the intermediate account;
[0010] When the resource transfer processing for the at least two resource processing messages is completed and the transfer resources transferred out by the intermediate account match the return resources received, determine that the resource transfer processing for the at least two resource processing messages is completed.
[0011] Second aspect, the present application also provides a resource processing device. The device includes:
[0012] A resource processing message acquisition module, configured to acquire at least two resource processing messages generated when the resource logical transfer processing is completed;
[0013] A resource processing message parsing module, configured to determine a resource transfer-out account, a resource transfer-in account, and a resource transfer amount corresponding to the resource processing message among the at least two resource processing messages;
[0014] A transit resource processing module, configured to, when the resource transfer-out account does not support resource transfer out according to the resource transfer amount, transfer transit resources to the resource transfer-out account according to the resource transfer amount through an intermediate account, and transfer resources from the resource transfer-out account to the resource transfer-in account according to the resource transfer amount, to obtain a resource transfer result of the targeted resource processing message;
[0015] A resource return processing module, configured to, when the resource transfer-out account meets the resource return determination condition, transfer return resources matching the transit resources from the resource transfer-out account to the intermediate account;
[0016] A resource transfer result recording module, configured to, when the resource transfer processing for the at least two resource processing messages is completed and the transit resources transferred out by the intermediate account match the received return resources, determine that the resource transfer processing for the at least two resource processing messages is completed.
[0017] Third aspect, the present application also provides a computer device. The computer device includes a memory and a processor. The memory stores a computer program, and when the processor executes the computer program, the steps of the above resource processing method are implemented.
[0018] Fourth aspect, the present application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the above resource processing method are implemented.
[0019] Fifth aspect, the present application also provides a computer program product. The computer program product includes a computer program, and when the computer program is executed by a processor, the steps of the above resource processing method are implemented.
[0020] For the above-mentioned resource processing method, device, computer equipment, storage medium, and computer program product, for at least two resource processing messages generated when completing resource logical transfer processing, determine the resource transfer-out account, resource transfer-in account, and resource transfer amount corresponding to the resource processing message for the resource processing message. When the resource transfer-out account does not support resource transfer out according to the resource transfer amount, transfer transit resources to the resource transfer-out account according to the resource transfer amount through an intermediate account, and transfer resources from the resource transfer-out account to the resource transfer-in account according to the resource transfer amount to obtain the resource transfer result for the targeted resource processing message. When the resource transfer-out account meets the resource return determination condition, transfer return resources matching the transit resources from the resource transfer-out account to the intermediate account. When completing the resource transfer processing for at least two resource processing messages and the transit resources transferred out by the intermediate account match the return resources received, the resource transfer processing for at least two resource processing messages is completed. For the resource processing message for which the corresponding resource transfer-out account does not support resource transfer out according to the resource transfer amount, transfer transit resources through the intermediate account to assist in completing the resource transfer, and transfer return resources matching the transit resources to the intermediate account when the resource transfer-out account meets the resource return determination condition. When processing resources, it is not necessary to rely on the timing sequence of the resource logical transfer processing corresponding to the resource processing message, which can reduce the blocking problem of resource transfer processing and thus improve the resource processing efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the following will briefly introduce the drawings required for use in the description of the embodiments or related technologies. Obviously, the drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other drawings can also be obtained based on these drawings.
[0022] Figure 1 It is an application environment diagram of the resource processing method in an embodiment;
[0023] Figure 2 It is a flowchart of the resource processing method in an embodiment;
[0024] Figure 3 It is a timing diagram of the resource processing method in an embodiment;
[0025] Figure 4 It is a flowchart of the resource lending and resource return processing in another embodiment;
[0026] Figure 5 It is a flowchart of transferring transit resources to the resource transfer-out account in an embodiment;
[0027] Figure 6 Schematic diagram for determining the number of transfer resources based on the difference in resource quantity in an embodiment;
[0028] Figure 7 Schematic diagram for determining the number of transfer resources based on the amount of resource transfer in an embodiment;
[0029] Figure 8 Sequence diagram for resource return through the resource transfer-in account in an embodiment;
[0030] Figure 9 Schematic diagram for the sequence of resource transfer transactions in an embodiment;
[0031] Figure 10 Schematic diagram for the disorderly execution of resource transfer transactions in an embodiment;
[0032] Figure 11 Structural block diagram of a resource processing device in an embodiment;
[0033] Figure 12 Internal structure diagram of a computer device in an embodiment. Detailed implementation manners
[0034] In order to make the objectives, technical solutions and advantages of the present application clearer and more understandable, the present application will be further described in 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 and are not used to limit the present application.
[0035] The resource processing method provided by the embodiments of the present application can be applied to an application environment as Figure 1 shown. Among them, the terminal 102 communicates with the resource logical transfer server 104 through a network, and the resource logical transfer server 104 communicates with the server 106 through a network. The data storage system can store the data that the respective connected servers need to process. The data storage system can be set up separately, integrated on the corresponding server, placed in the cloud or on other servers.
[0036] Users can trigger resource logical transfer processing through the held terminal 102. For example, users can make multiple shopping payments through terminal 102 to trigger the resource logical transfer server 104 to perform resource logical transfer processing and generate corresponding resource processing messages. The resource logical transfer server 104 can send at least two generated resource processing messages to the server 106. For at least two resource processing messages generated when the resource logical transfer processing is completed, the server 106 determines the resource transfer-out account, resource transfer-in account, and resource transfer amount corresponding to the resource processing message. When the resource transfer-out account does not support resource transfer out according to the resource transfer amount, the server 106 transfers transfer medium resources to the resource transfer-out account according to the resource transfer amount through the intermediate account, and transfers resources from the resource transfer-out account to the resource transfer-in account according to the resource transfer amount to obtain the resource transfer result for the targeted resource processing message. When the resource transfer-out account meets the resource return determination condition, the server 106 transfers return resources matching the transfer medium resources from the resource transfer-out account to the intermediate account. When the resource transfer processing for at least two resource processing messages is completed and the transfer medium resources transferred out by the intermediate account match the received return resources, the server 106 determines that the resource transfer processing for at least two resource processing messages is completed, so that the server 106 realizes the actual resource transfer processing for each resource processing message.
[0037] Among them, the terminal 102 can be, but is not limited to, various desktop computers, laptop computers, smart phones, tablet computers, Internet of Things devices, and portable wearable devices. The Internet of Things devices can be smart speakers, smart TVs, smart air conditioners, smart in-vehicle devices, etc. The portable wearable devices can be smart watches, smart bracelets, head-mounted devices, etc. The resource logical transfer server 104 and the server 106 can be implemented by an independent server or a server cluster composed of multiple servers.
[0038] Specifically, blockchain is a new application mode of computer technologies such as distributed data storage, peer-to-peer transmission, consensus mechanism, and encryption algorithms. Blockchain, in essence, is a decentralized database, a string of data blocks generated by using cryptographic methods. Each data block contains information about a batch of network transactions, used to verify the validity (anti-counterfeiting) of the information and generate the next block. Blockchain can include the blockchain underlying platform, the platform product service layer, and the application service layer.
[0039] The underlying blockchain platform may include processing modules such as user management, basic services, smart contracts, and operation monitoring. Among them, the user management module is responsible for the identity information management of all blockchain participants, including maintaining the generation of public and private keys (account management), key management, and the maintenance of the correspondence between the real identity of users and blockchain addresses (permission management). And under authorized circumstances, it supervises and audits the transaction situations of certain real identities, and provides the rule configuration for risk control (risk control audit); the basic service module is deployed on all blockchain node devices to verify the validity of business requests, and records them on the storage after consensus on valid requests. For a new business request, the basic service first performs interface adaptation parsing and authentication processing (interface adaptation), then encrypts the business information through a consensus algorithm (consensus management), transmits it intact and consistently to the shared ledger after encryption (network communication), and performs record storage; the smart contract module is responsible for the registration and issuance of contracts, as well as contract triggering and contract execution. Developers can define contract logic through a certain programming language and publish it to the blockchain (contract registration). According to the logic of the contract terms, it calls keys or other events to trigger execution, completes the contract logic, and also provides functions for contract upgrade and cancellation; the operation monitoring module is mainly responsible for the deployment, configuration modification, contract setting, cloud adaptation during the product release process, and the visual output of the real-time status during product operation, such as: alarming, monitoring network conditions, monitoring the health status of node devices, etc.
[0040] The platform product service layer provides the basic capabilities and implementation frameworks of typical applications. Developers can build on these basic capabilities and overlay the characteristics of the business to complete the blockchain implementation of the business logic. The application service layer provides application services based on the blockchain solution for business participants to use.
[0041] In an exemplary embodiment, as Figure 2 shown, a resource processing method is provided. This method is executed by a computer device, and specifically can be executed alone by a computer device such as a terminal or a server, or jointly executed by a terminal and a server. In the embodiments of the present application, taking this method applied to Figure 1 the server in as an example for illustration, it includes the following steps 202 to step 210. Among them:
[0042] Step 202, obtain at least two resource processing messages generated when the resource logical transfer processing is completed.
[0043] Among them, a resource is an asset that can be exchanged for a subject matter, and specifically can be any one of digital resources, physical resources, or virtual resources. A digital resource is a resource obtained by digitizing a physical resource, and the digital resource can be stored in a digital resource account. Virtual resources can specifically include, but are not limited to, at least one of various virtual assets, funds, stocks, bonds, virtual image products, virtual recharge cards, game equipment, etc. A physical resource can be an item with an actual form that can be owned by a user, and specifically can include, but are not limited to, a house, a vehicle, an electronic product, a toy, a handicraft, or a signed photo, etc. Resource processing can include transfer processing for resources. Resource transfer refers to the exchange of resources, including a resource transferor and a resource transferee. The resource is transferred from the resource transferor to the resource transferee. For example, in the payment process of shopping, funds are transferred as resources.
[0044] Resource logical transfer processing refers to performing logical transfer processing on resources without the need to complete the actual resource transfer processing of the actual corresponding account, that is, resource logical transfer processing does not perform actual transfer processing on the resources in the user's resource account, but performs logically virtual resource transfer processing. For example, logical resource transfer processing can be implemented through a balance system, and actual resource transfer processing can be implemented through a bookkeeping system. The resource accounts held by the user can be respectively bound to the balance system and the bookkeeping system. When resource transfer processing is triggered, logical transfer processing can first be performed on the resource account through the balance system, thereby generating a corresponding resource processing message. The resource processing message can carry logical resource transfer information, which can specifically include information such as the resource transfer-out account, the resource transfer-in account, and the resource transfer amount, etc.; the balance system can instruct the bookkeeping system to perform actual resource transfer processing on the resource account according to the resource processing message, that is, perform real transfer processing on the resources in the resource account. The resource processing message is generated corresponding to the completion of resource logical transfer processing. The resource processing message can carry resource transfer information for the resource logical transfer processing. The resource transfer information can be used to describe the resource transfer operation involved in the resource logical transfer processing, and specifically can include the resource transfer account and the resource transfer amount, etc. The resource processing message is used to instruct the server to perform actual resource transfer processing for the resource logical transfer processing, thereby implementing resource processing based on an asynchronous mechanism.
[0045] Specifically, such as Figure 3As shown, the user can trigger resource transfer processing through the terminal. The balance system server performs resource logical transfer processing according to the trigger operation of the terminal. After the resource logical transfer processing is successful, the balance system server generates a resource processing message. The balance system server prompts the terminal that the resource transfer is successful. However, at this time, only the balance system server has completed the resource logical transfer processing in the balance system, and no actual resource transfer processing has been performed on the resource account. That is, the resources in the resource account held by the user at this time have not changed. The balance system server further sends the resource processing message to the accounting system server so that the accounting system server performs resource transfer processing on the resource account according to the resource processing message. That is, the accounting system server performs actual resource transfer processing on the resource account according to the resource processing message, and at this time, the resources in the resource account held by the user will change accordingly. In addition, in specific implementation, the balance system server can also generate a resource processing message while prompting the terminal that the resource transfer is successful, or generate a resource processing message after prompting the terminal that the resource transfer is successful.
[0046] Specifically, the server can obtain at least two resource processing messages. The multiple resource processing messages obtained are all generated corresponding to the completion of the resource logical transfer processing. Each resource processing message can correspondingly describe a resource logical transfer processing. In specific implementation, the resource processing message can be obtained by the server from the resource logical transfer server. Specifically, it can be sent by the resource logical transfer server to the server. For example, when the preset trigger condition is met, specifically when the generated resource processing message reaches the preset quantity, or reaches the preset processing message sending period, it is considered that the preset trigger condition is met, and thus the generated multiple resource processing messages are sent to the server. In addition, the resource processing message can also be obtained by the server actively requesting from the resource logical transfer server. Specifically, when the server meets the preset trigger condition, the server requests to obtain multiple resource processing messages from the resource logical transfer server.
[0047] Step 204: Determine the resource transfer-out account, resource transfer-in account, and resource transfer amount corresponding to the resource processing message among at least two resource processing messages.
[0048] Among them, the resource processing message can carry logical resource transfer information. Specifically, according to the logical resource transfer information, the resource transfer-out account, resource transfer-in account, and resource transfer amount and other information for the resource logical transfer processing can be determined. The resource transfer-out account refers to the resource account that transfers out resources in the resource transfer processing. The resource transfer-in account refers to the resource account that transfers in resources in the resource transfer processing. The resource transfer amount refers to the quantity of resources transferred from the resource transfer-out account to the resource transfer-in account.
[0049] Optionally, the server may process the message traversal for the multiple obtained resources. Specifically for each resource processing message, the server determines logical resource transfer information such as the resource transfer-out account, the resource transfer-in account, and the resource transfer amount corresponding to the resource processing message. In a specific implementation, the server may parse the resource processing message to determine the resource transfer-out account, the resource transfer-in account, and the resource transfer amount for the resource logical transfer processing corresponding to the resource processing message. Based on the resource transfer-out account, the resource transfer-in account, and the resource transfer amount, the server may perform actual resource transfer processing.
[0050] Step 206, when the resource transfer-out account does not support resource transfer out according to the resource transfer amount, transfer intermediate resources to the resource transfer-out account according to the resource transfer amount through the intermediate account, and perform resource transfer from the resource transfer-out account to the resource transfer-in account according to the resource transfer amount to obtain the resource transfer result of the resource processing message targeted.
[0051] Among them, the intermediate account is a pre-set account used to assist in resource transfer. When the resource transfer-out account does not support resource transfer out, the intermediate account can transfer a certain amount of resources to the resource transfer-out account so that the resource transfer-out account can complete the resource transfer processing. The intermediate resources are the resources transferred from the intermediate account to the resource transfer-out account to assist the resource transfer-out account in resource transfer processing, and can specifically be regarded as the resources "lent" by the intermediate account to the resource transfer-out account for resource transfer processing. The resource transfer result is the processing result of resource transfer between the resource transfer-out account and the resource transfer-in account corresponding to the resource processing message according to the resource transfer amount.
[0052] Exemplarily, the server may make a determination for the resource transfer-out account based on the resource transfer amount to determine whether the resource transfer-out account supports resource transfer out according to the resource transfer amount. Specifically, it may determine whether the resource amount in the resource transfer-out account is not less than the resource transfer amount. If the resource amount in the resource transfer-out account is less than the resource transfer amount, it can be determined that the resource amount in the resource transfer-out account is insufficient, that is, the resource transfer-out account cannot complete the resource transfer processing corresponding to the resource processing message, and then the server may determine the pre-set intermediate account. The server may transfer intermediate resources to the resource transfer-out account through the intermediate account. Specifically, it may transfer a certain amount of intermediate resources to the resource transfer-out account according to the resource transfer amount through the intermediate account so that the resource transfer-out account can support resource transfer out according to the resource transfer amount. After injecting intermediate resources into the resource transfer-out account through the intermediate account, if the resource transfer-out account already supports resource transfer out according to the resource transfer amount, the server performs resource transfer from the resource transfer-out account to the resource transfer-in account. Specifically, it transfers resources corresponding to the resource transfer amount from the resource transfer-out account to the resource transfer-in account, thereby realizing the resource transfer processing according to the resource processing message and obtaining the resource transfer result for the resource processing message.
[0053] Step 208: When the resource transfer-out account meets the resource return determination condition, transfer the return resources matching the transferred resources from the resource transfer-out account to the intermediate account.
[0054] Among them, the resource return determination condition is used to determine whether to trigger the resource transfer-out account to plan corresponding amounts of resources to the intermediate account according to the transferred resources, so that the transferred resources "lent" by the intermediate account to the resource transfer-out account are "returned" from the resource transfer-out account to the intermediate account, thereby achieving the balance of "lending" and "returning" of the intermediate account resources. The resource return determination condition can be set according to actual needs. For example, it can be detected that the resources in the resource transfer-out account are greater than or equal to the amount of the transferred resources. That is, when the amount of resources held in the resource transfer-out account is greater than or equal to the amount of the intermediate resources, it is considered that the resource transfer-out account meets the resource return determination condition. The return resources are the resources "returned" by the resource transfer-out account to the intermediate account. The return resources match the transferred resources. Specifically, the amount of the return resources is the same as the amount of the transferred resources, so that the cancellation of the lending and returning of the intermediate account resources can be achieved.
[0055] Optionally, the server can detect the resource transfer-out account. Specifically, it can determine the resource transfer-out account according to the resource return determination condition. For example, it can detect the resources held in the resource transfer-out account to determine whether the resource transfer-out account meets the resource return determination condition. Specifically, when the amount of resources held in the resource transfer-out account reaches the amount of the transferred resources, it is considered that the resource transfer-out account meets the resource return determination condition. Then the server can trigger the return process for the transferred resources through the resource transfer-out account. The server can transfer the return resources matching the transferred resources from the resource transfer-out account to the intermediate account. In specific implementation, the server can determine the return resources matching the transferred resources from the resource transfer-out account. Specifically, it can determine the return resources matching the amount of the transferred resources. The server transfers the return resources determined from the resource transfer-out account to the intermediate account, thereby achieving the return process for the transferred resources.
[0056] Step 210: When the resource transfer process for at least two resource processing messages is completed and the transferred resources and the received return resources transferred by the intermediate account match, it is determined that the resource transfer process for at least two resource processing messages is completed.
[0057] Exemplarily, the server can traverse to obtain resource processing messages, and perform actual resource transfer processing for each resource processing message respectively to obtain corresponding resource transfer results. After completing the corresponding actual resource transfer processing for each resource processing message, and when the transferred intermediate resources from the intermediate account match the received returned resources, that is, the transferred intermediate resources from the intermediate account are offset with the received returned resources, the resource quantity in the intermediate account remains unchanged, and the server can determine that the resource transfer processing for at least two resource processing messages is completed. Further, the server can store the resource transfer results of each resource processing message respectively. Specifically, the server can store each resource transfer result in the blockchain network. In specific implementation, after storing each resource transfer result locally, the server can send each resource transfer result to each consensus node in the blockchain for consensus, so as to store each resource transfer result in the blockchain network to which the server belongs as a node.
[0058] In a specific application, such as Figure 4 shown, the server can receive multiple resource processing messages generated when the resource logical transfer processing is completed, and traverse to perform actual resource transfer processing for the received multiple resource processing messages. For the targeted resource processing message, the server can determine the resource transfer-out account, resource transfer-in account, and resource transfer quantity corresponding to the resource processing message. When the server determines that the resource quantity in the resource transfer-out account is less than the resource transfer quantity, it is considered that the resource transfer-out account does not support resource transfer according to the resource transfer quantity. Then the server can transfer intermediate resources to the resource transfer-out account through the intermediate account, and transfer resources from the resource transfer-out account according to the resource transfer quantity. When the server determines that the resource quantity in the resource transfer-out account is not less than the quantity of the intermediate resources, it is considered that the resource transfer-out account meets the resource return determination condition. Then the server transfers returned resources from the resource transfer-out account to the intermediate account, and the quantity of the returned resources is the same as the quantity of the intermediate resources. In addition, for the resource processing message that supports resource transfer according to the resource transfer quantity, the server can directly transfer resources from the resource transfer-out account to the resource transfer-in account according to the resource transfer quantity to obtain the resource transfer result of the resource processing message. Further, after traversing each resource processing message and obtaining the resource transfer results of each resource processing message respectively, and when the transferred intermediate resources from the intermediate account match the received returned resources, the server determines that the resource transfer processing for each resource processing message is completed. The server can further send each resource transfer result to the blockchain network for consensus processing based on the consensus mechanism, so as to store each resource transfer result in the blockchain network.
[0059] In the above resource processing method, for at least two resource processing messages generated when the resource logical transfer processing is completed, determine the resource transfer-out account, resource transfer-in account, and resource transfer amount corresponding to the resource processing message. When the resource transfer-out account does not support resource transfer out according to the resource transfer amount, transfer transfer resources to the resource transfer-out account according to the resource transfer amount through an intermediate account, and transfer resources from the resource transfer-out account to the resource transfer-in account according to the resource transfer amount to obtain the resource transfer result for the targeted resource processing message. When the resource transfer-out account meets the resource return determination condition, transfer return resources matching the transfer resources from the resource transfer-out account to the intermediate account. When the resource transfer processing for at least two resource processing messages is completed and the transfer resources transferred out by the intermediate account match the return resources received, the resource transfer processing for at least two resource processing messages is completed. For resource processing messages for which the corresponding resource transfer-out account does not support resource transfer out according to the resource transfer amount, transfer transfer resources through the intermediate account to assist in completing the resource transfer, and transfer return resources matching the transfer resources to the intermediate account when the resource transfer-out account meets the resource return determination condition. When processing resources, it is not necessary to rely on the timing sequence of the resource logical transfer processing corresponding to the resource processing message, which can reduce the blocking problem of resource transfer processing and thus improve the resource processing efficiency.
[0060] In an exemplary embodiment, as Figure 5 shown, the process of transferring transfer resources to the resource transfer-out account, that is, when the resource transfer-out account does not support resource transfer out according to the resource transfer amount, transfer transfer resources to the resource transfer-out account according to the resource transfer amount through an intermediate account, includes:
[0061] Step 502, when the resource holding amount of the resource transfer-out account is less than the resource transfer amount, determine the transfer resource quantity according to the resource transfer amount.
[0062] Among them, the resource holding amount refers to the quantity of resources held by the resource account, and the transfer resource quantity refers to the quantity of transfer resources. The transfer resource quantity can be determined according to the resource transfer amount. Specifically, the resource transfer amount can be directly determined as the transfer resource quantity, or the transfer resource quantity can be determined according to the difference between the resource transfer amount and the resource holding amount.
[0063] Optionally, when the resource holding amount of the resource transfer-out account is less than the resource transfer amount, it can be considered that the resource transfer-out account does not support resource transfer out according to the resource transfer amount, that is, the quantity of resources held by the resource transfer-out account is not sufficient to transfer out resources according to the resource transfer amount, and the corresponding resource transfer processing cannot be completed, which may be due to the blocking problem caused by the processing timing sequence of the resource transfer message.
[0064] For example, the initial resource quantity held by resource account A is 20, while the initial resource quantities held by resource account B and resource account C are both 0. In resource logical transfer process 1, 20 resource quantities are transferred from resource account A to resource account B. At this time, the resource quantity held by resource account A becomes 0, the resource quantity held by resource account B becomes 20, and the resource quantity held by resource account C remains 0. In resource logical transfer process 2, 20 resource quantities are transferred from resource account B to resource account C. At this time, the resource quantity held by resource account A remains 0, the resource quantity held by resource account B becomes 0, and the resource quantity held by resource account C becomes 0. Resource logical transfer process 1 and resource logical transfer process 2 each generate resource processing message 1 and resource processing message 2. When the server performs actual resource transfer processing for resource processing message 1 and resource processing message 2, if the server first receives resource processing message 2 and processes resource processing message 2, at this time, the resource quantity held by resource account A is 20, and the resource quantities held by resource account B and resource account C are both 0. Then resource account B cannot transfer 20 resource quantities to resource account C, that is, resource account B does not support resource transfer out according to the resource transfer quantity corresponding to resource processing message 2. That is, the server cannot perform actual resource transfer processing for resource processing message 2, and needs to wait until the processing of resource processing message 1 ends before it can ensure the normal processing of resource processing message 2.
[0065] The server can determine the transfer intermediate resources according to the resource transfer quantity. Specifically, it can directly determine the resource transfer quantity as the transfer intermediate resources, or determine the difference between the resource transfer quantity and the resource holding quantity as the transfer intermediate resources.
[0066] Step 504, determine the transfer intermediate resources matching the transfer intermediate resource quantity from the intermediate account.
[0067] Exemplarily, the server can determine the transfer intermediate resources from the intermediate account according to the transfer intermediate resource quantity. Specifically, the server can determine the same quantity of resources as the transfer intermediate resources from the intermediate account according to the transfer intermediate resource quantity.
[0068] Step 506, transfer the transfer intermediate resources into the resource transfer-out account through the intermediate account.
[0069] Exemplarily, the server can transfer the determined transfer intermediate resources from the intermediate account to the resource transfer-out account, thereby increasing the resource quantity held by the resource transfer-out account, so that the quantity of resources held by the resource transfer-out account can support resource transfer out according to the resource transfer quantity, so as to complete the actual resource transfer processing for the resource processing message.
[0070] In this embodiment, when the server determines that the resource holding amount of the resource transfer-out account is less than the resource transfer amount, it determines the intermediate resource quantity based on the resource transfer amount, determines the intermediate resources matching the intermediate resource quantity from the intermediate account, and transfers the determined intermediate resources into the resource transfer-out account, so that the quantity of the intermediate resources can be accurately determined to ensure the resource transfer processing for the resource transfer-out account.
[0071] In an exemplary embodiment, when the resource holding amount of the resource transfer-out account is less than the resource transfer amount, determining the intermediate resource quantity according to the resource transfer amount includes: when the resource holding amount of the resource transfer-out account is less than the resource transfer amount, determining the resource quantity difference between the resource transfer amount and the resource holding amount, and obtaining the intermediate resource quantity according to the resource quantity difference.
[0072] Wherein, the resource quantity difference refers to the numerical difference between the resource transfer amount and the resource holding amount. Optionally, the server can query the resource holding amount of the resource transfer-out account, compare the resource holding amount of the resource transfer-out account with the resource transfer amount. When it determines that the resource holding amount of the resource transfer-out account is less than the resource transfer amount, the server can further determine the resource quantity difference between the resource transfer amount and the resource holding amount, and specifically can obtain the resource quantity difference according to the difference between the resource transfer amount and the resource holding amount. The server can obtain the intermediate resource quantity according to the resource quantity difference. Specifically, the server can directly determine the resource quantity difference as the intermediate resource quantity. In specific applications, as Figure 6 shown, the server determines that the resource holding amount in the resource transfer-out account is x, the resource transfer amount is y, and x is less than y, then the server can determine the resource quantity difference y - x and use the resource quantity difference y - x as the intermediate resource quantity.
[0073] In this embodiment, the server determines the intermediate resource quantity according to the resource quantity difference between the resource transfer amount and the resource holding amount, so that the resource transfer-out account can be supplemented according to the intermediate resources of the intermediate resource quantity, enabling the resource transfer-out account to perform actual resource transfer processing, reducing the blocking problem of resource transfer processing, and thus improving the resource processing efficiency.
[0074] In an exemplary embodiment, when the resource holding amount of the resource transfer-out account is less than the resource transfer amount, determining the intermediate resource quantity according to the resource transfer amount includes: when the resource holding amount of the resource transfer-out account is less than the resource transfer amount, using the resource transfer amount as the intermediate resource quantity.
[0075] Exemplarily, when the server determines that the resource holding amount of the resource transfer-out account is less than the resource transfer amount, the server can directly determine the resource transfer amount as the intermediate resource quantity. In specific applications, as Figure 7As shown, the server determines that the resource holding amount in the resource transfer-out account is x, and the resource transfer amount is y, and x is less than y. Then the server can directly use the resource transfer amount y as the intermediate resource quantity.
[0076] In this embodiment, the server directly determines the intermediate resource quantity according to the resource transfer amount, so that it can replenish the resource transfer-out account according to the intermediate resource corresponding to the intermediate resource quantity, enabling the resource transfer-out account to perform actual resource transfer processing, reducing the blocking problem of resource transfer processing, and thus improving the resource processing efficiency.
[0077] In an exemplary embodiment, when the resource transfer-out account meets the resource return determination condition, transferring the return resource matching the intermediate resource from the resource transfer-out account to the intermediate account includes: querying the resource holding amount of the resource transfer-out account when obtaining the resource transfer result of the resource processing message; when the resource holding amount is not less than the intermediate resource quantity of the intermediate resource, determining the return resource matching the intermediate resource from the resource transfer-out account according to the intermediate resource quantity; and transferring the return resource to the intermediate account through the resource transfer-out account.
[0078] Among them, the intermediate resource quantity refers to the quantity of the intermediate resource. The return resource refers to the resource that the resource transfer-out account needs to return to the intermediate account, and the resource quantity of the return resource matches the quantity of the intermediate resource. Specifically, when obtaining the resource transfer result of the resource processing message, that is, after completing the actual resource transfer processing for the resource processing message, the server can monitor the resource holding amount of the resource transfer-out account. When the resource holding amount of the resource transfer-out account is greater than or equal to the intermediate resource quantity of the intermediate resource, it indicates that the resources held by the resource transfer-out account are sufficient to return the intermediate resources borrowed from the intermediate account. Then the server can determine the return resource from the resource transfer-out account for resource return processing to the intermediate account. Specifically, the server can determine the return resource from the resource transfer-out account, and the return resource matches the intermediate resource, that is, the resource quantity of the return resource can be the same as the intermediate resource quantity of the intermediate resource. The server can transfer the determined return resource to the intermediate account, thereby returning the intermediate resources lent by the intermediate account through the resource transfer-out account, ensuring that the intermediate resources transferred out by the intermediate account match the received return resources, and achieving resource balance in the resource transfer processing for the resource processing message.
[0079] In this embodiment, when the resource holding amount of the resource transfer-out account is greater than or equal to the intermediate resource quantity of the intermediate resource, the server transfers the return resource matching the intermediate resource in the resource transfer-out account to the intermediate account, thereby achieving resource balance of the intermediate account and ensuring accurate resource transfer processing.
[0080] In an exemplary embodiment, when the resource transfer process for at least two resource processing messages is completed and the transferred intermediate resources from the intermediate account match the received returned resources, determining that the resource transfer process for at least two resource processing messages is completed includes: when the resource transfer process for at least two resource processing messages is completed, determining the amount of transferred resources of the transferred intermediate resources from the intermediate account and the amount of received resources of the received returned resources; when the amount of transferred resources matches the amount of received resources, recording the resource transfer results of each of the at least two resource processing messages into the blockchain network.
[0081] Among them, the amount of transferred resources refers to the quantity of the intermediate resources transferred from the intermediate account, and the amount of received resources refers to the quantity of the returned resources received by the intermediate account. When the amount of transferred resources matches the amount of received resources, specifically when the amounts of the transferred resources and the received resources are equal, it indicates that all the transferred intermediate resources lent by the intermediate account have been returned, the resources of the intermediate account have not changed, the lending and returning of the resources of the intermediate account are offset, that is, the resources of the intermediate account reach balance.
[0082] Optionally, after the server performs the actual resource transfer process for the obtained multiple resource processing messages through traversal, it can further determine whether the intermediate account reaches resource balance to ensure the accuracy of the resource transfer. After the resource transfer process for each resource processing message is completed, the server can determine the amount of transferred resources of the transferred intermediate resources from the intermediate account and the amount of received resources of the received returned resources. Specifically, the server can count the quantities of the transferred intermediate resources from the intermediate account and the received returned resources received by the intermediate account respectively to obtain the amount of transferred resources and the amount of received resources. The server matches the amount of transferred resources and the amount of received resources. When it is determined that the amount of transferred resources matches the amount of received resources, specifically when the amounts of the transferred resources and the received resources are the same, the server can consider that the resources of the intermediate account reach balance and the accurate resource transfer process for each resource processing message has been completed. The server can store the resource transfer results of each of the resource processing messages. Specifically, it can record the resource transfer results of each resource processing message into the blockchain network for storage.
[0083] In this embodiment, when it is determined that the amount of transferred resources of the transferred intermediate resources from the intermediate account matches the amount of received resources of the received returned resources, the server stores the resource transfer results of each resource processing message into the blockchain network, thereby ensuring the accurate resource transfer process for the resource processing messages and guaranteeing the security of the resource transfer results.
[0084] In an exemplary embodiment, when the amount of transferred-out resources matches the amount of received resources, record the resource transfer results of at least two resource processing messages into the blockchain network, including: when the numerical values of the amount of transferred-out resources and the amount of received resources are the same, determine the resource transfer time sequence of each of the at least two resource processing messages; call the smart contract deployed in the blockchain network for recording resource transfer results, and record the resource transfer results of each of the at least two resource processing messages into the blockchain network in sequence according to the resource transfer time sequence.
[0085] Among them, the resource transfer time sequence refers to the time sequence of resource transfer processing corresponding to the resource processing message. Each resource processing message is generated when the resource logical transfer processing is performed according to this resource transfer time sequence, that is, each resource processing message is generated separately according to this resource transfer time sequence.
[0086] Exemplarily, the server can compare the amount of transferred-out resources with the amount of received resources. When it is determined that the numerical values of the amount of transferred-out resources and the amount of received resources are the same, it indicates that all the transferred resources lent by the intermediate account have been correspondingly returned, and the server can determine the resource transfer time sequence. The server can determine the resource transfer time sequence of each resource processing message. Specifically, the server can determine the corresponding resource transfer processing timestamp from each resource processing message, so as to determine the corresponding resource transfer time sequence. The server calls the smart contract pre-deployed in the blockchain network, and stores each resource transfer result according to the resource transfer time sequence through this smart contract. Specifically, each resource transfer result can be uploaded to the blockchain network in sequence according to the resource transfer time sequence for consensus processing, so as to record the resource transfer result into the blockchain network.
[0087] In this embodiment, when it is determined that the numerical values of the amount of transferred-out resources and the amount of received resources are the same, the server records each resource transfer result into the blockchain network in sequence by calling the smart contract according to the resource transfer time sequence, which can store the resource transfer result in time and ensure the security of the resource transfer result.
[0088] In an exemplary embodiment, determine the resource transfer-out account, resource transfer-in account, and resource transfer amount corresponding to the resource processing message among at least two resource processing messages, including: determine the smart contract deployed in the blockchain network for resource transfer processing; when the execution trigger condition of the smart contract is met, based on the smart contract, determine the resource processing message for resource transfer from at least two resource processing messages according to the message reception order; determine the corresponding resource transfer-out account, resource transfer-in account, and resource transfer amount from the resource processing message for resource transfer.
[0089] Among them, a smart contract is a contract written in code form that can be automatically executed on a blockchain; it can implement various functions, such as transferring funds, verifying identities, creating digital identities, etc. A smart contract is a contract that runs in the cyberspace relying on a computer. It is disseminated, verified, or executed in an informatized manner, read and executed by a computer, and has the characteristics of self-service. A smart contract is a computer protocol designed to disseminate, verify, or execute a contract in an informatized manner, which allows for trustworthy transactions without a third party. These transactions are monitorable and irreversible. That is, a smart contract is a set computer program that can automatically execute the content of a trustworthy contract without the participation of a third-party intermediary. All operations are publicly visible and irreversible. The decentralization of the blockchain and the anti-tampering of data determine that smart contracts are more suitable to be implemented on the blockchain. The execution trigger condition refers to the condition for triggering the execution of a smart contract, which can be set according to actual needs. Specifically, it can be defined according to actual needs when deploying the smart contract. For example, the execution trigger condition can include that the number of resource processing messages obtained reaches a preset message quantity threshold, or a preset message processing period is reached. The message reception order refers to the order in which the server receives resource processing messages.
[0090] Specifically, the server can determine the smart contract pre-deployed in the blockchain network for resource transfer processing and determine the execution trigger condition of the smart contract. The server detects whether the execution trigger condition of the smart contract is met. For example, it can monitor whether the number of resource processing messages obtained reaches a preset message quantity threshold, or whether a preset message processing period is reached. When it is determined that the execution trigger condition is met, the server can, based on the smart contract, determine the resource processing messages for resource transfer processing from each resource processing message according to the message reception order. In a specific implementation, the server can determine the message reception order of receiving each resource processing message from the server that performs resource logical transfer processing. Specifically, it can receive and determine the message reception order of each resource processing message according to the timestamps of each resource processing message. The server traverses and processes each resource processing message according to the message reception order by calling the smart contract. Specifically, the server can, in the order from first to last according to the message reception order, sequentially determine the resource processing messages for resource transfer from the resource processing messages. For the resource processing messages for resource transfer, the server can determine the corresponding resource transfer-out account, resource transfer-in account, and resource transfer amount from the resource processing message. For example, the server can parse the resource processing message to respectively determine the resource transfer-out account, resource transfer-in account, and resource transfer amount according to different fields.
[0091] In this embodiment, for each resource processing message received asynchronously, when the execution trigger condition of the smart contract is met, the server processes them in sequence according to the message reception order of each resource processing message. Thus, it is not necessary to rely on the timing sequence of the resource logic transfer processing corresponding to the resource processing message, which can reduce the blocking problem of resource transfer processing and improve the resource processing efficiency.
[0092] In an exemplary embodiment, when the execution trigger condition of the smart contract is met, based on the smart contract, the resource processing message for resource transfer is determined from at least two resource processing messages according to the message reception order, including: when the number of messages in at least two resource processing messages reaches the message quantity threshold or reaches the message processing cycle, based on the smart contract, the resource processing message for resource transfer is determined from at least two resource processing messages according to the message reception order.
[0093] Among them, the message quantity threshold can be set according to actual needs, such as it can be 10, 20, or 100, etc. The message processing cycle refers to the cycle for triggering the processing of the received resource processing message, such as it can be 1 minute, 10 minutes, or 30 minutes.
[0094] Specifically, the server can determine the message quantity threshold or the message processing cycle. The server can count the number of received messages or the time of receiving messages. When it is determined that the number of resource processing messages reaches the message quantity threshold or reaches the message processing cycle, it is considered that the execution trigger condition of the smart contract is met, and the server calls the smart contract to traverse the resource processing messages according to the message reception order for actual resource transfer processing. In specific implementation, the message quantity threshold or the message processing cycle can be flexibly set according to the business scenario to which the resource processing message belongs, that is, different business scenarios can correspond to different message quantity thresholds or message processing cycles. In specific applications, when the number of messages does not reach the message quantity threshold or does not reach the message processing cycle, the server can sort the received resource processing messages. Specifically, the server can parse each received resource processing message respectively to determine the respective timing sequences of each resource processing message, so as to sort the received resource processing messages according to the timing sequences and trigger actual resource transfer processing according to the sorted resource processing messages. In specific applications, for each resource processing message, the server can preferentially perform resource transfer processing in the sorted order and then perform resource transfer processing in the message reception order.
[0095] Further, determining a corresponding resource transfer-out account, resource transfer-in account, and resource transfer amount from the resource processing message targeted includes: extracting resource transfer information from the resource processing message targeted; the resource transfer information includes an account identifier and a resource transfer amount; determining the resource transfer-out account and the resource transfer-in account according to the account identifier.
[0096] Among them, the resource transfer information is information carried in the resource processing message for describing the corresponding resource logical transfer processing, and specifically may include an account identifier and a resource transfer amount. The account identifier is the identifier of the resource account involved in the resource logical transfer processing, and specifically may include identifiers such as the account name and account number of the resource account for distinguishing different resource accounts; the resource transfer amount is the resource quantity for resource transfer between the resource accounts identified by the account identifier in the resource logical transfer processing.
[0097] Optionally, the server may parse the resource processing message, specifically based on each field of the resource processing message targeted to extract the resource transfer information, and the resource transfer information may include an account identifier and a resource transfer amount. The account identifier may include a transfer-out account identifier and a transfer-in account identifier, and the server determines the resource transfer-out account and the resource transfer-in account based on the account identifier. Specifically, the server may query the resource account list according to the account identifier, so as to determine the resource transfer-out account and the resource transfer-in account corresponding to the resource processing message from the resource account list.
[0098] In this embodiment, when the number of resource processing messages reaches the message quantity threshold or reaches the message processing cycle, the server extracts the resource transfer information including the account identifier and the resource transfer amount from the resource processing message, and determines the resource transfer-out account and the resource transfer-in account according to the account identifier, so as to accurately determine the resource transfer information corresponding to the resource processing message and ensure the accuracy of resource transfer.
[0099] In an exemplary embodiment, the resource processing method further includes: when resource transfer is performed from the resource transfer-out account to the resource transfer-in account according to the resource transfer amount and the resource transfer-in account does not return resources to the intermediate account, determining the resource holding amount of the resource transfer-in account; when the resource holding amount is not less than the resource amount to be returned of the resource transfer-in account, the resource transfer-in account returns resources to the intermediate account according to the resource amount to be returned.
[0100] Among them, the quantity of resources to be returned refers to the quantity of resources that the resource transfer-in account needs to plan for the intermediate account, and can be specifically obtained by counting the quantity of intermediate resources transferred from the intermediate account to the resource transfer-in account. Optionally, after the resource transfer-out account transfers resources to the resource transfer-in account according to the resource transfer quantity, the server can further determine whether there are resources in the resource transfer-in account that need to be returned to the intermediate account, that is, determine whether the intermediate resources have been transferred to the resource transfer-in account in advance and the resource transfer-in account has not yet carried out return cancellation. If there are resources in the resource transfer-in account that have not been returned to the intermediate account, the server can perform resource return processing through the resource transfer-in account. Specifically, after the resource transfer-out account transfers resources with the resource transfer quantity to the resource transfer-in account, the server can determine whether the resource transfer-in account needs to return resources to the intermediate account. If so, it queries the resource holding quantity of the resource transfer-in account. The server determines the quantity of resources to be returned that the resource transfer-in account needs to return to the intermediate account, and compares the resource holding quantity of the resource transfer-in account with the quantity of resources to be returned. When the resource holding quantity of the resource transfer-in account is greater than or equal to the quantity of resources to be returned, it indicates that the resource transfer-in account can return resources to the intermediate account, and the server can transfer resources with the quantity of resources to be returned from the resource transfer-in account to the intermediate account according to the quantity of resources to be returned. Specifically, the server can transfer corresponding quantities of resources from the resource transfer-in account to the intermediate account according to the quantity of resources to be returned.
[0101] In a specific application, such as Figure 8 shown, for the resource processing message in question, the server can determine the resource transfer-out account, the resource transfer-in account, and the resource transfer quantity corresponding to the resource processing message. When the server determines that the quantity of resources in the resource transfer-out account is less than the resource transfer quantity, the server can transfer intermediate resources from the intermediate account to the resource transfer-out account and transfer resources from the resource transfer-out account according to the resource transfer quantity. When the server determines that the resource transfer-in account has not returned resources to the intermediate account and the resource holding quantity of the resource transfer-in account is not less than the quantity of resources to be returned, the server returns resources to the intermediate account according to the quantity of resources to be returned.
[0102] In this embodiment, in the case where the resource transfer-in account has not returned resources to the intermediate account and it is determined that the resource holding quantity of the resource transfer-in account is not less than the quantity of resources to be returned, the server triggers resource return processing for the resource transfer-in account to return the intermediate resources transferred out by the intermediate account in a timely manner, ensuring the resource balance of the intermediate account to ensure the accuracy of resource transfer.
[0103] In an exemplary embodiment, the resource processing method further includes: when the transferred transit resources of the intermediate account do not match the received returned resources, determining the un-offset transit resources according to the transferred transit resources and the received returned resources; generating a message retransmission request based on the un-offset transit resources, and determining at least two resource logical transfer processing platforms corresponding to the resource processing messages; sending the message retransmission request to the resource logical transfer processing platforms; the message retransmission request is used to instruct the resource logical transfer processing platforms to retransmit the resource processing messages corresponding to the un-offset transit resources; performing resource return processing on the un-offset transit resources based on the retransmitted resource processing messages.
[0104] Among them, the fact that the transferred transit resources of the intermediate account do not match the received returned resources indicates that there are resources that have not been returned to the intermediate account during the resource transfer processing for the resource processing messages, that is, the un-offset transit resources. The message retransmission request is used to request to obtain the resource processing messages corresponding to the un-offset transit resources again. The resource logical transfer processing platform is a platform for performing resource logical transfer processing, and can be specifically implemented based on computer devices, such as can be implemented based on at least one of a server or a terminal.
[0105] Specifically, after traversing each resource processing message for resource transfer processing and obtaining the resource transfer results of each resource processing message, the server can determine whether the intermediate account has achieved resource balance. Specifically, the server can compare the transferred transit resources of the intermediate account with the received returned resources. For example, it can be determined whether the quantity of the transferred transit resources of the intermediate account is equal to the quantity of the received returned resources. If the quantities are not equal, it can be considered that the transferred transit resources of the intermediate account do not match the received returned resources, and the server can determine the un-offset transit resources. In specific implementation, the server can match the transferred transit resources and the received returned resources one by one to determine the un-offset transit resources. There are no returned resources for the un-offset transit resources to be offset by return. The server generates a message retransmission request according to the un-offset transit resources. Specifically, the server can determine the resource account and the resource quantity according to the un-offset transit resources, and generate a message retransmission request according to the resource account and the resource quantity. The server determines the resource logical transfer processing platform that generates the resource processing message, and sends the message retransmission request to the resource logical transfer processing platform to request the resource logical transfer processing platform to retransmit the resource processing message corresponding to the un-offset transit resources. The server receives the resource processing message retransmitted by the requested resource logical transfer processing platform. For the retransmitted resource processing message, the server performs resource transfer processing and performs resource return processing on the un-offset transit resources.
[0106] In this embodiment, when the transferred intermediate resources and the received returned resources in the intermediate account do not match, the server re-obtains the resource processing message corresponding to the un-offset intermediate resources through a message retransmission request for resource transfer processing, so that the missing resource processing message can be timely requested for retransmission to ensure the accuracy of resource transfer processing.
[0107] In an exemplary embodiment, generating a message retransmission request based on the un-offset intermediate resources includes: determining the intermediate resource transfer-in account corresponding to the un-offset intermediate resources; generating a message retransmission request according to the intermediate resource transfer-in account and the resource quantity of the un-offset intermediate resources.
[0108] Among them, the intermediate resource transfer-in account is the resource account for which the intermediate account transfers in the intermediate resources among the un-offset intermediate resources, that is, the intermediate resource transfer-in account is the resource account where the intermediate account lends out the intermediate resources but does not receive the return. For example, if among the un-offset intermediate resources, the intermediate account transfers M quantity of intermediate resources to resource account K, then resource account K can be determined as the intermediate resource transfer-in account, and M as the resource quantity of the un-offset intermediate resources.
[0109] Exemplarily, the terminal can parse the resource account involved in the un-offset intermediate resources, that is, determine the resource account to which the intermediate account transfers in the intermediate resources according to the un-offset intermediate resources, so as to determine the intermediate resource transfer-in account. The server generates a message retransmission request according to the intermediate resource transfer-in account and the resource quantity of the un-offset intermediate resources. Specifically, the server can generate a message retransmission request according to the account identifier of the intermediate resource transfer-in account and the resource quantity of the un-offset intermediate resources, so as to instruct the resource logical transfer processing platform to retransmit the resource processing message corresponding to the un-offset intermediate resources through the message retransmission request.
[0110] In this embodiment, the server generates a message retransmission request according to the intermediate resource transfer-in account corresponding to the un-offset intermediate resources and the resource quantity, which can timely request the retransmission of the missing resource processing message and ensure the accuracy of resource transfer processing.
[0111] This application also provides an application scenario that applies the above resource processing method. Specifically, the application of the resource processing method in this application scenario is as follows:
[0112] In the existing digital resource trading system, an asynchronous message processing mechanism is usually adopted to process trading requests. However, due to reasons such as network latency and system failures, the arrival order of messages may be inconsistent with the sending order, leading to trading blockage problems. Among them, the digital resource trading system refers to a system used to implement trading functions such as buying, selling, exchanging, and transferring digital resources. Asynchronous messages refer to the messages transmitted between different nodes during the digital resource trading process. Different from synchronous messages, the sending and receiving of asynchronous messages are relatively independent and do not block trading. Specifically, in the existing digital resource trading system, after a transaction is normally completed through the normal balance system, an asynchronous message processing mechanism is usually adopted to process the trading requests for digital resource accounting. In the asynchronous case, due to reasons such as concurrency, blockage, and timeout in distributed systems, out-of-order problems may occur when transactions are executed downstream, and out-of-order situations may lead to transaction deadlock blockage. The trading timing problem refers to the problem that transactions cannot be successfully completed due to the time delay of message transmission between different nodes during the digital resource trading process.
[0113] As Figure 9 shown, assume that the initial resource amounts held by both account A and account B are 0. Between account A and account B, transaction 1 is triggered in sequence to recharge 100 resources to account A. At this time, the resource amount held by account A increases by 100 (+100); transaction 2 is for account A to transfer 100 to account B. Then the resource amount held by account A decreases by 100 (-100), while the resource amount held by account B increases by 100 (+100); transaction 3 is for account B to transfer 100 to account A. Then the resource amount held by account A increases by 100 (+100), while the resource amount held by account B decreases by 100 (-100); transaction 4 is to withdraw 100 from account A. Then the resource amount held by account A decreases by 100 (-100). That is, for transactions 1 to 4, the normal trading timing is transaction 1 - transaction 2 - transaction 3 - transaction 4, while the timing of transaction 1 - transaction 4 - transaction 2 - transaction 3 belongs to abnormal timing, which may lead to transaction deadlock blockage, thus affecting the resource processing efficiency. To solve this problem, methods such as message queues or timestamps are usually adopted to ensure the order of messages. However, these methods often involve relatively complex algorithms and data structures, and there may be security and performance problems, resulting in low resource processing efficiency.
[0114] Based on this, the resource processing method provided in this embodiment, for the trading blockage problem caused by timing problems in the digital resource trading system implemented by asynchronous messages, realizes the decoupling and smooth execution of transactions by introducing a virtual lending mechanism, eliminates blockage through the method of business lending, does not rely on ensuring trading timing, simplifies the performance and technical complexity, and improves the resource processing efficiency.
[0115] The resource processing method provided in this embodiment realizes the decoupling and disorderly execution of transactions by introducing a virtual lending mechanism. Virtual lending refers to a method of realizing transaction decoupling by lending virtual digital resources during the digital resource transaction process. In addition, other digital assets can be used as collateral for lending for virtual lending processing, and smart contracts can also be introduced to automate the lending and repayment operations. Specifically, in the resource transfer transaction processing, generally, conditions such as insufficient balance are used to detect whether a deadlock block occurs in the transaction. For a blocked transaction, since the original transaction has completed a normal transaction in the balance transaction system, it must be a legal transaction, and it can be specifically judged through transaction backtracking; for a legal block problem caused by insufficient digital resource balance due to disorderly reasons in the digital resource system, the system can lend to the payer, and after the transaction deadlock loop is unlocked, the lent amount is returned to complete the unlocking of the relevant transaction loop.
[0116] Specifically, as Figure 10 shown, among accounts A, B, C, D, E, F, and G, a total of six resource transfer transaction processes of transactions 1-6 are triggered in sequence. Among them, transaction 1 is a resource transfer from account A to account B, transaction 2 is a resource transfer from account B to account C, transaction 3 is a resource transfer from account C to account D, transaction 4 is a resource transfer from account D to accounts E and F respectively, transaction 5 is a resource transfer from account F to account G, and transaction 6 is a resource transfer from account G to account A. Among them, transaction 1-transaction 2-transaction 3-transaction 4-transaction 5-transaction 6 is the normal transaction order. If it is asynchronously transferred to the digital resource accounting system, the time sequence may become transaction 4-transaction 2-transaction 3-transaction 6-transaction 5-transaction 1, and the transaction may fail due to insufficient digital resources, that is, insufficient balance. Based on this, for the request with a failed transaction, the virtual lending process is completed from system role X.
[0117] Specifically, for Transaction 4, System X lends the total amount of Transaction 4 to Account D to continue with Transaction 4 and facilitate the transfer of Account D to Account E and Account F; for Transaction 2, System X lends the total amount of Transaction 2 to Account B to continue with Transaction 2 and facilitate the transfer of Account B to Account C; for Transaction 3, after Account C receives the funds, Transaction 3 can be completed, Account C transfers to Account D, and it triggers Account D to return the amount; for Transaction 6, System X lends the total amount of Transaction 5 to G to continue with Transaction 6 and facilitate the transfer of Account G to Account A; for Transaction 5, since Account G receives the funds after Transaction 4, Transaction 5 can be completed, Account F transfers to G, and it triggers G to return the amount; for Transaction 1, after Account A receives the funds due to Transaction 6, Transaction 1 can be completed, Account A transfers to Account B, and it triggers Account B to return the amount. Among them, Account D will return the amount borrowed for Transaction 4, Account G will return the amount borrowed for Transaction 6, and Account B will return the amount borrowed for Transaction 2. Thus, by checking the balance of borrowing and returning funds in the overall system, the normal processing of transactions can be ensured.
[0118] The resource processing method provided in this embodiment, which is a digital resource transaction processing implemented based on asynchronous messages, can avoid transaction timing issues and enable transactions to proceed smoothly without guaranteeing order. At the same time, through virtual borrowing and lending, transaction decoupling is achieved, improving transaction efficiency. In addition, by means of business substitution to eliminate blocking, without relying on ensuring transaction timing, the performance and technical complexity are simplified, thereby ensuring the security and stability of digital resource transactions.
[0119] It should be understood that although the steps in the flowcharts involved in the above-described embodiments are shown in sequence according to the arrows, these steps do not necessarily have to be executed in the order indicated by the arrows. Unless there is a clear indication in this article, the execution of these steps has no strict order limit, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-described embodiments may include multiple steps or multiple stages. These steps or stages do not necessarily have to be executed at the same time, but can be executed at different times. The execution order of these steps or stages does not necessarily have to be sequential, but can be executed alternately or in turn with at least a part of other steps or steps or stages in other steps.
[0120] Based on the same inventive concept, the embodiments of the present application also provide a resource processing device for implementing the above-mentioned resource processing method. The solution provided by this device to solve problems is similar to the solution described in the above method. Therefore, the specific limitations in one or more of the following resource processing device embodiments can refer to the limitations on the resource processing method in the above text, and will not be repeated here.
[0121] In an exemplary embodiment, as Figure 11As shown in the figure, a resource processing device 1100 is provided, including: a resource processing message acquisition module 1102, a resource processing message parsing module 1104, a transfer resource processing module 1106, a resource return processing module 1108, and a resource transfer result recording module 1110, where:
[0122] The resource processing message acquisition module 1102 is used to acquire at least two resource processing messages generated when the resource logical transfer processing is completed;
[0123] The resource processing message parsing module 1104 is used to determine the resource transfer-out account, the resource transfer-in account, and the resource transfer amount corresponding to the resource processing message in at least two resource processing messages;
[0124] The transfer resource processing module 1106 is used to, when the resource transfer-out account does not support resource transfer out according to the resource transfer amount, transfer transfer resources to the resource transfer-out account according to the resource transfer amount through an intermediate account, and transfer resources from the resource transfer-out account to the resource transfer-in account according to the resource transfer amount, so as to obtain the resource transfer result of the targeted resource processing message;
[0125] The resource return processing module 1108 is used to, when the resource transfer-out account meets the resource return determination condition, transfer return resources matching the transfer resources from the resource transfer-out account to the intermediate account;
[0126] The resource transfer result recording module 1110 is used to, when the resource transfer processing for at least two resource processing messages is completed and the transfer resources transferred out by the intermediate account match the received return resources, determine that the resource transfer processing for at least two resource processing messages is completed.
[0127] In one embodiment, the transfer resource processing module 1106 is further used to, when the resource holding amount of the resource transfer-out account is less than the resource transfer amount, determine the transfer resource quantity according to the resource transfer amount; determine the transfer resources matching the transfer resource quantity from the intermediate account; transfer the transfer resources into the resource transfer-out account through the intermediate account.
[0128] In one embodiment, the transfer resource processing module 1106 is further used to, when the resource holding amount of the resource transfer-out account is less than the resource transfer amount, determine the resource quantity difference between the resource transfer amount and the resource holding amount, and obtain the transfer resource quantity according to the resource quantity difference.
[0129] In one embodiment, the transfer resource processing module 1106 is further used to, when the resource holding amount of the resource transfer-out account is less than the resource transfer amount, use the resource transfer amount as the transfer resource quantity.
[0130] In one embodiment, the resource return processing module 1108 is further configured to query the resource holdings of the resource transfer-out account when obtaining the resource transfer result of the resource processing message; when the resource holdings are not less than the quantity of the transfer medium resources of the transfer medium resources, determine the return resources matching the transfer medium resources from the resource transfer-out account according to the quantity of the transfer medium resources; and transfer the return resources to the intermediate account through the resource transfer-out account.
[0131] In one embodiment, the resource transfer result recording module 1110 is further configured to determine the transferred-out quantity of the transfer medium resources transferred out by the intermediate account and the received quantity of the return resources received by the intermediate account when completing the resource transfer processing for at least two resource processing messages; when the transferred-out quantity matches the received quantity, record the resource transfer results of at least two resource processing messages into the blockchain network respectively.
[0132] In one embodiment, the resource transfer result recording module 1110 is further configured to determine the resource transfer time sequence of at least two resource processing messages respectively when the numerical values of the transferred-out quantity and the received quantity are the same; call the smart contract deployed in the blockchain network for recording the resource transfer result, and record the resource transfer results of at least two resource processing messages into the blockchain network in sequence according to the resource transfer time sequence.
[0133] In one embodiment, the resource processing message parsing module 1104 is further configured to determine the smart contract deployed in the blockchain network for resource transfer processing; when the execution trigger condition of the smart contract is satisfied, determine the resource processing message for resource transfer from at least two resource processing messages based on the smart contract according to the message receiving order; and determine the corresponding resource transfer-out account, resource transfer-in account and resource transfer quantity from the resource processing message.
[0134] In one embodiment, the resource processing message parsing module 1104 is further configured to determine the resource processing message for resource transfer from at least two resource processing messages based on the smart contract according to the message receiving order when the number of at least two resource processing messages reaches the message number threshold or reaches the message processing cycle; extract the resource transfer information from the resource processing message; the resource transfer information includes the account identifier and the resource transfer quantity; and determine the resource transfer-out account and the resource transfer-in account according to the account identifier.
[0135] In one embodiment, it further includes a transfer-in account return module, configured to determine the resource holdings of the resource transfer-in account when transferring resources from the resource transfer-out account to the resource transfer-in account according to the resource transfer quantity and the resource transfer-in account does not return resources to the intermediate account; when the resource holdings are not less than the quantity of the resources to be returned of the resource transfer-in account, return resources from the resource transfer-in account to the intermediate account according to the quantity of the resources to be returned.
[0136] In one embodiment, it further includes a cancellation processing module, which is used to determine the uncancelled transfer resources when the transfer resources transferred from the intermediate account do not match the received return resources; generate a message retransmission request based on the transferred transfer resources and the received return resources, and determine at least two resource logical transfer processing platforms corresponding to the resource processing messages; send the message retransmission request to the resource logical transfer processing platform; the message retransmission request is used to instruct the resource logical transfer processing platform to retransmit the resource processing messages corresponding to the uncancelled transfer resources; perform resource return processing on the uncancelled transfer resources based on the retransmitted resource processing messages.
[0137] In one embodiment, the cancellation processing module is further used to determine the transfer resource transfer-in account corresponding to the uncancelled transfer resources; generate a message retransmission request according to the transfer resource transfer-in account and the resource amount of the uncancelled transfer resources.
[0138] Each module in the above resource processing device can be implemented in whole or in part by software, hardware and their combination. Each of the above modules can be embedded in the processor in the computer device in hardware form or independent of the processor, or stored in the memory in the computer device in software form, so that the processor can call and execute the operations corresponding to each of the above modules.
[0139] In an exemplary embodiment, a computer device is provided. The computer device can be a server, and its internal structure diagram can be as Figure 12 shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, abbreviated as I / O), and a communication interface. Among them, the processor, the memory, and the input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program, and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store resource transfer result data. The input / output interface of the computer device is used for the processor to exchange information with external devices. The communication interface of the computer device is used to communicate with an external terminal through a network connection. The computer program, when executed by the processor, implements a resource processing method.
[0140] Those skilled in the art can understand, Figure 12The structure shown is only a block diagram of some of the structures related to the solution of this application, and does not constitute a limitation on the computer device to which the solution of this application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine some components, or have a different component layout.
[0141] In one embodiment, a computer device is further provided, including a memory and a processor. A computer program is stored in the memory, and when the processor executes the computer program, the steps in the above method embodiments are implemented.
[0142] In one embodiment, a computer-readable storage medium is provided, storing a computer program, and when the computer program is executed by a processor, the steps in the above method embodiments are implemented.
[0143] In one embodiment, a computer program product is provided, including a computer program, and when the computer program is executed by a processor, the steps in the above method embodiments are implemented.
[0144] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use, and processing of relevant data need to comply with relevant regulations.
[0145] 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 completed by instructing relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above methods. Among them, any reference to a memory, database, or other medium used in the embodiments provided in the present application can include at least one of non-volatile and volatile memories. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc. The databases involved in the embodiments provided in the present application can include at least one of relational databases and non-relational databases. Non-relational databases can include distributed databases based on blockchain, etc., without limitation. The processors involved in the embodiments provided in the present application can be general-purpose processors, central processors, graphics processors, digital signal processors, programmable logic devices, data processing logics based on quantum computing, etc., without limitation.
[0146] The technical features of the above embodiments can be combined arbitrarily. For the sake of brevity of description, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, it should be considered to be within the scope described in this specification.
[0147] The above-described embodiments only represent several implementation manners of the present application. The description is relatively specific and detailed, but it should not be construed as a limitation on the patent scope of the present application. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present application, several modifications and improvements can still be made, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the appended claims.
Claims
1. A resource processing method, characterized in that The method includes: Obtaining at least two resource processing messages generated when the resource logical transfer process is completed; Determining the resource transfer-out account, resource transfer-in account, and resource transfer amount corresponding to the resource processing message among the at least two resource processing messages; When the resource transfer-out account does not support resource transfer out according to the resource transfer amount, transferring transfer medium resources to the resource transfer-out account according to the resource transfer amount through an intermediate account, and performing resource transfer from the resource transfer-out account to the resource transfer-in account according to the resource transfer amount to obtain the resource transfer result of the targeted resource processing message; When the resource transfer-out account meets the resource return determination condition, transferring return resources matching the transfer medium resources from the resource transfer-out account to the intermediate account; When the resource transfer process for the at least two resource processing messages is completed and the transfer medium resources transferred out by the intermediate account match the return resources received, it is determined that the resource transfer process for the at least two resource processing messages is completed.
2. The method according to claim 1, characterized in that, The step of, when the resource transfer-out account does not support resource transfer out according to the resource transfer amount, transferring transfer medium resources to the resource transfer-out account according to the resource transfer amount through an intermediate account, includes: When the resource holding amount of the resource transfer-out account is less than the resource transfer amount, determining the quantity of transfer medium resources according to the resource transfer amount; Determining transfer medium resources matching the quantity of transfer medium resources from the intermediate account; Transferring the transfer medium resources into the resource transfer-out account through the intermediate account.
3. The method according to claim 2, wherein The step of, when the resource holding amount of the resource transfer-out account is less than the resource transfer amount, determining the quantity of transfer medium resources according to the resource transfer amount, includes at least one of the following: When the resource holding amount of the resource transfer-out account is less than the resource transfer amount, determining the difference in the quantity of resources between the resource transfer amount and the resource holding amount, and obtaining the quantity of transfer medium resources according to the difference in the quantity of resources; When the resource holding amount of the resource transfer-out account is less than the resource transfer amount, taking the resource transfer amount as the quantity of transfer medium resources.
4. The method according to claim 1, wherein The step of, when the resource transfer-out account meets the resource return determination condition, transferring return resources matching the transfer medium resources from the resource transfer-out account to the intermediate account, includes: When the resource transfer result of the targeted resource processing message is obtained, querying the resource holding amount of the resource transfer-out account; When the resource holding amount is not less than the quantity of transfer medium resources of the transfer medium resources, determining return resources matching the transfer medium resources from the resource transfer-out account according to the quantity of transfer medium resources; Transferring the return resources into the intermediate account through the resource transfer-out account.
5. The method according to claim 1, characterized in that, The step of, when the resource transfer process for the at least two resource processing messages is completed and the transfer medium resources transferred out by the intermediate account match the return resources received, determining that the resource transfer process for the at least two resource processing messages is completed, includes: When the resource transfer process for the at least two resource processing messages is completed, determining the transfer-out resource amount of the transfer medium resources transferred out by the intermediate account and the received resource amount of the return resources received; When the transferred resource quantity matches the received resource quantity, record the resource transfer result of each of the at least two resource processing messages into the blockchain network.
6. The method according to claim 5, wherein The step of when the transferred resource quantity matches the received resource quantity and record the resource transfer result of each of the at least two resource processing messages into the blockchain network includes: When the numerical values of the transferred resource quantity and the received resource quantity are the same, determine the resource transfer time sequence of each of the at least two resource processing messages; Invoke the smart contract deployed in the blockchain network for recording resource transfer results, and record the resource transfer results of each of the at least two resource processing messages into the blockchain network in sequence according to the resource transfer time sequence.
7. The method according to claim 1, wherein The step of determining the resource transfer-out account, resource transfer-in account, and resource transfer quantity corresponding to the resource processing message among the at least two resource processing messages includes: Determine the smart contract deployed in the blockchain network for resource transfer processing; When the execution trigger condition of the smart contract is satisfied, based on the smart contract, determine the resource processing message for resource transfer from the at least two resource processing messages in the order of message reception; Determine the corresponding resource transfer-out account, resource transfer-in account, and resource transfer quantity from the resource processing message for which the determination is made.
8. The method according to claim 7, wherein The step of when the execution trigger condition of the smart contract is satisfied, based on the smart contract, determine the resource processing message for resource transfer from the at least two resource processing messages in the order of message reception includes: When the number of messages in the at least two resource processing messages reaches the message number threshold or reaches the message processing period, based on the smart contract, determine the resource processing message for resource transfer from the at least two resource processing messages in the order of message reception; The step of determining the corresponding resource transfer-out account, resource transfer-in account, and resource transfer quantity from the resource processing message for which the determination is made includes: Extract resource transfer information from the resource processing message for which the determination is made; the resource transfer information includes an account identifier and a resource transfer quantity; Determine the resource transfer-out account and resource transfer-in account according to the account identifier.
9. The method according to claim 1, characterized in that, The method further includes: When resource transfer is performed from the resource transfer-out account to the resource transfer-in account according to the resource transfer quantity and the resource transfer-in account does not return resources to the intermediate account, determine the resource holding quantity of the resource transfer-in account; When the resource holding quantity is not less than the resource return quantity to be returned by the resource transfer-in account, the resource transfer-in account returns resources to the intermediate account according to the resource return quantity to be returned.
10. The method according to any one of claims 1 to 9, characterized in that, The method further includes: When the transferred intermediate resources and the received returned resources of the intermediate account do not match, determine the un-offset intermediate resources according to the transferred intermediate resources and the received returned resources; Generate a message retransmission request based on the un-offset intermediate resources, and determine the resource logical transfer processing platform corresponding to the at least two resource processing messages. Send the message retransmission request to the resource logical transfer processing platform; the message retransmission request is used to instruct the resource logical transfer processing platform to retransmit the resource processing message corresponding to the un-cancelled transit resource. Perform resource return processing on the un-cancelled transit resource based on the retransmitted resource processing message.
11. The method according to claim 10, wherein The generating of the message retransmission request based on the un-cancelled transit resource includes: Determine the transit resource transfer-in account corresponding to the un-cancelled transit resource. Generate a message retransmission request according to the transit resource transfer-in account and the resource amount of the un-cancelled transit resource.
12. A resource processing device, characterized in that, The device includes: A resource processing message acquisition module, configured to acquire at least two resource processing messages generated when resource logical transfer processing is completed. A resource processing message parsing module, configured to determine the resource transfer-out account, the resource transfer-in account, and the resource transfer amount corresponding to the resource processing message in the at least two resource processing messages. A transit resource processing module, configured to, when the resource transfer-out account does not support resource transfer out according to the resource transfer amount, transfer transit resources to the resource transfer-out account according to the resource transfer amount through an intermediate account, and transfer resources from the resource transfer-out account to the resource transfer-in account according to the resource transfer amount, to obtain the resource transfer result of the resource processing message targeted. A resource return processing module, configured to, when the resource transfer-out account meets the resource return determination condition, transfer return resources matching the transit resources from the resource transfer-out account to the intermediate account. A resource transfer result recording module, configured to determine that the resource transfer processing for the at least two resource processing messages is completed when the resource transfer processing for the at least two resource processing messages is completed and the transit resources transferred out by the intermediate account match the return resources received.
13. A computer device, comprising a memory and a processor, the memory storing a computer program, characterized in that, When the processor executes the computer program, the steps of the method according to any one of claims 1 to 11 are implemented.
14. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 11 are implemented.
15. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 11 are implemented.