Game service process migration method and device, equipment and storage medium

By creating a second game process and migrating the game process when the game process reaches a threshold, the problem of short-term operation caused by memory leaks in the DS process is solved, enabling long-term operation of the game and improving its playability.

CN121658159APending Publication Date: 2026-03-13TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-11
Publication Date
2026-03-13

AI Technical Summary

Technical Problem

In existing technologies, due to memory leaks in the DS process, game business processes can only be used for short game sessions, which limits the development of gameplay and the implementation of long-term business processes.

Method used

When the runtime of the first game service process reaches a threshold, a second game service process is created, and the first game service is migrated to the second game service process. The lifecycle of the game service process is managed through the service process management service to ensure the long-term operation of the game service.

Benefits of technology

By migrating the game business process, the operating time of the game business was extended, the playability of the games was improved, and the development of the game business was promoted.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121658159A_ABST
    Figure CN121658159A_ABST
Patent Text Reader

Abstract

The invention discloses a game service process migration method and device, equipment and a storage medium, and relates to the technical field of computers. The method comprises the following steps: a business process management service creates a second game business process under the condition that the running duration of a first game business process reaches a threshold value; the business process management service sends a process closing notification to the first game business process under the condition that the second game business process is successfully created; after the business process management service detects that the first game business process is closed, a second game business process is triggered to load business data; and the second game service process provides address information of the second game service process to the first client under the condition that the service data is successfully loaded. By migrating the first game service to the second game service process, the first game service is continuously provided, so that the running time of the first game service is prolonged, and the development of the game service is promoted.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular to a method, apparatus, device, and storage medium for migrating game business processes. Background Technology

[0002] By using DS (Dedicated Server) to host game operations, Unreal Engine naturally supports isomorphic development of client and server, meaning that the game product's client and server can be written simultaneously using this engine, making coding and production tools more unified and convenient.

[0003] In related technologies, considering the memory leak issue of DS (Display Controller), long game sessions are avoided in the game service design, i.e., the gameplay carried by DS. During the game, when a user enters a new game, the server-provided room service first sends initial information about the game room (such as gameplay information and game map information) to the DS process management service. This service starts a new DS process and sends the information from the room service to the DS process, returning the result to the room service. If the DS process starts successfully, the room service sends the user's identity information to the DS process, and the DS process reserves resources for the user (such as preloading the user's spawn location). Then, it notifies the client of the DS process's IP address and port, and the user enters the newly started DS process on the client to start the game.

[0004] However, the DS process technology mentioned above suffers from memory leaks, which cause the client side to disconnect and reconnect after the DS process crashes. This technology is only suitable for short game sessions, which greatly limits the development of gameplay. Summary of the Invention

[0005] This application provides a method, apparatus, device, and storage medium for migrating game service processes. The technical solution provided by this application is as follows:

[0006] According to one aspect of the embodiments of this application, a method for migrating a game service process is provided, the method comprising:

[0007] When the runtime of the first game service process reaches a threshold, the service management service creates a second game service process. The first game service process is used to provide the first game service to the first client, and the service management service is used to manage the game service process.

[0008] When the second game business process is successfully created, the business process management service sends a process shutdown notification to the first game business process. The process shutdown notification is used to instruct the first game business process to be shut down.

[0009] After the business process management service detects that the first game business process has been closed, it triggers the second game business process to load the business data of the first game business process.

[0010] When the service data is successfully loaded, the second game service process provides the address information of the second game service process to the first client. The address information of the second game service process is used by the first client to connect to the second game service process. The second game service process is used to continue providing the first game service to the first client based on the service data.

[0011] According to one aspect of the embodiments of this application, a migration device for a game service process is provided, the device comprising:

[0012] The business process management service module is used to create a second game business process when the runtime of the first game business process reaches a threshold value. The first game business process is used to provide the first game service to the first client, and the business process management service is used to manage the game business process.

[0013] The business process management service module is used to send a process shutdown notification to the first game business process when the second game business process is successfully created. The process shutdown notification is used to instruct the first game business process to be shut down.

[0014] The business process management service module is used to trigger the second game business process to load the business data of the first game business process after detecting that the first game business process has been closed.

[0015] The second game service process module is used to provide the address information of the second game service process to the first client when the service data is successfully loaded. The address information of the second game service process is used by the first client to connect to the second game service process. The second game service process is used to continue to provide the first game service to the first client based on the service data.

[0016] According to one aspect of the embodiments of this application, a server is provided, the server including a processor and a memory, the memory storing a computer program, the computer program being loaded and executed by the processor to implement the above-described method for migrating game business processes.

[0017] According to one aspect of the embodiments of this application, a computer-readable storage medium is provided, wherein a computer program is stored in the computer-readable storage medium, and the computer program is loaded and executed by a processor to implement the above-described method for migrating game business processes.

[0018] According to one aspect of the embodiments of this application, a computer program product is provided, the computer program product including a computer program, the computer program being loaded and executed by a processor to implement the above-described method for migrating game business processes.

[0019] The technical solution provided in this application can bring the following beneficial effects:

[0020] By creating a second game service process when the runtime of the first game service process reaches a threshold, the first game service can be migrated to the second game service process before a memory leak occurs. This allows the second game service process to continue providing the first game service to the first client. Compared to related technologies where the DS process technology has memory leak issues that limit the game service process to short-term operation, this application extends the runtime of the first game service by migrating it, enabling a long-term running solution for the first game service, improving the game's playability, and promoting the development of the game service. Attached Figure Description

[0021] Figure 1 This is a schematic diagram of a computer system provided in one embodiment of this application;

[0022] Figure 2 This is a schematic diagram of the management architecture for the game business process provided by related technologies;

[0023] Figure 3 It is a sequence diagram of the participation process of the game business provided by related technologies;

[0024] Figure 4 This is a schematic diagram of the interface for entering the first game service process on the client side according to an embodiment of this application;

[0025] Figure 5 This is a flowchart of a game service process migration method provided in one embodiment of this application;

[0026] Figure 6 This is a schematic diagram illustrating the migration process of a service recovery service provided in one embodiment of this application;

[0027] Figure 7 This is a timing diagram of the migration process of a game service process provided in one embodiment of this application;

[0028] Figure 8 This is a flowchart of a method for starting a game service process according to an embodiment of this application;

[0029] Figure 9This is a timing diagram of a method for starting a game service process according to an embodiment of this application;

[0030] Figure 10 This is a timing diagram of a method for starting a game service process according to an embodiment of this application;

[0031] Figure 11 This is a flowchart of a recovery method for a game service process crash scenario provided in one embodiment of this application;

[0032] Figure 12 This is a timing diagram of the recovery process in a game service process crash scenario provided in one embodiment of this application;

[0033] Figure 13 This is a block diagram of a game service process migration device provided in one embodiment of this application;

[0034] Figure 14 This is a structural block diagram of a server provided in one embodiment of this application. Detailed Implementation

[0035] To make the objectives, technical solutions, and advantages of this application clearer, the embodiments of this application will be described in further detail below with reference to the accompanying drawings.

[0036] Please refer to Figure 1 This illustration shows a schematic diagram of a computer system provided in one embodiment of this application. This computer system can be implemented as a migration system for business processes. The computer system may include: a terminal device 10 and a server 20.

