Game process management method and device, electronic equipment and storage medium

By introducing control nodes and process management nodes into the game process management system, the problem of developers repeatedly implementing game process management services in transient process mode is solved, thus improving development speed and efficiency.

CN121606887APending Publication Date: 2026-03-06NETEASE (HANGZHOU) NETWORK CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511894354.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-12-15
Publication Date
2026-03-06

AI Technical Summary

Technical Problem

In game process management based on transient process mode, developers need to repeatedly implement the functions of game process management services, resulting in slow development speed and inconsistent quality.

Method used

A game process management system is provided, including a control node and a process management node. It acquires game process status association information at preset intervals, responds to game user requests, determines target routing information, and allocates game processes that meet preset status conditions, thereby reducing repetitive work for developers.

Benefits of technology

By abstracting the implementation process of the game process management service, repetitive work in the development process is reduced, and development speed and efficiency are improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121606887A_ABST
    Figure CN121606887A_ABST
Patent Text Reader

Abstract

The invention discloses a game process management method and device, electronic equipment and a storage medium, which can be applied to a game process management system. The method comprises the following steps: in response to a game process distribution request of a target game user, determining target routing information based on state association information acquired by a control node; determining a target control node and a target process management node based on the target routing information; a game process distribution request is sent to a target process management node through a target control node, a request result is obtained, and the request result comprises a target game process which is determined by the target process management node and meets a preset state condition; and distributing the target game process to the target game user through the target control node, so that the target game user plays a game based on the target game process. Thus, by providing the game process management system with universality, the implementation process of the game process management service is extracted from the game function development process, and the development speed is increased.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of game technology, and in particular to a game process management method, apparatus, electronic device, and storage medium. Background Technology

[0002] In games that implement game processes based on the transient process model, developers typically focus on implementing the game synchronization logic for game processes and the game process management service responsible for dynamically creating, allocating, and destroying game processes during game feature development. The transient process model refers to a game process management mode where a completely new process is started for each game session and immediately destroyed after the game ends.

[0003] Therefore, it can be seen that the existing implementation process of game process management services based on the transient process model involves developers implementing them together with the game development process. However, because the required functions of game process management services are relatively uniform, developers perform a lot of repetitive work during development, resulting in slow development speed. Summary of the Invention

[0004] This application provides a game process management method, apparatus, electronic device, and storage medium. By providing a universal game process management system, the implementation process of game process management services is extracted from the game function development process, reducing repetitive work for developers and improving development speed.

[0005] In a first aspect, embodiments of this application provide a game process management method, applied to a game process management system. The system includes a game service node, which includes a control node and a process management node. The process management node controls the state of the game process, and the control node manages its corresponding process management node, acquiring state-related information of the game processes controlled by the managed process management node at a preset period. The method includes: In response to a game process allocation request from a target game user, target routing information is determined based on the state association information obtained by the control node, wherein the target routing information includes a control node that can be used to respond to the game process allocation request; Based on the target routing information, the target control node and the target process management node are determined; The target control node sends the game process allocation request to the target process management node and obtains the request result, which includes the target game process that meets the preset state conditions as determined by the target process management node. The target game process is assigned to the target game user through the target control node, so that the target game user can play the game based on the target game process.

[0006] Secondly, embodiments of this application provide a game process management device applied to a game process management system. The system includes a game service node, which includes a control node and a process management node. The process management node controls the state of the game process, and the control node manages its corresponding process management node, acquiring state-related information of the game processes controlled by the managed process management node at a preset period. The device includes: The information acquisition module is used to determine target routing information based on the status association information acquired by the control node in response to the game process allocation request of the target game user. The target routing information includes a control node that can be used to respond to the game process allocation request. The node determination module is used to determine the target control node and the target process management node based on the target routing information. The request module is used to send the game process allocation request to the target process management node through the target control node and obtain the request result, wherein the request result includes the target game process that meets the preset state conditions as determined by the target process management node. The allocation module is used to allocate the target game process to the target game user through the target control node, so that the target game user can play the game based on the target game process.

[0007] Thirdly, embodiments of this application also provide an electronic device, which includes a processor and a memory, wherein the memory stores a computer program that, when executed by the processor, causes the processor to perform the steps of any game process management method.

[0008] Fourthly, embodiments of this application also provide a computer-readable storage medium including a processor and a memory, wherein the memory stores a computer program that, when executed by the processor, causes the processor to perform steps of any game process management method.

[0009] Fifthly, embodiments of this application also provide a computer program product, including a computer program stored in a computer-readable storage medium; when a processor of an electronic device reads the computer program from the computer-readable storage medium, the processor executes the computer program, causing the electronic device to perform the steps of any of the game process management methods provided in embodiments of this application.

[0010] The solution adopted in this application embodiment can be applied to a game process management system. The system includes game service nodes, which include control nodes and process management nodes. Process management nodes control the state of game processes, and control nodes manage their corresponding process management nodes. The control nodes acquire state-related information of the game processes controlled by their managed process management nodes at preset intervals. In response to a game process allocation request from a target game user, target routing information is determined based on the state-related information acquired by the control nodes. The target routing information includes control nodes that can be used to respond to game process allocation requests. Based on the target routing information, a target control node and a target process management node are determined. A game process allocation request is sent from the target control node to the target process management node, and a request result is obtained. The request result includes the target game process determined by the target process management node that meets preset state conditions. The target control node allocates the target game process to the target game user, enabling the target game user to play the game based on the target game process. Thus, by providing a universal game process management system, the implementation process of game process management services is extracted from the game function development process, reducing repetitive work for developers and improving development speed. Attached Figure Description

[0011] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0012] Figure 1 This is a schematic diagram of an implementation environment scenario for the game process management method provided in this application embodiment; Figure 2 This is a flowchart illustrating a game process management method provided in an embodiment of this application; Figure 3 This is a schematic diagram of an architecture of the game process management system provided in the embodiments of this application; Figure 4 This is a schematic diagram of the state switching of the process management node in the game process management system provided in this application embodiment; Figure 5 This is a flowchart illustrating the game process allocation process based on the game process management system provided in this application embodiment; Figure 6 This is a schematic diagram of the structure of the game process management device provided in the embodiments of this application; Figure 7 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application. Detailed Implementation

[0013] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of the embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application. At the same time, in the description of the embodiments of this application, the terms "first," "second," etc., are only used to distinguish descriptions and should not be construed as indicating or implying relative importance. Thus, features defined with "first" and "second" may explicitly or implicitly include one or more features. In the description of the embodiments of this application, "multiple" means two or more, unless otherwise explicitly specified.

[0014] With the advancement of network communication technology and terminal computing power, multiplayer online battle arena (MOBA, sports games, etc.) games have become an important category in the gaming market. The server architecture for these games typically consists of two types of services: a lobby server and a game server. The lobby server handles latency-insensitive functions such as the in-game store, chat, matchmaking, and match history; its logic is complex, but its throughput is manageable. The game server, on the other hand, undertakes highly real-time tasks such as real-time frame synchronization, physics calculations, and skill judgment; it must be deployed locally to reduce network round-trip latency.

