Business processing method and device, equipment and medium
By generating a list of target services and receiving feedback from the front-end server nodes, the target server nodes are determined, thus solving the problem of handling business dependencies in a distributed computing environment and ensuring the efficient and stable operation of the business system.
Patent Information
- Application Number
- CN202511264100.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-05
- Publication Date
- 2025-11-11
AI Technical Summary
In distributed computing and cloud computing environments, how can we ensure that each server node accurately understands the dependencies between business operations and allocates computing resources reasonably to guarantee the efficient and stable operation of business systems?
By generating a list of target services, receiving feedback information from the front-end server nodes to update the service status, determining the target server nodes based on service attribute information and dependencies, and sending service processing requests to the target server nodes for processing, the target services are processed using the target server nodes.
This ensured the timely and orderly execution of target business tasks, avoided resource competition and timeout risks, and improved the efficiency and reliability of business processing.
Smart Images

Figure CN120935265A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the fields of big data and financial technology, and more specifically to a business processing method, apparatus, equipment, medium, and program product. Background Technology
[0002] With the rapid development of information technology, various business systems are becoming increasingly large in scale and their complexity is significantly increasing. In many practical application scenarios, multiple business processes are interconnected and interdependent. Simultaneously, the widespread application of distributed computing and cloud computing technologies means that business processing is often completed collaboratively by multiple server nodes. These different server nodes are distributed in different physical locations and communicate and collaborate through networks. In this context, ensuring that each server node accurately understands the dependencies between business processes and rationally allocates computing resources according to business needs has become a key issue in guaranteeing the efficient and stable operation of business systems. Summary of the Invention
[0003] In view of the above problems, this disclosure provides a business processing method, apparatus, equipment, medium and program product.
[0004] According to a first aspect of this disclosure, a business processing method is provided, comprising: in response to receiving a processing request sent by a client for executing a business in a business batch diagram, generating a target business list based on business attribute information of each business in the business batch diagram, the business batch diagram including nodes representing businesses and edges representing dependencies between businesses; in response to receiving feedback information sent by a front-end server node indicating that a front-end business has been processed, updating the status information of the front-end business and the target business in the target business list, wherein the target business is determined based on the business batch diagram and the front-end business; in response to receiving multiple allocation requests for the target business sent by multiple server nodes, determining a target server node from the multiple server nodes based on the multiple allocation requests, the allocation request being triggered by the server node when the status information of each business in the target business list is determined to be updated; and sending a business processing request for the target business to the target server node to process the target business using the target server node.
[0005] A second aspect of this disclosure provides a business processing apparatus, comprising: a generation module, configured to, in response to receiving a processing request sent by a client for executing businesses in a business batch diagram, generate a target business list based on business attribute information of each business in the business batch diagram, wherein the business batch diagram includes nodes representing businesses and edges representing dependencies between businesses;
[0006] The update module is used to update the status information of the front-end services and the target services in the target service list in response to receiving feedback information from the front-end server node indicating that the front-end services have been processed. The target services are determined based on the service batch diagram and the front-end services. The determination module is used to determine the target server node from the multiple server nodes in response to receiving multiple allocation requests for the target services from multiple server nodes. The allocation request is triggered by the server node when the status information of each service in the target service list is updated. The sending module is used to send the service processing request for the target service to the target server node so that the target server node can process the target service.
[0007] A third aspect of this disclosure provides an electronic device comprising: one or more processors; and a memory for storing one or more computer programs, wherein the one or more processors execute the one or more computer programs to implement the steps of the method described above.
[0008] A fourth aspect of this disclosure also provides a computer-readable storage medium having a computer program or instructions stored thereon, which, when executed by a processor, implement the steps of the above-described method.
[0009] The fifth aspect of this disclosure also provides a computer program product, including a computer program or instructions that, when executed by a processor, implement the steps of the above-described method.
[0010] According to the embodiments of this disclosure, when processing target services in a batch of services, by generating a target service list for the target services, and by receiving feedback information from the front-end server nodes and updating the status information of the front-end services and target services in the target service list, the target services can be quickly discovered by multiple server nodes if they are executable, thereby ensuring that the target services can be executed in a timely and orderly manner. Attached Figure Description
[0011] The foregoing contents, as well as other objects, features, and advantages of this disclosure, will become clearer from the following description of embodiments with reference to the accompanying drawings, in which:
[0012] Figure 1 This diagram illustrates an application scenario of a business processing method and a business processing device according to embodiments of the present disclosure.
[0013] Figure 2 A flowchart illustrating a service processing method according to an embodiment of the present disclosure is shown schematically.
[0014] Figure 3A flowchart illustrating a method for determining a target server node according to an embodiment of the present disclosure is shown schematically.
[0015] Figure 4 A schematic block diagram of a service processing apparatus according to an embodiment of the present disclosure is shown; and
[0016] Figure 5 A block diagram of an electronic device suitable for implementing a business processing method according to an embodiment of the present disclosure is shown schematically. Detailed Implementation
[0017] The embodiments of the present disclosure will now be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the disclosure. In the following detailed description, numerous specific details are set forth to provide a thorough understanding of the embodiments of the present disclosure for ease of explanation. However, it will be apparent that one or more embodiments may be practiced without these specific details. Furthermore, descriptions of well-known structures and techniques are omitted in the following description to avoid unnecessarily obscuring the concepts of the present disclosure.
[0018] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit this disclosure. The terms “comprising,” “including,” etc., as used herein indicate the presence of features, steps, operations, and / or components, but do not exclude the presence or addition of one or more other features, steps, operations, or components.
[0019] All terms used herein (including technical and scientific terms) have the meanings commonly understood by those skilled in the art, unless otherwise defined. It should be noted that the terms used herein are to be interpreted in a manner consistent with the context of this specification, and not in an idealized or overly rigid way.
[0020] When using expressions such as "at least one of A, B and C", they should generally be interpreted in accordance with the meaning that is commonly understood by those skilled in the art (e.g., "a system having at least one of A, B and C" should include, but is not limited to, a system having A alone, a system having B alone, a system having C alone, a system having A and B, a system having A and C, a system having B and C, and / or a system having A, B and C, etc.).
[0021] Figure 1 The illustration shows an application scenario diagram of the service processing method and service processing device according to embodiments of the present disclosure.
[0022] like Figure 1As shown, application scenario 100 according to this embodiment may include a first terminal device 101, a second terminal device 102, a third terminal device 103, a network 104, and a server 105. The network 104 serves as a medium for providing a communication link between the first terminal device 101, the second terminal device 102, the third terminal device 103, and the server 105. The network 104 may include various connection types, such as wired or wireless communication links, or fiber optic cables, etc.
[0023] Users can use the first terminal device 101, the second terminal device 102, and the third terminal device 103 to interact with the server 105 via the network 104 to receive or send messages, etc. Various communication client applications can be installed on the first terminal device 101, the second terminal device 102, and the third terminal device 103, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, social media platform software, etc. (for example only).
[0024] The first terminal device 101, the second terminal device 102, and the third terminal device 103 can be various electronic devices with displays and support web browsing, including but not limited to smartphones, tablets, laptops, and desktop computers.
[0025] Server 105 can be a server that provides various services, such as a backend management server that supports websites browsed by users using the first terminal device 101, the second terminal device 102, and the third terminal device 103 (this is just an example). The backend management server can analyze and process data such as received user requests, and feed back the processing results (such as web pages, information, or data obtained or generated according to user requests) to the terminal devices.
[0026] It should be noted that the business processing methods provided in the embodiments of this disclosure can generally be executed by server 105. Correspondingly, the business processing apparatus provided in the embodiments of this disclosure can generally be located in server 105. The business processing methods provided in the embodiments of this disclosure can also be executed by a server or server cluster that is different from server 105 and capable of communicating with the first terminal device 101, the second terminal device 102, the third terminal device 103, and / or server 105. Correspondingly, the business processing apparatus provided in the embodiments of this disclosure can also be located in a server or server cluster that is different from server 105 and capable of communicating with the first terminal device 101, the second terminal device 102, the third terminal device 103, and / or server 105.
[0027] It should be understood that Figure 1 The number of terminal devices, networks, and servers shown is merely illustrative. Depending on implementation needs, any number of terminal devices, networks, and servers can be included.
[0028] Figure 2 A flowchart illustrating a service processing method according to an embodiment of the present disclosure is shown schematically.
[0029] like Figure 2 As shown, the service processing method of this embodiment includes operations S210 to S240.
[0030] In operation S210, in response to receiving a processing request from the client for executing services in the service batch diagram, a target service list is generated based on the service attribute information of each service in the service batch diagram. The service batch diagram includes nodes representing services and edges representing the dependencies between services.
[0031] In operation S220, in response to receiving feedback information from the front-end server node indicating that the front-end service has been processed, the status information of the front-end service and the target service in the target service list is updated. The target service is determined based on the service batch diagram and the front-end service.
[0032] In operation S230, in response to receiving multiple allocation requests for the target service sent by multiple server nodes, the target server node is determined from the multiple server nodes based on the multiple allocation requests. The allocation request is triggered by the server node when the status information of each service in the target service list is updated.
[0033] In operation S240, a service processing request for the target service is sent to the target server node so that the target server node can process the target service.
[0034] A business batch diagram is a graphical structure used to describe multiple business processes and their interrelationships. It consists of nodes representing business processes and edges representing the dependencies between them. Through the business batch diagram, information such as the sequence and dependencies between various business processes can be clearly defined.
[0035] Business attribute information can include the business identifier, business type, current status, dependencies, and other information. Based on the business attribute information for each business, a business instance can be generated. Inserting multiple business instances into the initial business list yields a target business list containing these instances. This target business list then identifies all target businesses within the business batch diagram.
[0036] For example, when a business in a business batch diagram changes or a new business is added, the business instance can be changed or added based on the business attribute information of the changed or added business, and then updated in the target business list.
[0037] For example, based on the dependencies between services in the business batch diagram, the execution order between different services can be determined. In the business batch diagram, the service that needs to be processed now can be called the target service, and the service that precedes the target service in the execution order can be called the preceding service. The target service can only be executed after the preceding service has been completed.
[0038] The status of a target service can include unexecutable, pending, executing, completed, and failed states. Based on the current status of the target service, it can be determined whether the target service can be executed.
[0039] For example, the server node used to process the front-end business is called the front-end server node. When the front-end business is not completed, the front-end business is in the execution state and the target business is in the non-execution state. After the front-end server node completes the processing of the front-end business, it can update the front-end business in the target business list to the execution completed state and update the target business to the pending execution state through feedback information.
[0040] For example, the target service list is shared and visible to multiple server nodes. Multiple servers can scan or poll the target service list at predetermined time intervals. When a server node finds that the service status of a preceding service has been updated from "in execution" to "execution completed", and at the same time the service status information of the target service has been updated from "unexecutable" to "pending execution", it indicates that the execution conditions of the target service have been prepared and it has entered the executable state. At this time, the server node can send an allocation request to obtain the target service.
[0041] For example, the target server node can be determined from multiple server nodes according to the order in which the allocation requests are sent by each of the multiple server nodes. This disclosure is not limited thereto; the target server node can also be determined based on the load status or resource configuration information of each of the multiple server nodes.
[0042] For example, after determining the target server node, the processing request for the target service can be sent to the target server node. When the target server node processes the target, the service status information of the target service can be updated to "in execution" in the target service list to indicate that the target service is being processed.
[0043] According to the embodiments of this disclosure, when processing target services in a batch of services, by generating a target service list for the target services, and by receiving feedback information from the front-end server nodes and updating the status information of the front-end services and target services in the target service list, the target services can be quickly discovered by multiple server nodes if they are executable, thereby ensuring that the target services can be executed in a timely and orderly manner.
[0044] According to embodiments of this disclosure, in response to receiving feedback information from a front-end server node indicating that the front-end service has been processed, updating the status information of the front-end service and the target service in the target service list may include: in response to receiving feedback information from a front-end server node indicating that the front-end service has been processed, generating prompt information for the target service, the prompt information including resource requirement information and traffic volume information for the target service; and updating the status information of the target service in the target service list based on the prompt information.
[0045] The notification message represents a dynamic notification sent by the front-end server node to the target service after completing the front-end service. This notification message can trigger updates to the service status information of both the front-end and target services. For example, based on the status field in the notification message, the front-end service can be marked from an "in execution" state to an "execution completed" state, and the target service can be marked from an "unexecutable" state to an "executable" state.
[0046] The prompt information may also include resource requirement information for the target service. This resource requirement information is used to synchronously execute the resources required for the target service. The resource requirement information may include the specifications of hardware and software resources required for the execution of the target service, such as computing resources, memory resources, storage resources, network resources, software dependencies, etc.
[0047] For example, workload information represents an indicator of the scale of data or the number of tasks that a target business currently needs to process. Workload information may include the amount of data in the business, the number of tasks in the business, the computational complexity of the business, etc. Preset workload conditions may be pre-defined workload thresholds used to determine whether the business needs to be split.
[0048] Based on the prompt information, updating the status information of the target business in the target business list may include merging resource requirement information into the corresponding field in the target business list.
[0049] For example, by updating the resource demand information in the target business list, the server node can scan the resource demand information, compare it with its own available resources, and decide whether to issue an allocation request.
[0050] According to embodiments of this disclosure, by generating a prompt message after completing the pre-processing, the prompt message carries the resource requirement information required by the target service. After updating the target service list using the resource requirement information, the target server node can locate the target server node that meets the conditions based on the resource requirement information when actively scanning the service list.
[0051] According to embodiments of this disclosure, updating the status information of a target service in the target service list may include: splitting the target service into multiple target sub-services after determining that the service volume information meets a preset service volume condition; and updating the status information of the target service in the target service list based on the multiple target sub-services and their respective prompt information.
[0052] For example, the target business can be split into multiple target sub-businesses based on the size of the data. This disclosure is not limited to this; it can also be split according to the time frame or priority of the business to obtain multiple target sub-businesses. Furthermore, each sub-business can be assigned its own sub-business ID and associated with the target business.
[0053] After breaking down the target business into multiple target sub-businesses, the resource requirements of each sub-business can be estimated based on the granularity of the breakdown, and the business attribute information of each sub-business can be supplemented.
[0054] Optionally, if the target business's business volume information meets the preset business volume, the number of server nodes can be dynamically increased or decreased to meet the business volume processing requirements.
[0055] For example, updating the status information of a target service in the target service list could involve updating the target service to a "split" status and adding each target sub-service to the target service list. When all target sub-services are completed, the status of the target service is then updated to "execution successful."
[0056] According to embodiments of this disclosure, by splitting the target service when the service volume information meets a preset service volume condition, the risk of resource contention or timeouts caused by the excessive size of a single service can be avoided. Furthermore, the split target sub-services can be allocated to different server nodes for parallel execution, shortening the overall processing time of the service.
[0057] According to embodiments of this disclosure, in response to receiving multiple allocation requests for a target service sent by multiple server nodes, determining a target server node from the multiple server nodes based on the allocation requests may include: in response to receiving multiple allocation requests for a target sub-service sent by multiple server nodes, determining the matching degree between the target sub-service and the server nodes based on the resource requirement information of the target sub-service and the resource configuration information of each server node in the allocation requests; determining the target server node from the multiple server nodes based on the matching degree between the target sub-service and the server nodes, wherein the multiple target sub-services are allocated to at least two target server nodes.
[0058] For example, the matching degree between the target service and the server node can be determined based on the degree of matching between the remaining resources of the server node and the resource requirements of the target sub-service. Optionally, multiple types of resources of the server node, such as computing resources, memory resources, storage resources, network resources, and software dependencies, can be weighted and summed to obtain scores for multiple server nodes, and the server node with the highest score can be prioritized as the target server node.
[0059] For example, if the resource requirement information also includes special resource requirements, server nodes that do not meet those requirements will be excluded. For instance, if the target sub-business requires GPU resources, server nodes lacking GPU resources can be excluded first. Furthermore, server nodes with lower current loads can be selected as the target server nodes based on their current load.
[0060] According to embodiments of this disclosure, the matching degree between the target sub-service and the server node is determined by the resource requirement information of the target sub-service and the resource configuration information of the server node, thereby determining the target server node. This can accurately match the target server node and avoid assigning the target sub-service to a server node with insufficient resources.
[0061] Figure 3 A flowchart illustrating a method for determining a target server node according to an embodiment of the present disclosure is shown schematically.
[0062] like Figure 3 As shown, in response to receiving feedback information from the front-end server node 310 indicating that the front-end service has been processed, a prompt message 320 for the target service is generated. Based on the prompt message 320, the status information of the front-end service 331 and the target service 332 in the target service list 330 is updated.
[0063] The prompt information 320 includes the traffic volume information for the target service. If the traffic volume information meets the preset traffic volume, the target service 332 is split into multiple target sub-services. Based on the multiple target sub-services and their respective status information, the status information of the target service is updated in the service list.
[0064] The prompt information 320 also includes resource requirement information 321 for the target service 332. Based on the resource requirement information 321, the matching degree between the target sub-service and each of the multiple server nodes 340 can be determined, along with the resource requirement information of the target sub-service and the resource configuration information of each of the multiple self-server nodes 340. The multiple self-server nodes 340 include a first server node 341, a first server node 342, and an i-th server node 343. Based on the matching degree between the target service 332 and the server nodes, a target server node 350 is determined from the multiple server nodes 340. Therefore, a target service with a large workload can be split into multiple target sub-services, and these sub-services can be distributed to multiple target server nodes for parallel processing, thereby improving the processing efficiency of the service.
[0065] According to embodiments of this disclosure, for any target server node, if it is determined that the number of target services currently allocated to the target server node meets the preset number of the target server node, the sending of service processing requests for the target services to the target server node is stopped.
[0066] For example, a maximum service capacity threshold can be set for each server node based on node hardware performance or historical operating data. For instance, server node A can handle a maximum of 100 target services simultaneously. The number of target services currently allocated to each target server node can be monitored.
[0067] When the current number of services processed by a server node is detected to be greater than or equal to the maximum service capacity threshold, new service processing requests are stopped being sent to that node. When a node completes partial service processing, causing the current number of services to fall below the maximum service capacity threshold, allocation requests to that server node can resume.
[0068] According to embodiments of this disclosure, by stopping the sending of service processing requests for the target services to the target server nodes when the number of target services meets the preset number of target server nodes, it can be ensured that the load of any server node is always within a safe range, avoiding systemic risks caused by overload.
[0069] According to embodiments of this disclosure, after sending a service processing request for a target service to a target server node, the method may further include: in response to the target service being assigned to the target server node, adding a lock identifier to the assigned target service in the target service list, wherein the lock identifier is used to prevent the assigned target service from being assigned again.
[0070] The lock identifier can be used as a marker of the target service allocation status. If a target service in the target service list already has a lock identifier, it means that the target service has been allocated, and the allocation of the target service to other server nodes is stopped. If the target service does not have a lock identifier, it means that the target service can be allocated, and the allocation of the target service is performed.
[0071] According to the embodiments of this disclosure, by adding a lock identifier to the allocated service in real time when the target service is allocated to the target server node, it can be ensured that the same service is processed by only a single server node, avoiding the problem of duplicate allocation of services caused by multiple server nodes reading the target service list at the same time or scheduling delays.
[0072] According to embodiments of this disclosure, processing a target service using a server may include: determining the category information and processing method information of the target service based on the attribute information of the target service; determining a target tool based on the category information and processing method information, so that the target server node can call the target tool to process the target service, wherein the target tool is matched with the category information and processing method information.
[0073] For example, the processing method can be a predefined algorithm, service interface, or hardware acceleration instruction. The corresponding target tool can be found via reflection from a pre-configured tool registry based on the business category information and processing method information. This ensures that the target tool invoked by the server node can both process the business type and execute the required methods.
[0074] According to embodiments of this disclosure, processing efficiency is improved by dynamically analyzing the category and processing method based on the attribute information of the target business and accurately matching the corresponding target tool.
[0075] Figure 4 A schematic block diagram of a service processing apparatus according to an embodiment of the present disclosure is shown.
[0076] like Figure 4 As shown, the service processing device 400 in this embodiment includes a generation module 410, an update module 420, a determination module 430, and a sending module 440.
[0077] The generation module 410 is used to respond to the processing request sent by the client for executing the business in the business batch diagram, and generate a target business list based on the business attribute information of each business in the business batch diagram. The business batch diagram includes nodes representing the business and edges representing the dependencies between the business.
[0078] The update module 420 is used to update the status information of the front-end services and target services in the target service list in response to receiving feedback information sent by the front-end server node indicating that the front-end services have been processed. The target services are determined based on the service batch diagram and the front-end services.
[0079] The determination module 430 is used to respond to receiving multiple allocation requests for the target service sent by multiple server nodes, and to determine the target server node from the multiple server nodes based on the multiple allocation requests. The allocation request is triggered by the server node when the status information of each service in the target service list is updated.
[0080] The sending module 440 is used to send the service processing request for the target service to the target server node so that the target server node can process the target service.
[0081] According to embodiments of this disclosure, the update module 420 includes a generation submodule and an update submodule.
[0082] The generation submodule is used to generate prompt information for the target business in response to receiving feedback information from the front-end server node indicating that the front-end business has been processed. The prompt information includes resource requirement information for the target business.
[0083] The update submodule is used to update the status information of the target service in the target service list based on the prompt information.
[0084] According to embodiments of this disclosure, the prompt information also includes traffic volume information of the target service, and the update submodule includes a splitting unit and an update unit.
[0085] The splitting unit is used to split the target business into multiple target sub-businesses when the business volume information meets the preset business volume conditions.
[0086] The update unit is used to update the status information of the target service in the target service list based on multiple target sub-services and their respective prompts.
[0087] According to embodiments of this disclosure, the determining module 430 includes a first determining submodule and a second determining submodule.
[0088] The first determining submodule is used to respond to multiple allocation requests for a target sub-service sent by multiple server nodes, and to determine the degree of matching between the target sub-service and the server nodes based on the resource requirement information of the target sub-service and the resource configuration information of each server node in the allocation request.
[0089] The second determination submodule is used to determine the target server node from multiple server nodes based on the matching degree between the target sub-service and the server node; multiple target sub-services are assigned to at least two target server nodes.
[0090] According to embodiments of this disclosure, the service processing apparatus 400 further includes a service quantity determination module.
[0091] The service quantity determination module is used to stop sending service processing requests for the target service to the target server node when it is determined that the number of target services currently allocated to the target server node meets the preset number of the target server node.
[0092] According to embodiments of this disclosure, the service processing apparatus 400 further includes an identifier adding module.
[0093] The identifier addition module is used to add a lock identifier to the target service list in response to the target service being assigned to the target server node. The lock identifier is used to prevent the assigned target service from being assigned again.
[0094] According to embodiments of this disclosure, the processing module includes an information determination module and a tool determination module.
[0095] The information determination module is used to determine the category information and processing method information of the target business based on the attribute information of the target business.
[0096] The tool determination module is used to determine the target tool based on category information and processing method information, so that the target server node can call the target tool to process the target business. The target tool is matched with the category information and processing method information.
[0097] According to embodiments of this disclosure, any plurality of modules among the generation module 410, update module 420, determination module 430, and transmission module 440 may be combined into one module, or any one of these modules may be split into multiple modules. Alternatively, at least part of the functionality of one or more of these modules may be combined with at least part of the functionality of other modules and implemented in one module. According to embodiments of this disclosure, at least one of the generation module 410, update module 420, determination module 430, and transmission module 440 may be at least partially implemented as hardware circuitry, such as a field-programmable gate array (FPGA), a programmable logic array (PLA), a system-on-a-chip, a system-on-a-substrate, a system-on-package, an application-specific integrated circuit (ASIC), or any other reasonable means of integrating or packaging circuitry, or implemented in software, hardware, or firmware, or in any appropriate combination of any of these three implementation methods. Alternatively, at least one of the generation module 410, update module 420, determination module 430, and transmission module 440 may be at least partially implemented as a computer program module, which, when run, can perform corresponding functions.
[0098] Figure 5 A block diagram of an electronic device suitable for implementing a business processing method according to an embodiment of the present disclosure is shown schematically.
[0099] like Figure 5 As shown, an electronic device 500 according to an embodiment of the present disclosure includes a processor 501, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 502 or a program loaded from a storage portion 508 into a random access memory (RAM) 503. The processor 501 may include, for example, a general-purpose microprocessor (e.g., a CPU), an instruction set processor and / or an associated chipset and / or a special-purpose microprocessor (e.g., an application-specific integrated circuit (ASIC)), etc. The processor 501 may also include onboard memory for caching purposes. The processor 501 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present disclosure.
[0100] RAM 503 stores various programs and data required for the operation of electronic device 500. Processor 501, ROM 502, and RAM 503 are interconnected via bus 504. Processor 501 performs various operations of the method flow according to embodiments of the present disclosure by executing programs in ROM 502 and / or RAM 503. It should be noted that programs may also be stored in one or more memories other than ROM 502 and RAM 503. Processor 501 may also perform various operations of the method flow according to embodiments of the present disclosure by executing programs stored in one or more memories.
[0101] According to embodiments of this disclosure, the electronic device 500 may further include an input / output (I / O) interface 505, which is also connected to a bus 504. The electronic device 500 may also include one or more of the following components connected to the input / output (I / O) interface 505: an input section 506 including a keyboard, mouse, etc.; an output section 507 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 508 including a hard disk, etc.; and a communication section 509 including a network interface card such as a LAN card, modem, etc. The communication section 509 performs communication processing via a network such as the Internet. A drive 510 is also connected to the input / output (I / O) interface 505 as needed. A removable medium 511, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on the drive 510 as needed so that computer programs read from it can be installed into the storage section 508 as needed.
[0102] This disclosure also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments; or it may exist independently and not assembled into the device / apparatus / system. The computer-readable storage medium carries one or more programs that, when executed, implement the method according to the embodiments of this disclosure.
[0103] According to embodiments of this disclosure, the computer-readable storage medium may be a non-volatile computer-readable storage medium, such as including, but not limited to: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this disclosure, the computer-readable storage medium may be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. For example, according to embodiments of this disclosure, the computer-readable storage medium may include ROM 502 and / or RAM 503 and / or one or more memories other than ROM 502 and RAM 503 described above.
[0104] Embodiments of this disclosure also include a computer program product comprising a computer program containing program code for performing the methods shown in the flowchart. When the computer program product is run on a computer system, the program code is used to enable the computer system to implement the business processing methods provided in the embodiments of this disclosure.
[0105] When the computer program is executed by the processor 501, it performs the functions defined in the system / apparatus of this disclosure embodiments. According to embodiments of this disclosure, the systems, apparatuses, modules, units, etc., described above can be implemented by computer program modules.
[0106] In one embodiment, the computer program may rely on a tangible storage medium such as an optical storage device or a magnetic storage device. In another embodiment, the computer program may also be transmitted and distributed in the form of signals over a network medium, and may be downloaded and installed via the communication section 509, and / or installed from a removable medium 511. The program code contained in the computer program can be transmitted using any suitable network medium, including but not limited to: wireless, wired, etc., or any suitable combination thereof.
[0107] In such an embodiment, the computer program can be downloaded and installed from a network via communication section 509, and / or installed from removable medium 511. When the computer program is executed by processor 501, it performs the functions defined in the system of this disclosure embodiment. According to embodiments of this disclosure, the systems, devices, apparatuses, modules, units, etc., described above can be implemented by computer program modules.
[0108] According to embodiments of this disclosure, program code for executing the computer programs provided in embodiments of this disclosure can be written in any combination of one or more programming languages. Specifically, these computational programs can be implemented using high-level procedural and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages include, but are not limited to, languages such as Java, C++, Python, "C", or similar programming languages. The program code can execute entirely on a user's computing device, partially on a user's device, partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).
[0109] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0110] Those skilled in the art will understand that the features described in the various embodiments of this disclosure can be combined and / or combined in various ways, even if such combinations or combinations are not explicitly described in this disclosure. In particular, the features described in the various embodiments of this disclosure can be combined and / or combined in various ways without departing from the spirit and teachings of this disclosure. All such combinations and / or combinations fall within the scope of this disclosure.
[0111] The embodiments of this disclosure have been described above. However, these embodiments are for illustrative purposes only and are not intended to limit the scope of this disclosure. Although various embodiments have been described above, this does not mean that the measures in the various embodiments cannot be used advantageously in combination. Various substitutions and modifications can be made by those skilled in the art without departing from the scope of this disclosure, and all such substitutions and modifications should fall within the scope of this disclosure.
Claims
1. A business processing method, characterized in that, The method includes: In response to receiving a processing request from a client for executing services in a service batch diagram, a target service list is generated based on the service attribute information of each service in the service batch diagram. The service batch diagram includes nodes representing services and edges representing dependencies between services. In response to receiving feedback information from the front-end server node indicating that the front-end service has been processed, the status information of the front-end service and the target service in the target service list is updated, wherein the target service is determined based on the service batch map and the front-end service; In response to receiving multiple allocation requests for the target service sent by multiple server nodes, a target server node is determined from the multiple server nodes based on the multiple allocation requests. The allocation request is triggered by the server node when it is determined that the status information of each service in the target service list has been updated. A service processing request for the target service is sent to the target server node so that the target server node can process the target service.
2. The method according to claim 1, characterized in that, The response to receiving feedback information from the front-end server node indicating that the front-end service has been processed is to update the status information of the front-end service and the target service in the target service list, including: In response to receiving feedback information from the front-end server node indicating that the front-end service has been completed, a prompt message for the target service is generated, the prompt message including resource requirement information and service volume information for the target service; Based on the prompt information, the status information of the target service is updated in the target service list.
3. The method according to claim 2, characterized in that, Updating the status information of the target services in the target service list includes: If the business volume information is determined to meet the preset business volume condition, the target business is split into multiple target sub-businesses; Based on the multiple target sub-services and their respective prompts, the status information of the target services is updated in the target service list.
4. The method according to claim 3, characterized in that, The response to receiving multiple allocation requests for the target service sent by multiple server nodes, and determining the target server node from the multiple server nodes based on the allocation requests, includes: In response to receiving multiple allocation requests for the target sub-service sent by multiple server nodes, the matching degree between the target sub-service and the server nodes is determined based on the resource requirement information of the target sub-service and the resource configuration information of each server node in the allocation request; Based on the matching degree between the target sub-service and the server node, the target server node is determined from multiple server nodes; In this process, multiple target sub-services are assigned to at least two target server nodes.
5. The method according to claim 1, characterized in that, The method further includes: For any of the target server nodes, if it is determined that the number of target services currently allocated to the target server node meets the preset number of the target server node, the sending of service processing requests for the target services to the target server node shall be stopped.
6. The method according to claim 1, characterized in that, The method further includes: In response to the allocation of the target service to the target server node, a lock identifier is added to the allocated target service in the target service list. The lock identifier is used to prevent the allocated target service from being allocated again.
7. The method according to claim 1, characterized in that, The process of using the server to process the target service includes: Based on the attribute information of the target service, determine the category information and processing method information of the target service; Based on the category information and the processing method information, a target tool is determined so that the target server node can call the target tool to process the target business. The target tool is matched with the category information and the processing method information.
8. A business processing device, characterized in that, The device includes: The generation module is used to respond to a processing request sent by the client for executing services in a service batch diagram, and generate a target service list based on the service attribute information of each service in the service batch diagram. The service batch diagram includes nodes representing services and edges representing the dependencies between services. The update module is used to update the status information of the front-end service and the target service in the target service list in response to receiving feedback information sent by the front-end server node indicating that the front-end service has been processed. The target service is determined based on the service batch map and the front-end service. The determination module is configured to respond to receiving multiple allocation requests for the target service sent by multiple server nodes, and determine a target server node from the multiple server nodes based on the multiple allocation requests. The allocation request is triggered by the server node when it is determined that the status information of each service in the target service list has been updated. The sending module is used to send a service processing request for the target service to the target server node, so that the target server node can process the target service.
9. An electronic device, comprising: One or more processors; Memory, used to store one or more computer programs. The characteristic feature is that the one or more processors execute the one or more computer programs to implement the steps of the method according to any one of claims 1 to 7.
10. A computer-readable storage medium having a computer program or instructions stored thereon, characterized in that, When the computer program or instructions are executed by a processor, they implement the steps of the method according to any one of claims 1 to 7.
11. A computer program product, comprising a computer program or instructions, characterized in that, When the computer program or instructions are executed by a processor, they implement the steps of the method according to any one of claims 1 to 7.