[0037] There may be one or more terminal devices 10. Terminal devices 10 may be electronic devices such as mobile phones, tablets, laptops, desktop computers, game consoles, e-book readers, multimedia playback devices, wearable devices, smart voice interaction devices, smart home appliances, vehicle terminals, aircraft, etc.

[0038] The terminal device 10 can install a client of the target application. The target application has the function of running game processes, allowing users to join game matches and participate in the game process. This application does not limit the type of the target application, including but not limited to game applications, web applications, social applications, etc. Optionally, the target application can be an application that requires downloading and installation, or it can be an application that can be used instantly; this application does not limit the type of application.

[0039] Server 20 provides background services for clients of the target application installed and running on terminal device 10. For example, server 20 can be a background server for the aforementioned application. Server 20 can be a standalone physical server, a server cluster consisting of multiple servers, or a cloud computing service center. Optionally, server 20 can simultaneously provide background services for applications on multiple terminal devices 10. Terminal devices 10 and server 20 can communicate with each other via a network.

[0040] Server 20 includes a running first game service process, a service process management service, a service recovery service, and a room service. The first game service process provides the first game service to the first client; the service process management service manages the game service process; the service recovery service manages the migration process of the game service; and the room service manages the service processes of the service process management service. The room service, service process management service, service recovery service, and game service process mentioned here can be deployed on the same server or on multiple different servers; this application does not impose any limitation on this.

[0041] In some embodiments, the same business service may be deployed on one server or distributed across multiple different servers; this application does not limit this.

[0042] In related technologies, a schematic diagram of the management architecture for game business processes can be found here. Figure 2 As shown, the management architecture of the business process includes the client, room service, business process management service, and game business process. 1. The client sends a start notification to the room service on the server. This start notification carries initial information about the game business process (such as gameplay information, game map information, etc.). 2. The room service requests the business process management service to start the game business process based on the start notification. 3. The business process management service starts the game business process. 4. The game business process returns a successful start notification to the business process management service. 5. The business process management service returns a successful start notification to the room service. 6. If the game business process has started successfully, the room service loads object data into the game business process. This object data refers to the identity data of the object (virtual character) running on the client. 7. The game business process returns a successful data loading notification to the room service. 8. If the data loading has been successful, the room service sends the game business process's address information (IP and port) to the client. 9. The client connects to the game business process based on its address information.

[0043] A sequence diagram of the participation process in the game business can be referenced. Figure 3As shown, S1, the client sends a notification to the room service on the server to start the business process. S2, the room service sends a request to the business process management service to create the game business process. S3, the business process management service creates the game business process and transmits business information to it. S4, the game business process returns the creation result to the business process management service. S5, the business process management service returns the creation result to the room service. S6, if the creation result indicates failure, the room service returns a notification of process creation failure to the client. If the creation result indicates success, the room service loads object data into the game business process. S7, the game business process returns a notification of successful loading to the room service. S8, the room service sends the address information of the game business process to the client. S9, the client connects to the game business process based on its address information.

[0044] The methods for participating in game business processes in related technologies only focus on starting and stopping the game business processes, without managing their lifecycle. Furthermore, due to memory leaks at the underlying technical level of game business processes, which are difficult to locate and resolve, the current technologies are only applicable to short game sessions. This greatly limits the development of gameplay, restricts the implementation and deployment of long-term business processes, and affects the development of game businesses.

[0045] In this embodiment, when the runtime of the first game service process reaches a threshold, the service process management service creates a second game service process based on the first service creation notification sent by the room service. Upon successful creation of the second game service process, the first game service process disconnects from the first client and stores its service data in the database. After detecting that the first game service process has finished closing, the service process management service triggers the second game service process to load its service data based on the service startup notification sent by the service recovery service. Upon successful loading of its service data, the second game service process triggers the room service to send the address information of the second game service process to the first client, enabling the first client to connect to the second game service process and thus continuing to provide the first game service to the first client, achieving long-term game service operation.

[0046] For example, a schematic diagram of the user interface entering the first game service process on the client can be referred to. Figure 4As shown, when a user clicks to participate in the first game service (game match), the service joining interface 410 is displayed. The service joining interface 410 indicates that the client is obtaining the address information of the first game service process from the server. After the client receives the address information of the first game service process, the client jumps to display the service participation interface 420. The service participation interface 420 indicates that the client has connected to the first game service process, and the user can participate in the first game service in the service participation interface 420.

[0047] Please refer to Figure 5 This document illustrates a flowchart of a game service process migration method according to an embodiment of this application. The executing entity for each step of this method can be a server. The method may include at least one of the following steps 510-540:

[0048] Step 510: If the runtime of the first game business process reaches the threshold, the business process management service creates a second game business process.

[0049] The first game service process is used to provide the first game service to the first client, and the service process management service is used to manage the game service process.

[0050] The server contains a running first game application process. This first game application process is written in DS (Dynamic Design). Therefore, after its runtime reaches a threshold, it suffers from a memory leak. This means the total memory usage of the first game application process continuously increases, but dynamically allocated heap memory is not released or cannot be released for some reason, resulting in wasted system memory resources and serious consequences such as slowed program execution or even system crashes. Therefore, when the runtime of the first game application process reaches the threshold, a second game application process needs to be created. This migrates the game services provided to the client by the first application process to the second application process, ensuring long-term game operation and improving user experience.

[0051] The first game service process is created in response to the first service activation request sent by the first client, and is used to provide the first game service to the first client. The first client can be a client of a target application running on any terminal device. The first client runs a first object, which refers to the virtual character corresponding to the user account running on the first client. After the first game service process is successfully created, the first object can participate in the first game service provided by the first game service process on the first client. The creation process of the first game service process can be referred to below. Figure 8 The embodiments shown are not described here.

[0052] The business process management service manages game business processes, including the creation, starting, and closing of these processes. The first game business process is also created by this service. When the runtime of the first game business process reaches a threshold, the service creates a second game business process. This application does not limit the size of the threshold; it is specifically related to the type and memory size of the first game business process.

[0053] The second game service process is a new game service process created separately on the server to continue providing the first game service to the first client. Therefore, the second game service process is a game service process that runs based on the service data of the first game service process.

[0054] Step 520: If the second game business process is successfully created, the business process management service sends a process shutdown notification to the first game business process.

[0055] The process shutdown notification is used to instruct the shutdown of the first game service process.

[0056] After confirming the successful creation of the second game service process, the second game service process continues to provide the first game service to the first client. The first game service process no longer needs to be running. In order to save memory resources, the first game service process can be shut down.

[0057] The business process management service sends a process shutdown notification to the first game business process to notify the first game business process to shut down automatically.

[0058] In some embodiments, after step 520, the first game service process disconnects from the first client and stores the service data of the first game service process in the database.

[0059] Before the first game service process is shut down, the business data of the first game service process needs to be stored in the database so that the second game service process can retrieve the business data of the first game service process from the database and continue to provide the first game service to the first client.

[0060] Before the first game business process stores its business data in the database, it is necessary to disconnect the connection between the first game business process and the first client. This is to prevent the first game business process from maintaining a connection with the first client, which would cause the first game business process to continuously generate new business data, resulting in an excessive amount of business data stored in the database, including useless business data.

[0061] Therefore, after the first game business process receives the process shutdown notification sent by the business process management service, it first disconnects from the first client to prevent the first game business process from generating new business data, and then the first game business process stores its business data in the database.