[0015] Existing game process management models generally include: transient process model, process pool model, and persistent process model. The transient process model involves starting a completely new process for each game and immediately destroying the process after the game ends. The process pool model involves pre-creating a batch of processes to form a process pool, cleaning up the state and returning the processes to the pool for reuse after the game ends. The persistent process model involves a single process simultaneously running multiple games, achieving concurrency through coroutines, threads, or event loops.

[0016] The transient process model offers advantages such as high isolation, elastic scaling, precise resource control, and simple debugging and maintenance. In games that implement game processes based on the transient process model, developers typically focus on implementing the game synchronization logic for game processes and the game process management service responsible for dynamically creating, allocating, and destroying game processes. Specifically, the transient process model refers to a game process management mode where a completely new process is started for each game session and immediately destroyed after the game ends.

[0017] Therefore, it can be seen that the existing implementation process of game process management services based on the transient process model involves developers implementing it together during game development. However, game synchronization logic generally needs to be developed according to specific business requirements, making it difficult to reuse across different games. Game process management services, on the other hand, require relatively uniform functionality, mainly including game process startup, allocation, destruction, load balancing, and disaster recovery. Therefore, if each game development team independently implements a game process management service, it not only involves a significant amount of repetitive work, but also results in inconsistent implementation quality due to differences in team skill levels. Developers will perform a lot of repetitive work during the implementation of the game process management service, leading to slow development speed.

[0018] To address at least some of the aforementioned problems, embodiments of this application provide a game process management method, apparatus, electronic device, and computer-readable storage medium.

[0019] Specifically, this embodiment will be described from the perspective of a game process management device, which can be integrated into an electronic device. That is, the game process management method of this application embodiment can be executed by an electronic device. The electronic device can be a server or a terminal or other similar device.

[0020] The server can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery network (CDN) acceleration services, and big data and artificial intelligence platforms. The terminal can be a device that includes both receiving and transmitting hardware, i.e., a device with receiving and transmitting hardware capable of performing bidirectional communication over a bidirectional communication link. Terminals can include, but are not limited to, mobile phones, computers, smart voice interaction devices, smart home appliances, vehicle terminals, and aircraft. Terminals and servers can be directly or indirectly connected via wired or wireless communication methods; this application does not impose any restrictions.

[0021] Please see Figure 1 Taking the integration of game process management devices into electronic devices as an example, Figure 1This is a schematic diagram illustrating an implementation scenario of the game process management method provided in this application. The electronic device can be a terminal device, which can be applied to a game process management system. The system includes game service nodes, each comprising a control node and a process management node. The process management node controls the state of the game process, and the control node manages its corresponding process management node. It acquires state-related information of the game processes controlled by the managed process management node at preset intervals. In response to a game process allocation request from a target game user, it determines target routing information based on the state-related information acquired by the control node. The target routing information includes control nodes that can be used to respond to game process allocation requests. Based on the target routing information, it determines a target control node and a target process management node. It sends a game process allocation request to the target process management node through the target control node, obtaining a request result containing a target game process that meets preset state conditions as determined by the target process management node. Finally, it allocates the target game process to the target game user through the target control node, enabling the target game user to play the game based on the target game process. Thus, by providing a universal game process management system, the implementation process of the game process management service is extracted from the game function development process, reducing repetitive work for developers and improving development speed.

[0022] It should be noted that, Figure 1 The illustrated scenario of the game process management method is merely an example. The implementation environment of the game process management method described in this application is for the purpose of more clearly illustrating the technical solutions of this application and does not constitute a limitation on the technical solutions provided in this application. Those skilled in the art will understand that with the evolution of data processing and the emergence of new business scenarios, the technical solutions provided in this application are also applicable to similar technical problems.

[0023] The solutions provided in this application are specifically illustrated through the following embodiments. It should be noted that the order of description of the following embodiments is not intended to limit the preferred order of the embodiments.

[0024] This embodiment will be described from the perspective of a game process management device, which can be integrated into an electronic device, which can be a terminal and / or a server, and this application does not limit it.

[0025] This application provides a game process management method. Please refer to [link / reference]. Figure 2 , Figure 2 The specific flow of the game process management method provided in this application embodiment can be summarized in the following steps 101 to 104: The game process management method is applied to a game process management system. The system includes game service nodes, which include control nodes and process management nodes. The process management nodes are used to control the state of the game process, and the control nodes are used to manage their corresponding process management nodes. The control nodes obtain the state association information of the game processes controlled by the process management nodes they manage at preset intervals.

[0026] A game process management system is a system used to manage game processes within a game. It is a general-purpose game process management system that can be built before game functionality is implemented. A game process refers to the process allocated for a game session within a game-like game.

[0027] In this context, a game service node refers to a node in the game process management system used to implement game process management services. Game service nodes can include various types of nodes, each existing as an independent process. Their specific configuration can be adjusted according to actual needs and is not limited here. For example, a game service node can include a control node and process management nodes managed by the control node. The process management nodes control the state of the game processes, including states such as a first state indicating the game process has not started, a second state indicating the game process has started but not yet allocated resources, and a third state indicating the game process has been allocated resources. The control node controls the process management nodes it manages, such as initializing the process management nodes and synchronizing the states (i.e., state association information) of the game processes contained within the process management nodes it manages.

[0028] State association information refers to state information related to the game process controlled by the process management nodes managed by the control node. State association information can include the game process state information corresponding to each process management node individually, or it can include the game process state information at the control node level obtained by aggregating the information from all process management nodes. The game process state information can include the game process's idle rate, response latency, resource consumption, etc. The state association information, and the game process state information it contains, can be adjusted according to actual circumstances and are not limited here.

[0029] Step 101: In response to the game process allocation request of the target game user, determine the target routing information based on the state association information obtained by the control node, wherein the target routing information includes the control node that can be used to respond to the game process allocation request.

[0030] Among them, target game users refer to users who have a need for game progress allocation.

[0031] Among them, the game process allocation request refers to the request used to request the game process management system to allocate game processes. The game process allocation request can be triggered by the target game user through controls provided by the game interface or other means to the server (i.e., the lobby server), and then initiated by the server to the game process management request entry of the game process management system.

[0032] The target routing information refers to the portion of the routing information determined by the control node from the routing information of the game process management system in response to the game process allocation request. The target routing information is used to determine the target game process allocated to the game process allocation request.

[0033] It should be noted that the game process management system includes routing information, which includes routing identifiers and routing values. The routing identifier includes a node identifier used to identify the control node, and the routing value is determined based on the state association information obtained by the control node corresponding to the node identifier.

[0034] The state-related information includes the state of the game processes controlled by the process management nodes managed by the control nodes.

[0035] Step 102: Based on the target routing information, determine the target control node and the target process management node.

[0036] Among them, the target control node refers to the control node included in the target routing information that is used to respond to the allocation request of the game process.

[0037] Among them, the target process management node refers to the process management node managed by the target control node, which is used to respond to game process allocation requests.

[0038] Specifically, the process of determining the target control node and the target process management node based on the target routing information may include: determining the target control node based on the size relationship of the routing values ​​in the target routing information; and determining the target process management node based on the status association information of the process management node controlled by the target control node.