[0062] In some embodiments, if the first game service process stores the service data generated within the first time period to the database every first time period, then the service data of the first game service process stored in the database refers to the service data generated by the first game service process between the last time point of storage and the current time point.

[0063] In some embodiments, if the first game service process does not periodically store service data into the database, then the service data of the first game service process stored in the database refers to all service data generated during the runtime of the first game service process.

[0064] After storing its business data in the database, the first game business process automatically shuts down.

[0065] Step 530: After detecting that the first game business process has been closed, the business process management service triggers the second game business process to load business data.

[0066] After sending a process shutdown notification to the first game business process, the business process management service promptly obtains the dynamic information of the first game business process. After detecting that the first game business process has been shut down, it triggers the second game business process to execute the step of loading business data.

[0067] Step 540: If the business data is successfully loaded, the second game business process provides the address information of the second game business process to the first client.

[0068] The address information of the second game service process is used for the first client to connect to the second game service process, and the second game service process is used to continue to provide the first game service to the first client based on the service data.

[0069] Successfully loading business data into the second game business process means that the second game business process loads the business data of the first game business process from the database into the second game business process, enabling the second game business process to continue running the first game business based on the business data.

[0070] If the business data is successfully loaded, the second game business process will provide the address information of the second game business process to the first client, so that the first client can connect to the second game business process according to the address information of the second game business process, and the second game business process can continue to provide the first game business to the first client based on the business data.

[0071] The address information of the second game service process includes, but is not limited to, the IP (Internet Protocol) information, port information, and subnet mask information of the second game service process.

[0072] The technical solution provided in this application creates a second game service process when the runtime of the first game service process reaches a threshold. This allows the first game service to be migrated to the second game service process before a memory leak occurs in the first game service process. The second game service process then continues to provide the first game service to the first client. Compared to related technologies where the DS process technology has a memory leak problem that limits the game service process to short-term operation, this application extends the runtime of the first game service by migrating it, enabling a long-term running solution for the first game service, improving the game's playability, and promoting the development of the game service.

[0073] In some embodiments, the server management architecture includes, in addition to the first running game service process and the service process management service, a room service, a service recovery service, a database, and the second game service process created in step 510. The room service manages the service process of the service process management service; that is, the room service needs to obtain the management status of the game service processes of the service process management service in a timely manner, and the room service manages the information transmission between the server and the client. The service recovery service manages the migration process of the game service. The database stores the basic data and business data of each game service process. The basic data of the game service process refers to the data required for the game service process to run the game service, and the business data of the game service process refers to the data generated during the loading process of the game service process. The second game service process continues to provide the first game service to the first client after the first game service process is shut down. Based on the above server management architecture, the game service process migration method can be implemented as detailed below.

[0074] In some embodiments, step 510 includes at least one of sub-steps 511 to 513 (not shown in the figures).

[0075] Sub-step 511: When the runtime of the first game business process reaches the threshold, the business process management service sends a process migration request to the room service. The process migration request is used to request the migration of the first game business process to the second game business process.

[0076] The process migration request is used to request the room service to migrate the first game service to a new game service process.

[0077] Sub-step 512: Based on the process migration request, the room service records the migration logic of the first game service and sends a first service creation notification to the service process management service. The first service creation notification is used to instruct the service process management service to create a second game service process.

[0078] The migration logic for the first game service is used to indicate the migration process of the first game service, specifically referring to the migration steps of the first game service. The first service creation notification is a service creation notification issued by the service process management service based on the process migration request. It is used to instruct the service process management service to create a second game service process to migrate the service data of the first game service process to the second game service process.

[0079] Sub-step 513: The business process management service creates the second game business process based on the first business creation notification.

[0080] By having the business process management service send a process migration request to the room service, the room service can promptly obtain process information about the first game business process whose runtime has reached a threshold value. This allows the room service to record the migration logic of the first game business, send a first business creation notification to the business process management service, and notify the business process management service to create a second game business process. This obtains authorization for the migration of the game business process and improves the feasibility of migrating the game business process.

[0081] In some embodiments, sub-step 513 is followed by at least one of sub-steps 514 to 516 (not shown in the figures).

[0082] Sub-step 514: The business process management service sends the first creation result to the room service. The first creation result is used to indicate whether the second game business process was created successfully or failed to create.

[0083] After the business process management service creates the second game business process, the second game business process returns the first creation result (the creation result of the second game business process) to the business process management service. Because the business process management service needs to promptly notify the room service of the management status of the game business processes, it sends the first creation result to the room service.

[0084] Sub-step 515: If the first creation result indicates that the second game business process has been successfully created, the room service records the shutdown logic of the first game business process and triggers the business process management service to send a process shutdown notification to the first game business process.

[0085] If the first creation result indicates that the second game service process has been created successfully, and the shutdown logic of the first game service process needs to be executed, then the room service records the shutdown logic of the first game service process, that is, records the shutdown steps of the first game service process. Then, the room service sends a process shutdown notification to the service process management service. After receiving the process shutdown notification sent by the room service, the service process management service sends a process shutdown notification to the first game service process, which is used to instruct the shutdown of the first game service process.

[0086] By having the business process management service send the first creation result to the room service, the room service can promptly obtain the creation result of the second game business process. Based on the creation result, it can execute the corresponding program logic. If the first creation result indicates that the second game business process has been successfully created, the closing logic of the first game business process is recorded, and the business process management service is triggered to send a process closing notification to the first game business process. The room service decides to execute the logic, which ensures the fairness of the logic execution and improves the feasibility of migrating the game business process.

[0087] Sub-step 516: If the first creation result indicates that the second game service process has failed to create, the room service disconnects from the first client.

[0088] Disconnecting from the first client here means disconnecting the room service from the first client, that is, disconnecting the connection between the server and the first client.

[0089] By disconnecting the connection with the first client when the first creation result indicates that the creation of the second game service process has failed, the user is notified that the process migration has failed, allowing the user to make timely decisions on process operations after the process migration fails, thus improving the user's gaming experience.

[0090] In some embodiments, step 530 includes at least one of sub-steps 531 to 535 (not shown in the figures).

[0091] Sub-step 531: After detecting that the first game service process has been shut down, the service process management service sends a service recovery notification to the service recovery service. The service recovery service is used to manage the migration process of the game service, and the service recovery notification is used to instruct the service recovery service to continue to provide the first game service to the first client.

[0092] The server can contain multiple room services and multiple business process management services. Each room service manages the service processes of multiple business process management services, and each business process management service manages multiple game business processes. The business recovery service records the association between the first game business process and its corresponding room service, as well as the association information between the first game business process and its corresponding business process management service.

[0093] Sub-step 532: The service recovery service sends a service startup request to the room service based on the service recovery notification. The room service is used to manage the service process of the service process management service. The service startup request is used to request the room service to start the second game service process.

[0094] Based on the business recovery notification and the association between the first game business process and the corresponding room service, the business recovery service sends a business start request to the corresponding room service to request the room service to start the second game business process.

[0095] In sub-step 533, the room service records the startup logic of the second game business process based on the business startup request and sends a business startup notification to the business process management service.

[0096] The startup logic for the second game service process is used to indicate the startup procedure of the second game service process, specifically referring to the startup steps of the second game service process. The service startup notification is used to instruct the service process management service to start the second game service process.

[0097] Sub-step 534: The business process management service starts the second game business process according to the business startup notification.

[0098] Sub-step 535: If the second game business process starts successfully, the business process management service will trigger the second game business process to load business data.

[0099] After detecting the completion of the shutdown of the first game service process, a service recovery notification is sent to the service recovery service, which then sends a service startup request to the room service. The service recovery service manages the migration process of the game service, obtains authorization for the migration of the game service process, and improves the feasibility of migrating the game service process.

[0100] In some embodiments, when the business process management service successfully starts the second game business process, it triggers the room service to load the first object data into the second game business process. The first object data refers to the identity data of the first virtual character running on the first client. When the second game business process successfully loads the first object data, it loads business data from the database.

[0101] Upon successful startup of the second game business process, the business process management service sends a startup success notification to the room service. Based on this notification, the room service loads the first object data into the second game business process. The first object data is the object data sent by the first client to the room service when the first game business process starts. This first object data is the identity data of the first virtual character running on the first client. The first virtual character refers to the virtual character corresponding to the user account running on the first client. The identity data of the first virtual character includes, but is not limited to, the first virtual character's identifier data, level data, and configuration data.

[0102] Upon successful loading of the first object data, the second game service process loads the service data of the first game service process from the database. This completes the loading of both the first object data and the first game service process's service data. Since the first game service process's service data includes its basic data, the second game service process does not need to load the first game service's basic data to continue running the first game service.

[0103] By loading the first object data into the second game service process after the second game service process has been successfully started, and then loading the service data from the database into the second game service process, the data loading of the second game service process is completed. This allows users to continue using the first game service on the client side, enabling longer game sessions and improving the user's gaming experience.

[0104] In some embodiments, if the service recovery service is not subscribed to when the first game service process is created, the room service assumes the function of the service recovery service. After detecting that the first game service process has finished shutting down, the service process management service sends a service startup request to the room service. The room service manages the service process of the service process management service, and the service startup request requests the room service to start the second game service process. Based on the service startup request, the room service records the startup logic of the second game service process and sends a service startup notification to the service process management service. Based on the service startup notification, the service process management service starts the second game service process. If the second game service process starts successfully, the service process management service triggers the second game service process to load service data.

[0105] By having the room service handle the business recovery service, the steps involved in migrating the game business are reduced, the efficiency of the game business migration is improved, and the memory space for the business recovery service can be saved by avoiding the need to create a separate memory area on the server.

[0106] In some embodiments, step 540 includes at least one of sub-steps 541 to 542 (not shown in the figures).

[0107] In sub-step 541, if the business data is successfully loaded, the second game business process sends a loading success notification to the room service. The loading success notification is used to instruct the room service to send the address information of the second game business process to the first client.

[0108] The successful loading notification is used to inform the room service that the second game business process has completed loading the first object data and the business data of the first game business process, thereby instructing the room service to send the address information of the second game business process to the first client.

[0109] In sub-step 542, the room service sends the address information of the second game service process to the first client based on the successful loading notification.

[0110] The address information of the second game service process is used for the first client to connect to the second game service process, and the second game service process is used to continue to provide the first game service to the first client based on the service data.

[0111] By having the second game service process send its address information to the first client via the room service, the migration process of the game service conforms to the migration logic, ensuring the fairness of the logic execution and improving the feasibility of migrating the game service process.

[0112] Figure 6 The diagram illustrates the migration process of the service recovery service. 1. The first game service process disconnects from the first client. 2. The service process management service sends a service recovery notification to the service recovery service, instructing it to continue providing the first game service to the first client. 3. The service recovery service sends a service startup request to the room service, requesting it to start the second game service process. 4. The room service sends a service startup notification to the service process management service. 5. The service process management service starts the second game service process. 6. The second game service process returns a startup success notification to the service process management service. 7. The service process management service sends a startup success notification to the room service. 8. The room service loads the first object data into the second game service process. 9. The second game service process loads service data from the database. 10. The database returns a loading success notification to the second game service process. 11. The second game service process sends a loading success notification to the room service. 12. The room service sends the address information of the second game service process to the first client. 13. The first client connects to the second game service process based on its address information.

[0113] Figure 7The sequence diagram illustrates the migration process of the game service process. Z1: When the runtime of the first game service process reaches a threshold, the service process management service sends a process migration request to the room service, requesting the migration of the first game service to the second game service process. Z2: The room service sends a first service creation notification to the service process management service, instructing the service process management service to create the second game service process. Z3: The service process management service creates the second game service process. Z4: The second game service process returns a first creation result to the service process management service. Z5: The service process management service returns a first creation result to the room service. Z6: If the first creation result indicates that the creation of the second game service process failed, the process migration fails, the room service disconnects from the first client, and does not execute subsequent steps; if the first creation result indicates that the creation of the second game service process was successful, the room service sends a process shutdown notification to the service process management service. Z7: The service process management service sends a process shutdown notification to the first game service process. Z8: The first game service process disconnects from the first client. Z9: The first game service process stores its service data in the database. Z10. The database returns a storage success notification to the first game service process. Z11. The first game service process is shut down, and a shutdown completion notification is sent to the service process management service. Z12. The service process management service sends a shutdown completion notification to the room service. Z13. The service process management service sends a service recovery notification to the service recovery service. Z14. The service recovery service sends a service startup request to the room service. Z15. The room service sends a service startup notification to the service process management service. Z16. The service process management service starts the second game service process. Z17. The second game service process returns a startup success notification to the service process management service. Z18. The service process management service sends a startup success notification to the room service. Z19. The room service loads the first object data into the second game service process. Z20. The second game service process loads service data from the database. Z21. The database returns a loading success notification to the second game service process. Z22. The second game service process sends a loading success notification to the room service. Z23. The room service sends the address information of the second game service process to the first client. Z24, the first client connects to the second game service process based on the address information of the second game service process.

[0114] Please refer to Figure 8 This document illustrates a flowchart of a method for initiating a game service process according to an embodiment of this application. The execution entity for each step of this method can be a server. This method is executed prior to the aforementioned method for migrating the game service process. The method may include at least one of the following steps 810 to 890:

[0115] Step 810: The room service receives the service activation request sent by the first client.

[0116] The service activation request includes first object data, which refers to the identity data of the first virtual character running on the first client.

[0117] The service activation request is used to request the room service to create the first game service process. The service activation request also includes indication information of the first game service, such as the identification information of the first game service and the detailed information of the first game service.

[0118] Step 820: Based on the business start request, the room service triggers the business process management service to create the first game business process.

[0119] Upon receiving the service activation request, the room service sends a third service creation notification to the service process management service. This notification instructs the service process management service to create the first game service process. After receiving the notification, the service process management service creates the first game service process. The first game service process then returns a third creation result to the service process management service, indicating whether the creation was successful or failed.

[0120] Step 830: If the first game service process is successfully created, the room service sends a subscription request to the service recovery service.

[0121] The subscription request is used to request the business recovery service to obtain the association relationship between the first game business process and the room service, as well as the association information between the first game business process and the business process management service from the business process management service.

[0122] The subscription request is used to request the business recovery service to subscribe to the association information of the first game business process from the business process management service. This includes the association between the first game business process and the room service, as well as the association information between the first game business process and the business process management service. Based on the association information of the first game business process, the business recovery service manages the migration process of the game business process.