[0039] Among them, the target control node is the control node corresponding to the maximum routing value in the target routing information. The target process management node is the process management node with the largest state association information among the process management nodes connected to the target control node.

[0040] In some embodiments, the game process management system is deployed on host machines distributed in multiple regions. Each host machine is equipped with a process management node and a control node. The control node is used to manage the process management nodes deployed on at least one host machine.

[0041] It is understandable that a control node refers to a node on the host machine that is independent of the process management node and is used to manage processes externally.

[0042] In some embodiments, the routing identifier may further include a region identifier for identifying a region.

[0043] The process of obtaining target routing information in response to the game process allocation request of the target game user may include: in response to the game process allocation request of the target game user, determining multiple candidate regions with priority from multiple regions based on the region where the target game user is located and / or the network association information of the game process allocation request, as well as the region identifier of each candidate region; and taking the routing information that matches the region identifier of the candidate region as the target routing information.

[0044] The network association information is used to indicate network-related information corresponding to the target game user who initiated the game process allocation request. Network association information may include, but is not limited to, network latency, packet loss rate, etc., and its specific details can be adjusted according to actual conditions; no restrictions are imposed here.

[0045] Among them, the candidate region refers to the region where the game service node used to allocate game processes for game process allocation requests is located.

[0046] It should be noted that when there are multiple candidate regions, the process of determining the target control node may include: determining the target region based on the priority of each candidate region, and determining the target control node based on the relationship between the routing values ​​of the target routing information in the target region.

[0047] In some embodiments, the aforementioned status-related information includes the idle rate.

[0048] Based on this, the process of determining the target process management node according to the status association information of the process management node controlled by the target control node may include: determining the candidate process management nodes under each host in the target region from the process management nodes controlled by the target control node; and determining the target process management node from the candidate process management nodes based on the idle rate of the candidate process management nodes.

[0049] Among them, candidate process management nodes refer to the process management nodes deployed on each host machine in the target region. The target process management node can be the process management node with the highest idle rate among the candidate process management nodes, or any one of the candidate process management nodes with an idle rate greater than the preset idle rate.

[0050] Step 103: Send a game process allocation request to the target process management node through the target control node, and obtain the request result. The request result includes the target game process that meets the preset state conditions as determined by the target process management node.

[0051] The request result refers to the response of the target process management node to the game process allocation request. The request result includes successful and failed requests. A successful request means that the target process allocated to the game process by the target process management node is determined. In the case of a successful request, the request result includes the target game process that meets the preset state conditions as determined by the target process management node. A failed request means that the target process management node fails to determine the game process allocated to the game process by the request.

[0052] In some embodiments, the above game process management method further includes: if the request result indicates that the request failed and the number of times the game process allocation request has been sent to the process management node has not reached a preset number, determining a new target control node and a new target process management node in the target region; if the request result indicates that the request failed and the number of times the game process allocation request has been sent to the process management node has reached a preset number, determining a new target region based on the priority of each candidate region, and a new target control node and a new target process management node in the new target region; and returning to the step of sending the game process allocation request to the target process management node through the target control node to obtain the request result.

[0053] The preset number of attempts can be adjusted according to actual needs; there is no limit here. For example, the preset number of attempts could be 3. Or, for example, 4.

[0054] Specifically, when the request result indicates that the request failed, and the number of times the game process allocation request has been sent to the process management node has reached a preset number, a new target region is determined based on the priority of each candidate region, and a new target control node and a new target process management node are determined under the new target region. Then, the number of times the game process allocation request has been sent to the process management node is cleared to zero, so that when returning to the step of sending the game process allocation request to the target process management node through the target control node and obtaining the request result, the number of times the game process allocation request has been sent to the process management node can continue to be accumulated.

[0055] Step 104: Through the target control node, the target game process is assigned to the target game user so that the target game user can play the game based on the target game process.

[0056] The target game process refers to the game process controlled by the target process management node that is used to allocate the game to the target game user to execute the game corresponding to the game allocation request.

[0057] In some embodiments, the process management node is used to manage the entire lifecycle of the game process. Based on the lifecycle state of the game process it controls, the process management node updates the state association information of the game process and synchronizes the state association information of the game process with the corresponding control node.

[0058] Based on this, the above game process management method further includes: in response to the information update event of the control node, determining the updated state association information of the control node; based on the updated state association information, updating the routing value of the routing identifier indicating the control node in the routing information; wherein, the information update event includes at least one of the following: a game process allocation event, a game process start event, or a game process destruction event of the process management node managed by the control node in response to the game process allocation request of the target game user; or a service stop event of the game service node to which the control node belongs.

[0059] Information update events refer to triggering events that update the state association information contained in the control node. There can be various types of information update events, which can be adjusted according to the actual situation and are not limited here. For example, in response to a game process allocation event of a process management node managed by the control node, the state association information of the process management nodes contained in the control node that match the game process allocation event is updated. Another example is in response to a game process start event of a process management node managed by the control node, updating the state association information of the process management nodes contained in the control node that match the game process start event. Yet another example is in response to a game process destruction event of a process management node managed by the control node, updating the state association information of the process management nodes contained in the control node that match the game process destruction event. Finally, in response to a service stop event of a game service node to which the control node belongs, updating the state association information of each process management node contained in the control node.

[0060] The event is divided into three categories: Game Process Allocation Event, Game Process Destruction Event, and Service Stop Event. Game Process Allocation Event indicates that the game process on the process management node has switched to the third state, indicating that the game process has been allocated. Game Process Startup Event indicates that the game process on the process management node has switched to the second state, indicating that the game process has started but not yet allocated. Game Process Destruction Event indicates that the game process on the process management node has been reclaimed. Service Stop Event indicates that the game service node to which the control node belongs has stopped providing services. The Service Stop Event can be triggered by a restart of the host machine where the game service node is deployed, a failure of the host machine where the game service node is deployed, or an offline event of the host machine where the game service node is deployed. The specific triggers can be adjusted according to the actual situation and are not limited here.

[0061] The process of updating the routing value of the control node in the routing information based on the updated state association information can be as follows: based on the updated state association information in the control node and the unupdated state association information, new state association information is determined, and the routing value of the control node in the routing information is updated based on the new state association information.

[0062] It should be noted that a host machine refers to a device where game service nodes are deployed. Each host machine has its own dedicated game process management service to manage the game process, and multiple host machines are deployed in each region. The restart strategy for the host machine can be a rolling restart strategy.

[0063] Specifically, the above-mentioned game process management method includes: responding to game data update events, determining a first update order and a second update order, wherein the first update order is used to indicate the update order of game process management systems deployed in different regions; the second update order is used to indicate the update order of game process management systems deployed on various host machines distributed in the same region; and performing rolling updates on game process management systems deployed on various host machines distributed in different regions based on the first update order and the second update order.

[0064] Specifically, when it is necessary to update multiple regions where the game process management system is deployed, a first update order for the multiple regions needs to be determined, and rolling updates are performed on each region according to the first update order; when it is necessary to update multiple host machines in one region where the game process management system is deployed, a second update order for the multiple host machines needs to be determined, and rolling updates are performed on each host machine according to the second update order.

[0065] The first update order refers to the regional update order, and the second update order refers to the host machine update order.

[0066] It's understandable that a rolling restart strategy refers to restarting host machines within each region, or a range of host machines, sequentially. Its specific implementation can be adjusted based on actual circumstances and is not limited here. For example, when restarting host machines in a specific region, a rolling restart strategy might involve restarting one host machine at a time, rather than all host machines simultaneously. Similarly, when restarting all host machines nationwide, a rolling restart strategy might involve restarting host machines in one region before moving on to the next.

[0067] In this way, the relay server management service can be restarted through a rolling restart strategy, and the game process can still be allocated normally. Based on rolling updates, it is possible to support updating the game process executable file without server interruption, and to support the online / offline deployment of new and old services without server interruption.

[0068] In some embodiments, when the information update event is a service stop event, before the service of the game service node where the control node is located stops, the state association information of the process management node and the state information of the game process controlled by the process management node are recorded; when the service of the game service node where the control node is located stops, it is determined that the state association information is empty; when the service of the game service node where the control node is located resumes, it is resumed according to the recorded state association information and state information.

[0069] Specifically, when the service stops, the status association information of all control nodes on this host machine in the routing information will be reset to 0. Furthermore, when the game process management request entry receives a new game process allocation request, it ensures that the request will not be sent to a game service node that is currently restarting.

[0070] In some embodiments, the state of a game process includes a first state indicating that the game process has not started, a second state indicating that the game process has started but has not been assigned a role, and a third state indicating that the game process has been assigned a role. The state-related information includes an idle rate, which is used to indicate the proportion of game processes in the second state.

[0071] Based on this, the above game process management method also includes: monitoring the idle rate of the process management node; when the idle rate is lower than the preset idle rate, switching a preset number of game processes from the first state to the second state, the preset number including the number determined based on the preset idle rate.

[0072] The preset idle rate refers to the minimum idle rate required for the process management node. The preset idle rate can be adjusted according to actual conditions; there is no restriction here. For example, the preset idle rate can be set to 0.2.

[0073] The preset quantity refers to the number of game processes required to switch from the first state to the second state. The preset quantity can be adjusted according to actual circumstances and is not limited here. For example, the preset quantity could be 100. Alternatively, the preset quantity could be determined based on a preset idle rate. Specifically, this preset quantity can be determined based on the maximum number of game processes that the process management node can handle and the preset idle rate.

[0074] Based on this, the process of sending a game process allocation request from the target control node to the target process management node and obtaining the request result may include: sending a game process allocation request from the target control node to the target process management node, wherein the allocation request contains the address information of the target game process, and the target game process is the game process in the second state determined by the target process management node.

[0075] The target game process refers to the game process whose state is in the second state and whose address information is matched by the target process management node.

[0076] Thus, by pre-starting a batch of game processes, when receiving a request to allocate game processes, there is no need to perform a startup operation; the process's IP address and port number can be returned directly, resulting in a fast response time.

[0077] The game process management method provided in this application can be applied to a game process management system. The system includes game service nodes, which in turn include control nodes and process management nodes. The process management nodes control the state of game processes, and the control nodes manage their corresponding process management nodes. The control nodes acquire state-related information about the game processes controlled by their managed process management nodes at preset intervals. In response to a game process allocation request from a target game user, target routing information is determined based on the state-related information acquired by the control nodes. This target routing information includes control nodes that can be used to respond to game process allocation requests. Based on the target routing information, a target control node and a target process management node are determined. A game process allocation request is sent from the target control node to the target process management node, resulting in a request result containing target game processes that meet preset state conditions as determined by the target process management node. Finally, the target control node allocates the target game process to the target game user, enabling the target game user to play the game based on the target game process. Thus, by providing a universal game process management system, the implementation process of game process management services is extracted from the game function development process, reducing repetitive work for developers and increasing development speed.

[0078] To facilitate understanding of the above embodiments, a specific embodiment will be used for explanation below.

[0079] Please see Figure 3 , Figure 3 This is a schematic diagram of the architecture of a game process management system provided in an embodiment of this application. The game process management system is used to manage the game processes of multiple regions (such as region A and region B). Each region has multiple host machines, and each host machine deploys a game service node. A game service node includes at least one control node, and the control node manages at least one process management node.

[0080] Each host machine deploys a separate game process management service (i.e., a game service node) to manage the game process, and multiple host machines are deployed in each region. Since direct communication using the process management node can cause blocking when retrieving processes, this application employs a control node for information collection and external services, while the process management node is used to create or destroy game processes to avoid blocking issues.

[0081] A game process management service, or a game service node, can include multiple nodes, each existing as an independent process. The number of nodes can be configured according to actual needs. A game service node can be configured with the following types of nodes: basic nodes responsible for basic services such as cluster start-up and shutdown, and global singleton registration; routing nodes for Remote Procedure Calls (RPC); multiple process management nodes; and multiple control nodes. Each process management node manages multiple game process running containers, each allocated a fixed port range. The process management node manages the game processes corresponding to the ports of its included game process running containers. Each control node can manage multiple process management nodes and synchronize the list of available game processes across the process management nodes in real time. The control nodes provide several Hypertext Transfer Protocol (HTTP) interfaces to the game process management request entry point to implement game services such as allocating idle game processes and releasing game processes. The game process management request entry point accepts requests for game process allocation and release from the lobby server. When processing requests, it can forward them to different game service nodes according to load balancing and disaster recovery strategies.

[0082] It should be noted that the number of nodes in the game process management system can be modified through configuration. The more nodes, the more game processes can be managed, and the faster the response speed.

[0083] Thus, by designing the game process management system as a multi-node distributed architecture, the system can be dynamically adjusted to improve its versatility.

[0084] It should be noted that the control node can contain the following two logical classes: HttpProxy and BattleProcessDispacher. HttpProxy is an HTTP proxy class used to provide a request interface for the game process management request entry point. BattleProcessDispacher is the core class of the control node, responsible for implementing the following functions: After all processes of the game process management service have started, it calculates the range of process management nodes under its control and initiates initialization requests to the process management nodes it manages; it provides the sync_game_ports_info interface for the process management nodes. When the number of idle game processes on a process management node changes, it synchronizes the status information of each game process through this interface; and it provides the allocate_battle_process interface, which is requested by the game process management request entry point to allocate game processes.

[0085] Understandably, to achieve load balancing, the following two logics can be executed periodically by the core class on the control node: The number of game processes in the second state on this control node (i.e., game_free_num) is counted and stored in a Redis hash table with the value {region}_zone_stat, using {zone_id}_{collector_node_id} as the field. This hash table contains the zone routing information, where zone_id is the identifier of the game service node, collector_node_ is the node identifier of the control node, region is the region identifier, and zone_stat is the state association information (i.e., the total idle rate).

[0086] The hash table data with zone_stat as the key is retrieved from the hash table using the hgetall command and stored in the process memory.

[0087] It should be noted that each game service node corresponds to a unique zone_id, and multiple control nodes are deployed on each game service node, with each control node having a unique collector_node_id. The region is the name of the region where the game service node is located.