[0123] In some embodiments, if the room service fails to create the first game service process, it returns a notification message to the first client indicating that the process creation failed.

[0124] Step 840: If the service subscription for business recovery is successful, the room service loads the first object data into the first game business process.

[0125] By subscribing to the service recovery service after receiving the service activation request from the first client, the migration process of the game service can be managed through the service recovery service during the game service migration, laying the foundation for the execution logic of the game service migration and enabling the game service migration solution to be implemented.

[0126] In some embodiments, if the service recovery service is not subscribed when the first game service process is created, it is not necessary to send a subscription request to the service recovery service. Step 830 can be omitted, and step 840 is executed as follows: if the room service successfully creates the first game service process, the first object data is loaded into the first game service process.

[0127] Step 850: If the first game service process successfully loads the first object data, it loads the pre-configured basic data of the first game service from the database.

[0128] Basic data refers to the data required for the first game service process to run the first game service.

[0129] The database contains pre-configured basic data for each game service; different game services require different basic data configurations. For example, the basic data for the first game service includes game scene data, game map data, game rule data, and so on.

[0130] Step 860: If the basic data is successfully loaded, the first game service process provides the address information of the first game service process to the first client.

[0131] The address information of the first game service process is used for the first client to connect to the first game service process.

[0132] Once the basic data is successfully loaded, the first game service process sends a notification message to the room service indicating successful loading. Based on this notification, the room service then sends the address information of the first game service process to the first client.

[0133] By loading the basic data of the first game service into the first game service process, the first game service process can load the data required for the first client to run the first game service process, allowing users to use the first game service on the client side, ensuring the smooth provision of the game service and improving the user's gaming experience.

[0134] Figure 9The sequence diagram illustrates the method for initiating a game service process. X1: The first client sends a service initiation request to the room service on the server, requesting the creation of a first game service process. X2: The room service sends a third service creation notification to the service process management service, informing the service process management service to create the first game service process. X3: The service process management service creates the first game service process. X4: The first game service process returns a third creation result to the service process management service. X5: The service process management service returns the third creation result to the room service. X6: If the creation of the first game service process fails, the room service returns a process creation failure notification to the first client and does not execute subsequent steps; if the creation of the first game service process succeeds, the room service sends a subscription request to the service recovery service. X7: The service recovery service obtains the association relationship of the first game service process from the service process management service. X8: The room service loads the first object data into the first game service process. X9: The first game service process loads the pre-configured basic data of the first game service process from the database. X10: The database returns a loading success notification to the first game service process. X11: The first game service process returns a loading success notification to the room service. X12, The room service sends the address information of the first game service process to the first client. X13, The first client connects to the first game service process based on the address information.

[0135] In some embodiments, step 860 may be followed by at least one of steps 870 to 890.

[0136] Step 870: The room service receives a service join request sent by the second client.

[0137] The service joining request includes second object data, which refers to the identity data of the second virtual character running on the second client.

[0138] The second client is any client other than the first client. When the first client is running in the first game service process, the second client sends a service join request to the server. The room service receives the service join request sent by the second client. The service join request is used to request to join the first game service process. The service join request also includes indication information of the first game service, such as the identification information and detailed information of the first game service.

[0139] The second object data refers to the identity data of the second virtual character running on the second client. The second virtual character is the virtual character corresponding to the user account running on the second client. The identity data of the second virtual character includes, but is not limited to, the identification data, level data, and configuration data of the second virtual character.

[0140] Step 880: The room service loads the second object data into the first game service process based on the business join request.

[0141] Step 890: If the second object data is successfully loaded, the first game service process triggers the room service to send the address information of the first game service process to the second client.

[0142] The address information of the first game service process is used by the second client to connect to the first game service process.

[0143] When the first game service process successfully loads the second object data, it sends a notification message to the room service indicating successful loading. Based on the successful loading notification message, the room service sends the address information of the first game service process to the second client.

[0144] By having a first client running on the first game service process, and then connecting the second client to the first game service process based on a service joining request sent by the second client, the second object on the second client can participate in the first game service, expanding the gameplay and promoting the development of the game service.

[0145] Figure 10 The sequence diagram illustrates the method for initiating a game service process. T1: The second client sends a service join request to the room service on the server, requesting to join the first game service process. T2: The room service loads the second object data into the first game service process. T3: The first game service process sends a notification message to the room service indicating successful loading. T4: The room service sends the address information of the first game service process to the second client. T5: The second client connects to the first game service process based on the address information of the second game service process.

[0146] Please refer to Figure 11 This document illustrates a flowchart of a recovery method for a game service process crash scenario according to an embodiment of this application. The execution entity for each step of this method can be a server. This method can be executed after the aforementioned method for starting the game service process. The method may include at least one of the following steps 1110 to 1140:

[0147] Step 1110: In the event of a crash in the first game business process, the business process management service creates a third game business process.

[0148] In some embodiments, step 1110 includes at least one of sub-steps 1111 to 1113 (not shown in the figures).

[0149] Sub-step 1111: In the event of a crash in the first game service process, the business process management service triggers the business recovery service to send a process crash notification to the room service. The process crash notification is used to instruct the room service to resume providing the first game service to the first client.

[0150] The crash of the first game business process refers to the phenomenon where the first game business process, due to memory leaks, causes dynamically allocated heap memory to be not released or cannot be released for some reason, resulting in waste of system memory resources, slowing down program operation speed, or even system crash.

[0151] Sub-step 1112: Based on the process crash notification, the room service records the startup logic of the third game business process and sends a second business creation notification to the business process management service. The second business creation notification is used to instruct the business process management service to create the third game business process.

[0152] The startup logic for the third game service process is used to instruct the startup process of the third game service process, specifically referring to the startup steps of the third game service process. The second service creation notification is a service creation notification issued by the service process management service based on the process crash notification, used to instruct the service process management service to create the third game service process so that the third game service process can restart the first service.

[0153] Sub-step 1113: The business process management service creates the third game business process based on the second business creation notification.

[0154] By having the business process management service send a process crash notification to the room service, the room service can promptly obtain information about the crash of the first game business process. This allows the startup logic of the third game business process to send a second business creation notification to the business process management service, instructing the service to create the third game business process. This grants authorization for the restart of the game business and improves the feasibility of restarting the game business process.

[0155] In some embodiments, if the business recovery service is not subscribed when the first game business process is created, it is not necessary to trigger the business recovery service to send a process crash notification to the room service. Steps 1111 and 1112 can be omitted, and step 1113 is executed as follows: In the event of a crash in the first game business process, the business process management service creates a third game business process.

[0156] In some embodiments, sub-step 1113 is followed by at least one of sub-steps 1114 to 1116 (not shown in the figures).

[0157] Sub-step 1114: The business process management service sends a second creation result to the room service. The second creation result is used to indicate whether the third game business process was created successfully or failed to create.

[0158] After the business process management service creates the third game business process, the third game business process returns a second creation result (the creation result of the third game business process) to the business process management service. Because the business process management service needs to promptly notify the room service of the management status of the business processes, it sends the second creation result to the room service.

[0159] Sub-step 1115: If the second creation result indicates that the third game business process has been successfully created, the room service loads the first object data into the third game business process.

[0160] After the third game service process is successfully created, the first object data is loaded into the third game service process, laying the foundation for the third game service process to restart the first game service. After the service data is loaded, it can be provided to the first client, ensuring the restart of the first game service.