[0088] Each time the game process management request entry requests the `allocate_battle_process` interface of the game service node, the returned data includes the following two parts: the allocated idle game process IP and port; and the idle rate on all control nodes in the request region. The game process management request entry stores this idle rate data in Redis. Before requesting a control node again, the game process management request entry first retrieves the idle rate data from Redis, and then uses the idle rate data of each control node as a probability base to extract the target control node to be requested.

[0089] Thus, when receiving a request from the lobby server to allocate idle game processes, the request entry service uses the idle rate of game processes on each host machine in the target region as a probability base to select the target server to request. Each time a result is returned, the idle rate of game processes on each host machine in the target region is updated. Load balancing is achieved through this method.

[0090] Understandably, the instance corresponding to the core class on the control node records a list of all allocated game processes. The following situations will trigger the logic to save the game process list to Redis: Each time a game process allocation request is received from the game process management request entry point; Each time idle game process data is received from the process management node; When the server shuts down, the pre_shutdown_handle interface of the instance corresponding to the core class is triggered, which in turn triggers the save logic.

[0091] When the server restarts, the instance corresponding to the core class retrieves the list of game processes in the third state from Redis and sends it to the several process management nodes managed by the control node. These process management nodes can then restore the data state before the restart based on this list.

[0092] In this way, Redis stores a list of game processes currently serving players in real time. Each time the service restarts, this data is retrieved from Redis, thus restoring the memory data of the game process management service to its state before the restart.

[0093] Understandably, the supervisor service monitors the game process management service (i.e., the game service nodes). If any node fails, all nodes in the entire service group will be restarted immediately. Since the game process management service has data recovery capabilities after restarting, it can immediately return to normal operation and provide services to the outside world after restarting.

[0094] Specifically, the supervisor server monitors the game process management service processes on the host machine. If a process crashes, the entire game process management service is restarted. After restarting, the number of processes returns to normal, and the process data is restored to its pre-restart state. When the service stops, the value of `game_free_num` in the Redis hash table `zone_stat` for all control nodes on the host machine is set to 0. Based on this, when the game process management request entry requests game processes, it will not request machines on the game service nodes that are restarting. When the game process management request entry requests the allocation of game processes, if the request times out, the control nodes on the target machine are removed from the routing information, a new target is extracted, and the game process allocation request is executed. If three consecutive requests fail, a request is made to machines in the next region.

[0095] Understandably, a heartbeat mechanism can be set up to ensure that services are removed from the routing information after they fail or go offline, thus preventing these services from receiving further requests.

[0096] This service, based on Redis, implements a heartbeat mechanism for control nodes. Specifically, each region has a corresponding hash table in Redis, recording the heartbeat times of each control node in that region. Control nodes update their heartbeat times every 10 seconds via a scheduled task. Every 120 seconds, control nodes also check the heartbeat times of other control nodes in their region via a scheduled task; if a timeout is detected, it is removed from the regional routing information. Control nodes not present in the regional routing information will not receive requests from the game process management entry point until the next heartbeat is initiated.

[0097] This strategy allows for the automatic removal of any machine from the server's request targets if it needs to be taken offline or if an anomaly occurs that cannot be automatically recovered, thus quickly shielding it from any impact on the online environment.

[0098] It should be noted that the process management node can provide interfaces related to container operations, including but not limited to creating containers, destroying containers, obtaining container process identifiers based on container identifiers, obtaining a list of game processes for containers, and destroying game processes. The process management node can also perform the following functions: after all processes of the game process management service have started, it initiates an RPC call to the control node managing this process management node to the `on_node_init` interface defined in the management class; manages the start and stop of game processes; and saves the state of each game process in memory in real time. Each game process has only three states: a first state indicating it has not started (i.e., `not_start`), a second state indicating the game process has started but not allocated resources (i.e., `game_free:`), and a third state indicating the game process has started and been allocated resources (i.e., `game_work`). The switching relationships between different states are as follows: Figure 4 As shown, it does not support reverse switching.

[0099] Understandably, a pre-launch strategy can be set to improve the response speed of the game process management system. The pre-launch strategy means that only a portion of the idle game processes in the process management node are launched at a time. The logic of launching new idle processes is only triggered when the number of idle game processes is detected to be below the minimum idle rate.

[0100] In this way, the resource consumption problem caused by launching all game processes within the management scope of the process management node at once can be avoided.

[0101] To better understand how the game process management system works, the following explanation uses the game process allocation process as an example.

[0102] Please see Figure 5 , Figure 5 This is a schematic diagram of a game process allocation process based on a game process management system provided in an embodiment of this application. For example... Figure 5 As shown, when a new game is ready, the lobby server sends an HTTP request to the game process management request entry point to execute an idle process allocation protocol (such as CMD_ALLOCATE_GAME_FREE_BATTLE). The protocol's general logic is as follows: The game process management request entry point determines a region priority list based on the user's network latency information. This list includes multiple candidate regions to be accessed. The game process management request entry point iterates through the region priority list, requesting the game process management service for each region (i.e., sending game process allocation requests to game service nodes). When requesting a target region, the system uses the region routing information (i.e., Redis data) in the game process management system to determine the target routing information, i.e., the game service node list. This list includes the region to which each game service node belongs and the status association information of the control nodes under each game service node (i.e., idle rate, which can also be understood as a routing value). The idle rate of each game service node is used as routing information to determine the target game service node to request. The higher the idle rate of a game service node, the higher its priority. If a request to a game service node fails, the system requests the next game service node in the target region. The number of times a game service node can be requested for a given region is set to three. If no available game process is found for a target region, the next target region is determined using the region priority list, and a request is initiated for that region. The data returned by the game service node based on this request includes the game process allocation result and a list of idle rates for each game service node in the region. Each time a game service node is requested, regardless of whether the allocation is successful or not, a list of idle rates for the corresponding region's game service nodes is returned to store Redis data as routing information for the next request. Once a game process is successfully allocated by the game service node, the request process ends, and the game process information is returned to the lobby server.

[0103] This embodiment also provides a game process management device, which can be integrated into a terminal device. For example, such as... Figure 6 As shown, this game process management device is applied to a game process management system. The system includes a game service node, which includes a control node and a process management node. The process management node controls the state of the game process, and the control node manages its corresponding process management node, acquiring the state-related information of the game processes controlled by the process management node it manages at a preset period. Based on this, the aforementioned game process management device may include: The information acquisition module 201 is used to determine target routing information based on the status association information acquired by the control node in response to the game process allocation request of the target game user. The target routing information includes the control node that can be used to respond to the game process allocation request. The node determination module 202 is used to determine the target control node and the target process management node based on the target routing information; Request module 203 is used to send a game process allocation request to the target process management node through the target control node and obtain the request result, which includes the target game process that meets the preset state conditions as determined by the target process management node. The allocation module 204 is used to allocate the target game process to the target game user through the target control node, so that the target game user can play the game based on the target game process.

[0104] In some embodiments, the game process management system described above includes routing information, which includes a routing identifier and a routing value. The routing identifier includes a node identifier for identifying a control node, and the routing value is determined based on the state association information obtained by the control node corresponding to the node identifier. Based on this, the aforementioned node determination module 202, based on the target routing information, determines the target control node and the target process management node, including: The first node determination unit is used to determine the target control node based on the size relationship of the routing values ​​in the target routing information; The second node determination unit is used to determine the target process management node based on the status association information of the process management node controlled by the target control node.

[0105] In some embodiments, the game process management system described above is deployed on host machines distributed in multiple regions. Each host machine is equipped with multiple process management nodes and control nodes. The control node is used to manage the process management nodes deployed on at least one host machine.

[0106] In some embodiments, the routing identifier further includes a region identifier for identifying a region; Based on this, the aforementioned information acquisition module 201, in response to the game process allocation request of the target game user, acquires target routing information, including: The identifier acquisition unit is used to respond to the game process allocation request of the target game user, and determine multiple candidate regions with priority from multiple regions based on the region where the target game user is located and / or the network association information of the game process allocation request, as well as the region identifier of each candidate region. The information acquisition unit is used to take the routing information that matches the region identifier of the candidate region from the routing information as the target routing information; Based on this, the first node determining unit, based on the size relationship of the routing values ​​in the target routing information, determines the target control node, including: The node determination sub-unit is used to determine the target control node based on the relationship between the routing values ​​of the target routing information in the target area. The target area is determined based on the priority of each candidate area.

[0107] In some embodiments, the aforementioned state association information includes an idle rate. The second node determining unit, based on the state association information of the process management node controlled by the target control node, determines the target process management node and is further configured to: From the process management nodes controlled by the target control node, determine the candidate process management nodes under each host machine in the target region; The target process management node is determined from the candidate process management nodes based on their idle rate.

[0108] In some embodiments, the game process management device further includes: The third node determination unit is used to determine a new target control node and a new target process management node in the target area when the request result indicates that the request has failed and the number of times the game process allocation request has been sent to the process management node has not reached the preset number. The fourth determination unit of the node is used to determine a new target region, a new target control node and a new target process management node under the new target region, based on the priority of each candidate region, when the request result indicates that the request has failed and the number of times the game process allocation request is sent to the process management node has reached a preset number. The loop unit is used to return to the step of sending a game process allocation request from the target control node to the target process management node and obtaining the request result.

[0109] In some embodiments, the game process management device further includes: The update order determination unit responds to game data update events and determines a first update order and a second update order. The first update order is used to indicate the update order of game process management systems deployed in different regions; the second update order is used to indicate the update order of game process management systems deployed on various host machines distributed in the same region. The update unit is used to perform rolling updates on the game process management system deployed on various host machines distributed in different regions, based on the first update order and the second update order.

[0110] In some embodiments, the process management node is used to manage the entire lifecycle of the game process. Based on the lifecycle state of the game process it controls, the process management node updates the state association information of the game process and synchronizes the state association information of the game process with the corresponding control node.

[0111] In some embodiments, the game process management device further includes: The information determination subunit is used to determine the updated state association information of the control node in response to the information update event of the control node. The update unit is used to update the routing value of the routing identifier indicating the control node in the routing information based on the updated state association information; Information update events include at least one of the following: The game process allocation event, game process start event, or game process destruction event of the process management node managed by the aforementioned control node; Service stop event of the game service node to which the control node belongs.

[0112] In some embodiments, the game process management device further includes: The recording unit is used to record the state association information of the process management node and the state information of the game process controlled by the process management node before the service of the game service node where the control node is located stops, in the event that the information update event is a service stop event. The information setting unit is used to determine that the status association information is empty when the service of the game service node where the control node is located stops. The recovery unit is used to restore services based on recorded status association information and status information when the game service node where the control node is located resumes service.

[0113] In some embodiments, the states of the game process include a first state indicating that the game process has not started, a second state indicating that the game process has started but has not been assigned, and a third state indicating that the game process has been assigned. The state-related information includes an idle rate, which is used to indicate the proportion of game processes in the second state.

[0114] Based on this, the aforementioned game process management device also includes: The monitoring unit is used to monitor the idle rate of the process management node; The switching unit is used to switch a preset number of game processes from the first state to the second state when the idle rate is lower than the preset idle rate. The preset number includes a number determined based on the preset idle rate.

[0115] In some embodiments, the request module 203 sends a game process allocation request to the target process management node through the target control node and obtains the request result, including: The request unit is used to send a game process allocation request to the target process management node through the target control node. The allocation request contains the address information of the target game process, wherein the target game process is a game process in the second state determined by the target process management node.

[0116] The game process management device provided in this application embodiment can be applied to a game process management system. The system includes a game service node, which includes a control node and a process management node. The process management node controls the state of the game process, and the control node manages its corresponding process management node, acquiring the state association information of the game processes controlled by the process management node it manages at a preset period. The information acquisition module 201 responds to the game process allocation request of the target game user and determines target routing information based on the state association information acquired by the control node. The target routing information includes the control node that can be used to respond to the game process allocation request. The node determination module 202 determines the target control node and the target process management node based on the target routing information. The request module 203 sends a game process allocation request to the target process management node through the target control node and obtains a request result. The request result includes the target game process that meets the preset state conditions determined by the target process management node. The allocation module 204 allocates the target game process to the target game user through the target control node, so that the target game user can play the game based on the target game process. In this way, by providing a universal game process management system, the implementation process of game process management services is separated from the game function development process, reducing repetitive work for developers and increasing development speed.

[0117] Accordingly, this application also provides an electronic device, which can be a terminal, such as a smartphone, tablet computer, laptop computer, touch screen, game console, personal computer (PC), personal digital assistant (PDA), or other terminal device. Alternatively, the electronic device can be a server.

[0118] like Figure 7 As shown, Figure 7 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. The electronic device 300 includes a processor 301 with one or more processing cores, a memory 302 with one or more computer-readable storage media, and a computer program stored in the memory 302 and executable on the processor. The processor 301 and the memory 302 are electrically connected. Those skilled in the art will understand that the electronic device structure shown in the figure does not constitute a limitation on the electronic device, and may include more or fewer components than shown, or combine certain components, or have different component arrangements.

[0119] The processor 301 is the control center of the electronic device 300. It connects various parts of the electronic device 300 via various interfaces and lines. By running or loading software programs and / or units stored in the memory 302, and by calling data stored in the memory 302, it executes various functions and processes data of the electronic device 300, thereby providing overall monitoring of the electronic device 300. The processor 301 can be a central processing unit (CPU), a graphics processing unit (GPU), a network processor (NP), etc., and can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application.

[0120] In this embodiment, the processor 301 in the electronic device 300 loads the instructions corresponding to the processes of one or more applications into the memory 302 according to the following steps, and the processor 301 runs the applications stored in the memory 302 to realize various functions, such as: It is applied to the game process management system. The system includes game service nodes, which include control nodes and process management nodes. The process management nodes are used to control the state of the game process, and the control nodes are used to manage their corresponding process management nodes and obtain the state association information of the game process controlled by the process management nodes they manage at a preset period. In response to a game process allocation request from a target game user, target routing information is determined based on the state association information obtained by the control node. The target routing information includes control nodes that can be used to respond to the game process allocation request. Based on the target routing information, the target control node and the target process management node are determined; The target control node sends a game process allocation request to the target process management node and obtains the request result, which includes the target game process that meets the preset state conditions as determined by the target process management node. The target game process is assigned to the target game user through the target control node, so that the target game user can play the game based on the target game process.