[0161] Sub-step 1116: If the second creation result indicates that the third game business process has failed to create, the room service disconnects from the first client.

[0162] Disconnecting from the first client here means disconnecting the room service from the first client, that is, disconnecting the connection between the server and the first client.

[0163] By disconnecting the connection with the first client when the second creation result indicates that the third game service process has failed to create, the first client is notified that the process has failed to run again, allowing the user to make timely decisions on process operations after the process fails, thus improving the user's gaming experience.

[0164] Step 1120: If the third game business process is successfully created, the business process management service triggers the room service to load the first object data into the third game business process.

[0165] Step 1130: If the first object data is successfully loaded, the third game business process loads the scheduled business data from the database.

[0166] Scheduled business data refers to the business data that the first game business process stores in the database every first time period.

[0167] This application does not impose any limitations on the first time period, which can be set by technical personnel. The database contains data periodically stored by the first game service process, but does not include service data generated by the first game service process between the last time service data was stored and the current time. Therefore, the service operation status of the third game service process after loading the periodically stored service data is the service operation status of the first game service process at the time of the last storage of service data.

[0168] Step 1140: If the timed service data is successfully loaded, the third game service process provides the address information of the third game service process to the first client.

[0169] The address information of the third game service process is used by the first client to connect to the third game service process, and the third game service process is used to re-provide the first game service to the first client based on the timed service data.

[0170] In the event of a crash in the first game service process, a third game service process is created, and the first object data and the timed service data from the database are loaded into the third game service process. This allows the third game service process to restart the first game service, enabling users to re-engage with the first game service on the client side and improving the user's gaming experience.

[0171] Figure 12 This diagram illustrates the timing sequence of the recovery process in a game service process crash scenario. Y1: In the event of a crash in the first game service process, the service process management service sends a crash notification to the service recovery service. Y2: The service recovery service sends a crash notification to the room service, instructing the room service to re-provide the first game service to the first client. Y3: The room service sends a second service creation notification to the service process management service, instructing the service process management service to create a third game service process. Y4: The service process management service creates the third game service process. Y5: The third game service process returns a second creation result to the service process management service. Y6: The service process management service returns a second creation result to the room service. Y7: If the second creation result indicates that the third game service process creation failed, the room service disconnects from the first client and does not execute subsequent steps; if the second creation result indicates that the third game service process creation was successful, the room service loads the first object data into the third game service process. Y8: The third game service process loads timed service data from the database. Y9: The database returns a successful loading notification to the third game service process. Y10: The third game service process sends a successful loading notification to the room service. Y11, The room service sends the address information of the third game service process to the first client. Y12, The first client connects to the third game service process based on the address information.

[0172] The following are embodiments of the apparatus described in this application, which can be used to execute the embodiments of the method described in this application. For details not disclosed in the apparatus embodiments of this application, please refer to the embodiments of the method described in this application.

[0173] Please refer to Figure 13 This diagram illustrates a block diagram of a game service process migration apparatus according to an embodiment of this application. The apparatus has the function of implementing the aforementioned game service process migration method; this function can be implemented in hardware or by hardware executing corresponding software. The apparatus can be the server described above, or it can be located within a server. Figure 13 As shown, the device 1500 may include: a business process management service module 1310 and a second game business process module 1320.

[0174] The business process management service module 1310 is used to create a second game business process when the runtime of the first game business process reaches a threshold value. The first game business process is used to provide the first game service to the first client, and the business process management service is used to manage the game business process.

[0175] The business process management service module 1310 is used to send a process shutdown notification to the first game business process when the second game business process is successfully created. The process shutdown notification is used to instruct the first game business process to be shut down.

[0176] The business process management service module 1310 is used to trigger the second game business process to load the business data of the first game business process after detecting that the first game business process has been closed.

[0177] The second game service process module 1320 is used to provide the address information of the second game service process to the first client when the service data is successfully loaded. The address information of the second game service process is used by the first client to connect to the second game service process. The second game service process is used to continue to provide the first game service to the first client based on the service data.

[0178] In some embodiments, the device 1300 further includes a business recovery service module 1330 and a room service module 1340.

[0179] The business process management service module 1310 is used to send a business recovery notification to the business recovery service after detecting that the first game business process has been closed. The business recovery service is used to manage the migration process of the game business, and the business recovery notification is used to instruct the business recovery service to continue to provide the first game business to the first client.

[0180] The service recovery service module 1330 is used to send a service start request to the room service according to the service recovery notification. The room service is used to manage the service process of the service process management service. The service start request is used to request the room service to start the second game service process.

[0181] The room service module 1340 is used to record the startup logic of the second game service process according to the service startup request, and send a service startup notification to the service process management service.

[0182] The business process management service module 1310 is used to start the second game business process according to the business startup notification.

[0183] The business process management service module 1310 is used to trigger the second game business process to load the business data when the second game business process starts successfully.

[0184] In some embodiments, the business process management service module 1310 is used to send a business start request to the room service after detecting that the first game business process has been closed. The room service is used to manage the service process of the business process management service, and the business start request is used to request the room service to start the second game business process.

[0185] The room service module 1340 is used to record the startup logic of the second game service process according to the service startup request, and send a service startup notification to the service process management service.

[0186] The business process management service module 1310 is used to start the second game business process according to the business startup notification.

[0187] The business process management service module 1310 is used to trigger the second game business process to load the business data when the second game business process starts successfully.

[0188] In some embodiments, the business data is stored in the database after the first game business process disconnects from the first client.

[0189] The business process management service module 1310 is used to trigger the room service to load the first object data into the second game business process when the second game business process starts successfully. The first object data refers to the identity data of the first virtual character running on the first client.

[0190] The second game business process module 1320 is used to load the business data from the database when the first object data is successfully loaded.

[0191] In some embodiments, the business process management service module 1310 is used to send a process migration request to the room service when the runtime of the first game business process reaches the threshold value. The process migration request is used to request the migration of the first game business to the second game business process.

[0192] The room service module 1340 is used to record the migration logic of the first game service according to the process migration request, and send a first service creation notification to the service process management service. The first service creation notification is used to instruct the service process management service to create the second game service process.

[0193] The business process management service module 1310 is used to create the second game business process according to the first business creation notification.

[0194] In some embodiments, the business process management service module 1310 is used to send a first creation result to the room service, the first creation result being used to indicate whether the second game business process was created successfully or failed to be created.

[0195] The room service module 1340 is used to record the closing logic of the first game service process when the first creation result indicates that the second game service process has been successfully created, and to trigger the service process management service to send the process closing notification to the first game service process.

[0196] In some embodiments, the room service module 1340 is configured to disconnect from the first client if the first creation result indicates that the creation of the second game service process has failed.

[0197] In some embodiments, the second game service process module 1320 is configured to send a loading success notification to the room service when the service data is successfully loaded. The loading success notification is used to instruct the room service to send the address information of the second game service process to the first client.

[0198] The room service module 1340 is used to send the address information of the second game service process to the first client according to the loading success notification.

[0199] In some embodiments, the room service module 1340 is configured to receive a service activation request sent by the first client, the service activation request including first object data, the first object data referring to the identity data of a first virtual character running on the first client.

[0200] The room service module 1340 is used to trigger the business process management service to create the first game business process based on the business start request.