[0121] The electronic device provided in this application embodiment can be applied to a game process management system. The system includes a game service node, which includes a control node and a process management node. The process management node controls the state of the game process, and the control node manages its corresponding process management node. It acquires state-related information of the game processes controlled by the managed process management node at preset intervals. In response to a game process allocation request from a target game user, it determines target routing information based on the state-related information acquired by the control node. The target routing information includes the control node that can be used to respond to the game process allocation request. Based on the target routing information, it determines a target control node and a target process management node. It sends a game process allocation request to the target process management node through the target control node, obtaining a request result containing the target game process that meets preset state conditions as determined by the target process management node. Finally, it allocates the target game process to the target game user through the target control node, enabling the target game user to play the game based on the target game process. Thus, by providing a universal game process management system, the implementation process of the game process management service is extracted from the game function development process, reducing repetitive work for developers and improving development speed.

[0122] For details on the implementation of each of the above operations, please refer to the previous examples, which will not be repeated here.

[0123] Optional, such as Figure 7 As shown, the electronic device 300 also includes: a touch display screen 303, a radio frequency circuit 304, an audio circuit 305, an input unit 306, and a power supply 307. The processor 301 is electrically connected to the touch display screen 303, the radio frequency circuit 304, the audio circuit 305, the input unit 306, and the power supply 307. Those skilled in the art will understand that... Figure 7 The electronic device structure shown does not constitute a limitation on the electronic device and may include more or fewer components than shown, or combine certain components, or have different component arrangements.

[0124] The touch display screen 303 can be used to display a graphical user interface (GUI) and receive operation commands generated by the user interacting with the GUI. The touch display screen 303 may include a display panel and a touch panel. The display panel can be used to display information input by the user or information provided to the user, as well as various graphical user interfaces of the electronic device. These graphical user interfaces can be composed of graphics, text, icons, video, and any combination thereof. Optionally, the display panel can be configured using a liquid crystal display (LCD), organic light-emitting diode (OLED), or other similar technologies. The touch panel can be used to collect touch operations performed by the user on or near it (such as operations performed by the user using a finger, stylus, or any suitable object or accessory on or near the touch panel), generate corresponding operation commands, and execute the corresponding program according to the operation commands. Optionally, the touch panel may include two parts: a touch detection device and a touch controller. The touch detection device detects the user's touch location and the signal generated by the touch operation, transmitting the signal to the touch controller. The touch controller receives touch information from the touch detection device, converts it into touch point coordinates, and sends it to the processor 301. It can also receive and execute commands from the processor 301. The touch panel can cover the display panel. When the touch panel detects a touch operation on or near it, it transmits the information to the processor 301 to determine the type of touch event. Subsequently, the processor 301 provides corresponding visual output on the display panel based on the type of touch event. In this embodiment, the touch panel and the display panel can be integrated into the touch display screen 303 to achieve input and output functions. However, in some embodiments, the touch panel and the touch display screen 303 can be implemented as two independent components to achieve input and output functions. That is, the touch display screen 303 can also be used as part of the input unit 306 to achieve input functions.

[0125] The radio frequency circuit 304 can be used to transmit and receive radio frequency signals to establish wireless communication with network devices or other electronic devices, and to transmit and receive signals with network devices or other electronic devices.

[0126] Audio circuitry 305 can be used to provide an audio interface between a user and an electronic device via a speaker and a microphone. Audio circuitry 305 converts received audio data into electrical signals, transmits them to the speaker, and the speaker converts them into sound signals for output. Conversely, the microphone converts collected sound signals into electrical signals, which are then received by audio circuitry 305, converted back into audio data, and then processed by processor 301 before being transmitted via radio frequency circuitry 304 to, for example, another electronic device, or output to memory 302 for further processing. Audio circuitry 305 may also include an earphone jack to facilitate communication between peripheral headphones and electronic devices.

[0127] The input unit 306 can be used to receive source audio, reference audio, etc.

[0128] Power supply 307 is used to supply power to various components of electronic device 300. Optionally, power supply 307 can be logically connected to processor 301 through a power management system, thereby enabling functions such as charging, discharging, and power consumption management through the power management system. Power supply 307 may also include one or more DC or AC power supplies, recharging systems, power fault detection circuits, power converters or inverters, power status indicators, and other arbitrary components.

[0129] although Figure 7 As not shown in the diagram, the electronic device 300 may also include a camera, sensor, wireless fidelity module, Bluetooth module, etc., which will not be described in detail here.

[0130] In the above embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions in other embodiments.

[0131] Those skilled in the art will understand that all or part of the steps in the various methods of the above embodiments can be performed by instructions, or by instructions controlling related hardware. These instructions can be stored in a computer-readable storage medium and loaded and executed by a processor.

[0132] Therefore, embodiments of this application provide a computer-readable storage medium storing multiple computer programs that can be loaded by a processor to execute any of the game process management methods provided in this application. The computer program can execute the following steps of the game process management method: It is applied to the game process management system. The system includes game service nodes, which include control nodes and process management nodes. The process management nodes are used to control the state of the game process, and the control nodes are used to manage their corresponding process management nodes and obtain the state association information of the game process controlled by the process management nodes they manage at a preset period. In response to a game process allocation request from a target game user, target routing information is determined based on the state association information obtained by the control node. The target routing information includes control nodes that can be used to respond to the game process allocation request. Based on the target routing information, the target control node and the target process management node are determined; The target control node sends a game process allocation request to the target process management node and obtains the request result, which includes the target game process that meets the preset state conditions as determined by the target process management node. The target game process is assigned to the target game user through the target control node, so that the target game user can play the game based on the target game process.

[0133] The computer-readable storage medium provided in this application embodiment can be applied to a game process management system. The system includes a game service node, which includes a control node and a process management node. The process management node controls the state of the game process, and the control node manages its corresponding process management node. It acquires state-related information of the game processes controlled by the managed process management node at preset intervals. In response to a game process allocation request from a target game user, it determines target routing information based on the state-related information acquired by the control node. The target routing information includes the control node that can be used to respond to the game process allocation request. Based on the target routing information, it determines a target control node and a target process management node. It sends a game process allocation request to the target process management node through the target control node, obtaining a request result containing the target game process that meets preset state conditions as determined by the target process management node. Finally, it allocates the target game process to the target game user through the target control node, enabling the target game user to play the game based on the target game process. Thus, by providing a universal game process management system, the implementation process of the game process management service is extracted from the game function development process, reducing repetitive work for developers and improving development speed.

[0134] For details on the implementation of each of the above operations, please refer to the previous examples, which will not be repeated here.

[0135] The computer-readable storage medium may include: read-only memory (ROM), random access memory (RAM), disk or optical disk, etc.

[0136] Since the computer program stored in the computer-readable storage medium can execute any of the game process management methods provided in the embodiments of this application, it can achieve the beneficial effects that any of the game process management methods provided in the embodiments of this application can achieve, as detailed in the preceding embodiments, and will not be repeated here.

[0137] According to one aspect of this application, a computer program product or computer program is also provided, comprising computer instructions stored in a computer-readable storage medium. A processor of an electronic device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the electronic device to perform the methods provided in the various optional implementations of the above embodiments.