[0201] The room service module 1340 is used to send a subscription request to the service recovery service when the first game service process is successfully created. The subscription request is used to request the service recovery service to obtain the association relationship between the first game service process and the room service, as well as the association information between the first game service process and the service recovery service from the service process management service.

[0202] The room service module 1340 is used to load the first object data into the first game service process when the service recovery service subscription is successful.

[0203] In some embodiments, the device 1300 further includes a first game service process module 1350.

[0204] The first game service process module 1350 is used to load pre-configured basic data of the first game service from the database when the first object data is successfully loaded. The basic data refers to the data required by the first game service process to run the first game service.

[0205] The first game service process module 1350 is used to provide the address information of the first game service process to the first client when the basic data is successfully loaded. The address information of the first game service process is used by the first client to connect to the first game service process.

[0206] In some embodiments, the room service module 1340 is configured to receive a service joining request sent by a second client, the service joining request containing second object data, the second object data referring to the identity data of a second virtual character running on the second client.

[0207] The room service module 1340 is used to load the second object data into the first game service process according to the service joining request.

[0208] The first game service process module 1350 is used to trigger the room service to send the address information of the first game service process to the second client when the second object data is successfully loaded. The address information of the first game service process is used by the second client to connect to the first game service process.

[0209] In some embodiments, the device 1300 further includes a third game service process module 1360.

[0210] The business process management service module 1310 is used to create a third game business process in the event that the first game business process crashes.

[0211] The business process management service module 1310 is used to trigger the room service to load the first object data into the third game business process when the third game business process is successfully created. The first object data refers to the identity data of the first virtual character running on the first client.

[0212] The third game business process module 1360 is used to load timed business data from the database when the first object data is successfully loaded. The timed business data refers to the business data that the first game business process stores in the database every first time period.

[0213] The third game service process module 1360 is used to provide the address information of the third game service process to the first client when the timed service data is successfully loaded. The address information of the third game service process is used by the first client to connect to the third game service process. The third game service process is used to re-provide the first game service to the first client based on the timed service data.

[0214] In some embodiments, the business process management service module 1310 is configured to trigger a business recovery service to send a process crash notification to the room service in the event of a crash in the first game business process. The process crash notification is used to instruct the room service to re-provide the first game business to the first client.

[0215] The room service module 1340 is used to record the startup logic of the third game service process according to the process crash notification, and send a second service creation notification to the service process management service. The second service creation notification is used to instruct the service process management service to create the third game service process.

[0216] The business process management service module 1310 is used to create the third game business process according to the second business creation notification.

[0217] In some embodiments, the business process management service module 1310 is used to send a second creation result to the room service, the second creation result being used to indicate whether the third game business process was created successfully or failed to be created.

[0218] The room service module 1340 is used to load the first object data into the third game service process when the second creation result indicates that the third game service process has been successfully created.

[0219] It should be noted that the above-mentioned business process management service module is used to provide business process management services, the second game business process module is used to provide the second game business process, the business recovery service module is used to provide business recovery services, the room service module is used to provide room services, the first game business process module is used to provide the first game business process, and the third game business process module is used to provide the third game business process.

[0220] It should be noted that the apparatus provided in the above embodiments is only illustrated by the division of the above functional modules when implementing its functions. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the content structure of the device can be divided into different functional modules to complete all or part of the functions described above. In addition, the apparatus and method embodiments provided in the above embodiments belong to the same concept, and the specific implementation process can be found in the method embodiments, which will not be repeated here.

[0221] Please refer to Figure 14 The diagram illustrates a structural block diagram of a server 1400 provided in one embodiment of this application. The server 1400 can be any electronic device with data computing, processing, and storage functions. The server 1400 can be used to implement the game service process migration method provided in the above embodiments.

[0222] Typically, server 1400 includes a processor 1401 and memory 1402.

[0223] Processor 1401 may include one or more processing cores, such as a quad-core processor, an octa-core processor, etc. Processor 1401 may be implemented using at least one hardware form selected from DSP (Digital Signal Processing), FPGA (Field Programmable Gate Array), and PLA (Programmable Logic Array). Processor 1401 may also include a main processor and a coprocessor. The main processor, also known as a CPU (Central Processing Unit), is used to process data in the wake-up state; the coprocessor is a low-power processor used to process data in the standby state. In some embodiments, processor 1401 may integrate a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content to be displayed on the screen. In some embodiments, processor 1401 may also include an AI processor for handling computational operations related to machine learning.

[0224] The memory 1402 may include one or more computer-readable storage media, which may be non-transitory. The memory 1402 may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices or flash memory devices. In some embodiments, the non-transitory computer-readable storage media in the memory 1402 are used to store a computer program configured to be executed by one or more processors to implement the above-described game service process migration method.

[0225] Those skilled in the art will understand that Figure 14 The structure shown does not constitute a limitation on server 1400 and may include more or fewer components than shown, or combine certain components, or use different component arrangements.

[0226] In an illustrative embodiment, a computer-readable storage medium is also provided, which stores a computer program that, when executed by a server's processor, implements the aforementioned game service process migration method. Optionally, the aforementioned computer-readable storage medium may be ROM (Read-Only Memory), RAM (Random Access Memory), CD-ROM (Compact Disc Read-Only Memory), magnetic tape, floppy disk, and optical data storage device, etc.

[0227] In an exemplary embodiment, a computer program product is also provided, comprising a computer program stored in a computer-readable storage medium. A server's processor reads the computer program from the computer-readable storage medium and executes the computer program, causing the server to perform the aforementioned game service process migration method.

[0228] It should be noted that this application may display prompt interfaces, pop-ups, or output voice prompts before and during the collection of user data. These prompt interfaces, pop-ups, or voice prompts are used to inform users that their data is being collected. This ensures that the application only begins the steps for collecting user data after receiving confirmation from the user regarding the prompt interface or pop-up; otherwise (i.e., without receiving confirmation from the user), the steps for collecting user data end, meaning no user data is collected. In other words, all user data collected by this application is processed strictly in accordance with the requirements of relevant national laws and regulations. The informed consent or separate consent of the data subject is obtained only with the user's consent and authorization. Subsequent data use and processing are conducted within the scope of laws, regulations, and the data subject's authorization, and the collection, use, and processing of relevant user data must comply with the relevant laws, regulations, and standards of the relevant countries and regions.

[0229] It should be understood that "multiple" as used herein refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. Furthermore, the step numbers described herein are merely illustrative of one possible execution order. In some other embodiments, the steps may not be executed in numerical order, such as two steps with different numbers being executed simultaneously, or two steps with different numbers being executed in the reverse order of the illustration. This application does not limit this.

[0230] The above description is merely an exemplary embodiment of this application and is not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.

Claims

1. A method for migrating game business processes, characterized in that, The method includes: When the runtime of the first game service process reaches a threshold, the service management service creates a second game service process. The first game service process is used to provide the first game service to the first client, and the service management service is used to manage the game service process. When the second game business process is successfully created, the business process management service sends a process shutdown notification to the first game business process. The process shutdown notification is used to instruct the first game business process to be shut down. After the business process management service detects that the first game business process has been closed, it triggers the second game business process to load the business data of the first game business process. When the service data is successfully loaded, the second game service process provides the address information of the second game service process to the first client. The address information of the second game service process is used by the first client to connect to the second game service process. The second game service process is used to continue providing the first game service to the first client based on the service data.

2. The method according to claim 1, characterized in that, After detecting that the first game service process has finished closing, the service process management service triggers the second game service process to load the service data, including: After detecting that the first game service process has been shut down, the service process management service sends a service recovery notification to the service recovery service. The service recovery service is used to manage the migration process of the game service, and the service recovery notification is used to instruct the service recovery service to continue to provide the first game service to the first client. The service recovery service sends a service start request to the room service according to the service recovery notification. The room service is used to manage the service process of the service process management service. The service start request is used to request the room service to start the second game service process. The room service records the startup logic of the second game service process according to the service startup request, and sends a service startup notification to the service process management service; The business process management service starts the second game business process according to the business startup notification; When the second game business process starts successfully, the business process management service triggers the second game business process to load the business data.

3. The method according to claim 1, characterized in that, After detecting that the first game service process has finished closing, the service process management service triggers the second game service process to load the service data, including: After detecting that the first game service process has been closed, the service process management service sends a service start request to the room service. The room service is used to manage the service process of the service process management service, and the service start request is used to request the room service to start the second game service process. The room service records the startup logic of the second game service process according to the service startup request, and sends a service startup notification to the service process management service; The business process management service starts the second game business process according to the business startup notification; When the second game business process starts successfully, the business process management service triggers the second game business process to load the business data.

4. The method according to claim 2 or 3, characterized in that, The business data is stored in the database after the first game business process disconnects from the first client; When the second game business process starts successfully, the business process management service triggers the second game business process to load the business data, including: When the second game business process starts successfully, the business process management service triggers the room service to load the first object data into the second game business process. The first object data refers to the identity data of the first virtual character running on the first client. If the first object data is successfully loaded, the second game service process loads the service data from the database.

5. The method according to any one of claims 1 to 4, characterized in that, The service process management service creates a second game service process when the runtime of the first game service process reaches a threshold, including: When the runtime of the first game service process reaches the threshold value, the service process management service sends a process migration request to the room service. The process migration request is used to request the migration of the first game service to the second game service process. The room service records the migration logic of the first game service according to the process migration request, and sends a first service creation notification to the service process management service. The first service creation notification is used to instruct the service process management service to create the second game service process. The business process management service creates the second game business process based on the first business creation notification.

6. The method according to any one of claims 1 to 5, characterized in that, Before sending a process shutdown notification to the first game service process after the second game service process has been successfully created, the service process management service further includes: The business process management service sends a first creation result to the room service. The first creation result is used to indicate whether the second game business process was created successfully or failed to be created. When the first creation result indicates that the second game service process has been successfully created, the room service records the shutdown logic of the first game service process and triggers the service process management service to send the process shutdown notification to the first game service process.

7. The method according to claim 6, characterized in that, The method further includes: If the first creation result indicates that the creation of the second game service process has failed, the room service will disconnect from the first client.

8. The method according to any one of claims 1 to 7, characterized in that, Upon successful loading of the service data, the second game service process provides its address information to the first client, including: When the service data is successfully loaded, the second game service process sends a loading success notification to the room service. The loading success notification is used to instruct the room service to send the address information of the second game service process to the first client. Based on the successful loading notification, the room service sends the address information of the second game service process to the first client.

9. The method according to any one of claims 1 to 8, characterized in that, The method further includes: The room service receives a service activation request sent by the first client. The service activation request includes first object data, which refers to the identity data of the first virtual character running on the first client. The room service triggers the service process management service to create the first game service process based on the service activation request; When the first game service process is successfully created, the room service sends a subscription request to the service recovery service. The subscription request is used to request the service recovery service to obtain the association relationship between the first game service process and the room service, as well as the association information between the first game service process and the service recovery service from the service process management service. When the service subscription for the business recovery service is successful, the room service loads the first object data into the first game service process.

10. The method according to claim 9, characterized in that, After the room service loads the first object data into the first game service process upon successful subscription to the service recovery service, it further includes: When the first object data is successfully loaded, the first game service process loads the pre-configured basic data of the first game service from the database. The basic data refers to the data required by the first game service process to run the first game service. When the basic data is successfully loaded, the first game service process provides the address information of the first game service process to the first client. The address information of the first game service process is used by the first client to connect to the first game service process.

11. The method according to claim 9 or 10, characterized in that, The method further includes: The room service receives a service join request sent by the second client. The service join request includes second object data, which refers to the identity data of the second virtual character running on the second client. The room service loads the second object data into the first game service process based on the service join request; When the second object data is successfully loaded, the first game service process triggers the room service to send the address information of the first game service process to the second client. The address information of the first game service process is used by the second client to connect to the first game service process.

12. The method according to any one of claims 1 to 11, characterized in that, The method further includes: In the event that the first game business process crashes, the business process management service creates a third game business process. When the third game business process is successfully created, the business process management service triggers the room service to load the first object data into the third game business process. The first object data refers to the identity data of the first virtual character running on the first client. When the first object data is successfully loaded, the third game service process loads timed service data from the database. The timed service data refers to the service data that the first game service process stores in the database every first time period. When the timed service data is successfully loaded, the third game service process provides its address information to the first client. The address information of the third game service process is used by the first client to connect to the third game service process. The third game service process is used to re-provide the first game service to the first client based on the timed service data.

13. The method according to claim 12, characterized in that, In the event of a crash in the first game service process, the service process management service creates a third game service process, including: In the event of a crash in the first game service process, the business process management service triggers the business recovery service to send a process crash notification to the room service. The process crash notification is used to instruct the room service to re-provide the first game service to the first client. The room service records the startup logic of the third game service process based on the process crash notification, and sends a second service creation notification to the service process management service. The second service creation notification is used to instruct the service process management service to create the third game service process. The business process management service creates the third game business process based on the second business creation notification.

14. The method according to claim 12 or 13, characterized in that, Before the business process management service triggers the room service to load the first object data into the third game business process after the third game business process is successfully created, it further includes: The business process management service sends a second creation result to the room service, the second creation result being used to indicate whether the third game business process was created successfully or failed to be created. If the second creation result indicates that the third game service process has been successfully created, the room service loads the first object data into the third game service process.

15. A business process migration device, characterized in that, The device includes: The business process management service module is used to create a second game business process when the runtime of the first game business process reaches a threshold value. The first game business process is used to provide the first game service to the first client, and the business process management service is used to manage the game business process. The business process management service module is used to send a process shutdown notification to the first game business process when the second game business process is successfully created. The process shutdown notification is used to instruct the first game business process to be shut down. The business process management service module is used to trigger the second game business process to load the business data of the first game business process after detecting that the first game business process has been closed. The second game service process module is used to provide the address information of the second game service process to the first client when the service data is successfully loaded. The address information of the second game service process is used by the first client to connect to the second game service process. The second game service process is used to continue to provide the first game service to the first client based on the service data.

16. A server, characterized in that, The server includes a processor and a memory, the memory storing a computer program that is loaded and executed by the processor to implement the migration method for the game business process as described in any one of claims 1 to 14.

17. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, which is loaded and executed by a processor to implement the migration method for the game service process as described in any one of claims 1 to 14.

18. A computer program product, characterized in that, The computer program product includes a computer program that is loaded and executed by a processor to implement the migration method for the game business process as described in any one of claims 1 to 14.