[0138] In the above embodiments of the game process management device, computer-readable storage medium, electronic device, and computer program product, the descriptions of each embodiment have different focuses. Parts not described in detail in a particular embodiment can be referred to in the relevant descriptions of other embodiments. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes and beneficial effects of the game process management device, computer-readable storage medium, computer program product, electronic device, and their corresponding units described above can be referred to the description of the game process management method in the above embodiments, and will not be repeated here.

[0139] The foregoing has provided a detailed description of a game process management method, apparatus, electronic device, computer-readable storage medium, and computer program product provided in the embodiments of this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the above embodiments are only for the purpose of helping to understand the method and core ideas of this application. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this application. Therefore, the content of this specification should not be construed as a limitation of this application.

Claims

1. A game progress management method characterized by comprising: The application is applied to a game process management system, the system comprises game service nodes, the game service nodes comprise control nodes and process management nodes, the process management nodes are used for controlling the state of game processes, the control nodes are used for managing the corresponding process management nodes, and the state associated information of the game processes controlled by the process management nodes managed by the control nodes is acquired in a preset period; the method comprises the following steps: In response to a game process allocation request of a target game user, target routing information is determined based on the state associated information acquired by the control nodes, wherein the target routing information comprises control nodes that can be used to respond to the game process allocation request; Based on the target routing information, a target control node and a target process management node are determined; The game process allocation request is sent to the target process management node through the target control node, and a request result is obtained, wherein the request result comprises a target game process determined by the target process management node to meet a preset state condition; The target game process is allocated to the target game user through the target control node, so that the target game user plays a game based on the target game process.

2. The game progress management method according to claim 1, characterized by, The game process management system comprises routing information, the routing information comprises routing identifiers and routing values, wherein the routing identifiers comprise node identifiers used for identifying control nodes, and the routing values are determined based on the state associated information acquired by the corresponding control nodes of the node identifiers; The target control node is determined based on the size relationship of the routing values in the target routing information. The target process management node is determined according to the state associated information of the process management nodes controlled by the target control node. The game process management system is respectively deployed on host computers distributed in multiple regions, each of the host computers is deployed with multiple process management nodes and control nodes, and the control nodes are used for managing the process management nodes deployed on at least one of the host computers.

3. The game progress management method according to claim 2, characterized by, The routing identifiers further comprise region identifiers used for identifying regions; 4. The game progress management method according to claim 3, characterized by, The target routing information is acquired in response to the game process allocation request of the target game user, comprising the following steps: In response to the game process allocation request of the target game user, based on the region where the target game user is located and / or the network associated information of the game process allocation request, a plurality of candidate regions with priority and the region identifiers of each of the candidate regions are determined from multiple regions; The routing information in the target routing information is matched with the region identifiers of the candidate regions; The target control node is determined based on the size relationship of the routing values of the target region in the target routing information, and the target region is determined based on the priority of each of the candidate regions. ​ ​ 5. The game progress management method according to claim 4, characterized by, The state-related information includes an idle rate, and the state-related information of the process management node controlled by the target control node is used to determine the target process management node, including: From the process management nodes controlled by the target control node, candidate process management nodes under each host in the target region are determined; The target process management node is determined from the candidate process management nodes according to the idle rate of the candidate process management nodes.

6. The game progress management method according to claim 4, characterized by, The method further includes: In the case that the request result indicates a request failure, and the number of times of sending the game process allocation request to the process management node based on the game process allocation request does not reach a preset number of times, a new target control node and a new target process management node in the target region are determined; In the case that the request result indicates a request failure, and the number of times of sending the game process allocation request to the process management node based on the game process allocation request reaches the preset number of times, a new target region is determined based on the priority of each candidate region, and a new target control node and a new target process management node in the new target region are determined; The step of sending the game process allocation request to the target process management node through the target control node to obtain a request result is returned.

7. The game progress management method according to claim 3, characterized by, The method further includes: In response to a game data update event, a first update sequence and a second update sequence are determined, wherein the first update sequence is used to indicate an update sequence of the game process management systems deployed in different regions; and the second update sequence is used to indicate an update sequence of each game process management system deployed on each host distributed in the same region; Based on the first update sequence and the second update sequence, the game process management systems deployed on each host distributed in different regions are executed for rolling update.

8. The game progress management method according to claim 2, characterized by, The process management node is used to manage the whole life cycle of a game process, and the process management node updates state-related information of the game process based on a life cycle state of the game process controlled thereby, and synchronizes the state-related information of the game process to a corresponding control node.

9. The game progress management method according to claim 2, characterized by, The method further includes: In response to an information update event of a control node, updated state-related information of the control node is determined; Based on the updated state-related information, a route value in the routing information indicated by the route identifier of the control node is updated; The information update event includes at least one of the following: A game process allocation event, or a game process start event, or a game process destruction event, in response to which the process management node managed by the control node responds to a game process allocation request of a target game user; A service stop event of a game service node to which the control node belongs.

10. The game progress management method according to claim 9, characterized by, The method further includes: In the case that the information update event is the service stop event, before the service of the game service node where the control node is located is stopped, state-related information of the process management node and state information of the game process controlled by the process management node are recorded; When the service of the game service node where the control node is located is stopped, the state-related information is determined to be empty. When service of the game service node where the control node is located is recovered, the recovery is performed according to the recorded state association information and the state information.

11. The game progress management method according to any one of claims 1 to 10, characterized by, The state of the game process includes a first state indicating that the game process is not started, a second state indicating that the game process is started but not allocated, and a third state indicating that the game process is allocated, the state association information includes an idle rate, and the idle rate is used to indicate a proportion of the game process in the second state, and the method further includes: Monitoring the idle rate of the process management node; In a case where the idle rate is lower than a preset idle rate, a preset number of game processes are switched from the first state to the second state, and the preset number includes a number determined based on the preset idle rate.

12. The game progress management method according to claim 11, characterized by, The sending of the game process allocation request to the target process management node by the target control node includes: The sending of the game process allocation request to the target process management node by the target control node includes:

13. A game progress management apparatus characterized by comprising: The game process management system includes a game service node, the game service node includes a control node and a process management node, the process management node is used to control the state of a game process, and the control node is used to manage the corresponding process management node. The information acquisition module is used to determine target routing information based on the state association information acquired by the control node in response to a game process allocation request of a target game user, and the target routing information includes a control node that can be used to respond to the game process allocation request. The node determination module is used to determine a target control node and a target process management node based on the target routing information. The request module is used to send the game process allocation request to the target process management node by the target control node to obtain a request result, and the request result includes a target game process determined by the target process management node to meet a preset state condition. The allocation module is used to allocate the target game process to the target game user by the target control node, so that the target game user plays a game based on the target game process.

14. An electronic device, comprising: The computer program is stored in the memory and causes the processor to execute the steps of the game process management method in any one of claims 1-12 when the computer program is executed by the processor.

15. A computer-readable storage medium, characterized in that, The computer program is stored in the memory and causes the processor to execute the steps of the game process management method in any one of claims 1-12 when the computer program is executed by the processor.