Game server data store synchronization method and system

By using a synchronous storage mechanism that registers function class names in the game server, the problems of complex data storage code and storage failures are solved, achieving efficient and unified management of data storage and data integrity.

CN116501797BActive Publication Date: 2026-06-16HANGZHOU ELECTRONICS SOUL NETWORK TECH

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
HANGZHOU ELECTRONICS SOUL NETWORK TECH
Filing Date
2023-03-30
Publication Date
2026-06-16

AI Technical Summary

Technical Problem

The data storage and synchronization of various functional modules in the game server suffers from complex code and is prone to storage failure, leading to data loss.

Method used

By using macro definitions, the functional class names, their corresponding functional memory data structure names, and time synchronization parameters are added to the base class of the data synchronization mechanism. The synchronization storage mechanism corresponding to each functional class name is registered, including the memory data read/write interface mechanism, the modification flag mechanism, the data synchronization time mechanism, and the data byte stream serialization mechanism, so as to store the data of each functional point.

🎯Benefits of technology

A unified registration mechanism for all functionalities was implemented, which improved the reusability of data storage code. Read and write interfaces were distinguished and synchronization flags were added to avoid data loss due to storage failures.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116501797B_ABST
    Figure CN116501797B_ABST
Patent Text Reader

Abstract

The application relates to a game server data storage synchronization method, which comprises the following steps: pulling a function class name in database data, adding the function class name, a corresponding function memory data structure name and a time synchronization parameter into a base class of a data synchronization mechanism through macro definition, registering a synchronization storage mechanism of a function point corresponding to each function class name, wherein the synchronization storage mechanism comprises a memory data read-write interface mechanism, a modification mark mechanism, a data synchronization time mechanism and a data byte stream serialization mechanism, and the data storage of each function point is carried out through the synchronization storage mechanism. Through the application, the problems of complex game data storage code and data loss caused by storage failure are solved, a unified registration mechanism of each function point is provided, the reusability of the data storage code is improved, read-write interfaces are distinguished and synchronization marks are added, and data loss caused by storage failure is avoided.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of data storage technology, and in particular to methods, systems, electronic devices and storage media for data storage synchronization of game servers. Background Technology

[0002] With the rapid development of computer technology, online games have become a new consumption hotspot for young people. Online games contain a large amount of data, all of which is stored in the game server's database. When an online game is running, the information in the game server may change, requiring the game server's database to be updated and stored synchronously.

[0003] In related technologies, game servers store data separately for each functional module. Data synchronization requires each functional point to synchronize itself. The data storage management capabilities of each functional module vary, the data storage code is complex, and writing to the cache and reading data through the same interface can easily cause storage failures and data loss.

[0004] Currently, no effective solution has been proposed to address the issue of complex data storage code for various functionalities in related technologies. Summary of the Invention

[0005] This application provides a method, system, electronic device, and storage medium for synchronizing data storage on a game server, in order to at least solve the problem of complex data storage code for various functional points in related technologies.

[0006] In a first aspect, embodiments of this application provide a method for synchronizing data storage on a game server, the method comprising:

[0007] Retrieve the function class names from the database;

[0008] By using macro definitions, the functional class name, its corresponding functional memory data structure name, and time synchronization parameters are added to the base class of the data synchronization mechanism. The synchronization storage mechanism for each functional point corresponding to each functional class name is registered. The synchronization storage mechanism includes: memory data read / write interface mechanism, modification flag mechanism, data synchronization time mechanism, and data byte stream serialization mechanism.

[0009] The synchronous storage mechanism is used to store data for each functional point.

[0010] In some embodiments, the data storage of each functional point through the synchronous storage mechanism includes:

[0011] Through the memory data read / write interface mechanism, the read interface of the function point corresponding to the current function class name is called to obtain the corresponding function point data, and the write interface of the function point corresponding to the current function class name is called to modify the memory data;

[0012] The function point data is serialized using the data byte stream serialization mechanism to obtain a data byte stream, and the current function class name and the data byte stream are stored in the database.

[0013] In some embodiments, the method further includes, during the process of modifying the memory data:

[0014] Through the modification marker mechanism, a write operation handle is created when the write interface is called. The write operation handle is logically processed according to the modification progress of the memory data. The access value of the write operation handle is detected, and it is determined whether storage can be performed based on the access value.

[0015] In some embodiments, determining whether storage can be performed based on the access volume value includes:

[0016] Determine whether the access count value is 0. If so, perform storage. When the write operation handle is created, the access count value is set to 1. When the write operation ends, the write operation handle is released, and the access count value is set to 0.

[0017] In some embodiments, before serializing the function point data using the data byte stream serialization mechanism, the method further includes:

[0018] The time mechanism of data synchronization determines whether the difference between the current time and the last time the database was synchronized reaches a preset threshold. If so, the current time is stored and recorded. The preset threshold is determined by the time synchronization parameter corresponding to the current function class name.

[0019] Secondly, embodiments of this application provide a game server data storage synchronization system, the system comprising: a retrieval module, a registration module, and a storage module.

[0020] The pull module is used to pull the functional class names from the database data;

[0021] The registration module is used to add the function class name and its corresponding function memory data structure name and time synchronization parameters to the base class of the data synchronization mechanism through macro definition, and register the synchronization storage mechanism of the function point corresponding to each function class name. The synchronization storage mechanism includes: memory data read and write interface mechanism, modification flag mechanism, data synchronization time mechanism and data byte stream serialization mechanism.

[0022] The storage module is used to store data for each functional point through the synchronous storage mechanism.

[0023] In some embodiments, the storage module is also used for,

[0024] Through the memory data read / write interface mechanism, the read interface of the function point corresponding to the current function class name is called to obtain the corresponding function point data, and the write interface of the function point corresponding to the current function class name is called to modify the memory data;

[0025] The function point data is serialized using the data byte stream serialization mechanism to obtain a data byte stream, and the current function class name and the data byte stream are stored in the database.

[0026] In some embodiments, the storage module is further configured to create a write operation handle when the write interface is called through the modification flag mechanism, perform logical processing on the write operation handle according to the modification progress of the memory data, detect the access value of the write operation handle, and determine whether storage can be performed based on the access value.

[0027] Thirdly, embodiments of this application provide an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the game server data storage synchronization method as described in the first aspect above.

[0028] Fourthly, embodiments of this application provide a storage medium storing a computer program thereon, which, when executed by a processor, implements the game server data storage synchronization method as described in the first aspect above.

[0029] Compared to related technologies, the game server data storage synchronization method provided in this application, through macro definitions, adds the functional class names retrieved from the database, their corresponding functional memory data structure names, and time synchronization parameters to the base class of the data synchronization mechanism. It registers the synchronization storage mechanism for each functional point corresponding to each functional class name. The synchronization storage mechanism includes: a memory data read / write interface mechanism, a modification flag mechanism, a data synchronization time mechanism, and a data byte stream serialization mechanism. Data storage for each functional point is performed through this synchronization storage mechanism. This solves the problems of complex game data storage code and data loss due to storage failures. It provides a unified registration mechanism for each functional point, improves the reusability of data storage code, and distinguishes read / write interfaces by adding synchronization flags to avoid data loss due to storage failures. Attached Figure Description

[0030] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:

[0031] Figure 1 This is a schematic diagram of the application environment of the game server data storage synchronization method according to an embodiment of this application;

[0032] Figure 2 This is a flowchart of a game server data storage synchronization method according to an embodiment of this application;

[0033] Figure 3 This is a structural block diagram of a game server data storage synchronization system according to an embodiment of this application;

[0034] Figure 4 This is a schematic diagram of the internal structure of an electronic device according to an embodiment of this application. Detailed Implementation

[0035] To make the objectives, technical solutions, and advantages of this application clearer, the application is described and illustrated below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application. All other embodiments obtained by those skilled in the art based on the embodiments provided in this application without inventive effort are within the scope of protection of this application.

[0036] Obviously, the accompanying drawings described below are merely some examples or embodiments of this application. Those skilled in the art can apply this application to other similar scenarios based on these drawings without any inventive effort. Furthermore, it is understood that although the efforts made in this development process may be complex and lengthy, for those skilled in the art related to the content disclosed in this application, any changes to design, manufacturing, or production based on the technical content disclosed in this application are merely conventional technical means and should not be construed as insufficient disclosure of the content of this application.

[0037] In this application, the reference to "embodiment" means that a specific feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places in the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment that is mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described in this application may be combined with other embodiments without conflict.

[0038] Unless otherwise defined, the technical or scientific terms used in this application shall have the ordinary meaning understood by one of ordinary skill in the art to which this application pertains. The terms “a,” “an,” “an,” “the,” and similar words used in this application do not indicate quantity limitation and may indicate singular or plural. The terms “comprising,” “including,” “having,” and any variations thereof used in this application are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or device that includes a series of steps or modules (units) is not limited to the listed steps or units, but may also include steps or units not listed, or may include other steps or units inherent to these processes, methods, products, or devices. The terms “connected,” “linked,” “coupled,” and similar words used in this application are not limited to physical or mechanical connections, but may include electrical connections, whether direct or indirect. “Multiple” used in this application refers to two or more. “And / or” describes the relationship between related objects, indicating that three relationships may exist; for example, “A and / or B” can represent: A alone, A and B simultaneously, and B alone. The character " / " generally indicates that the preceding and following objects are in an "or" relationship. The terms "first," "second," and "third" used in this application are merely to distinguish similar objects and do not represent a specific ordering of the objects.

[0039] The game server data storage synchronization method provided in this application can be applied to, for example... Figure 1 The diagram shows the application environment. Figure 1 As shown, the game server 10 retrieves the function class names from the database. Through macro definition, it adds the function class names, their corresponding function memory data structure names, and time synchronization parameters to the base class of the data synchronization mechanism. It then registers the synchronization storage mechanism for each function point corresponding to each function class name and uses this synchronization storage mechanism to store the data of each function point.

[0040] This embodiment provides a method for synchronizing data storage on a game server. Figure 2 This is a flowchart of a game server data storage synchronization method according to an embodiment of this application, such as... Figure 2 As shown, the process includes the following steps:

[0041] Step S201: Retrieve the function class names from the database. The function class names are derived from the key names of different data types in the database. For example, when storing backpack-related data, the corresponding function class name could be "Backpack", and when storing task-related data, the corresponding function class name could be "Task".

[0042] Step S202: Through macro definition, the function class name, its corresponding function memory data structure name, and time synchronization parameters are added to the base class of the data synchronization mechanism. The synchronization storage mechanism for each function class name's corresponding function point is registered. This synchronization storage mechanism includes: a memory data read / write interface mechanism, a modification flag mechanism, a data synchronization time mechanism, and a data byte stream serialization mechanism. The time synchronization parameters control the time interval between two data storage operations, and can be 60s, 90s, etc.

[0043] It should be noted that through inheritance, new data types can be defined using existing data types. The existing class used to derive the new class is called the base class. In this embodiment, the base class for the data synchronization mechanism is the template class used to register the synchronization storage mechanism. When new functionalities emerge, this embodiment can directly provide the corresponding synchronization storage mechanism without writing new code.

[0044] Step S203: Data is stored for each functional point through a synchronous storage mechanism. Each functional point stores the corresponding type of game data into the database through its corresponding memory data read / write interface mechanism, modification flag mechanism, data synchronization time mechanism, and data byte stream serialization mechanism.

[0045] Through steps S201 to S203 above, this embodiment, based on information in the game server database, registers a synchronization storage mechanism for each functional point corresponding to each functional class name through macro definitions and a base class for the data synchronization mechanism. The synchronization storage mechanism includes: a memory data read / write interface mechanism, a modification flag mechanism, a data synchronization time mechanism, and a data byte stream serialization mechanism. Data storage for each functional point is performed through this synchronization storage mechanism. This solves the problems of complex game data storage code and data loss due to storage failures. It provides a unified registration mechanism for each functional point, improves the reusability of data storage code, distinguishes read / write interfaces, and adds synchronization flags to avoid data loss due to storage failures.

[0046] In some embodiments, data storage for each functional point is performed through a synchronous storage mechanism, including:

[0047] The memory data read / write interface mechanism is used to access memory data by calling the read interface corresponding to the current function class name and obtaining the corresponding function point data. Then, the write interface corresponding to the current function class name is called to modify the memory data. In this embodiment, the operations of accessing and modifying memory data are performed separately in the read and write interfaces to avoid storage failures due to missed writes, which could lead to data loss.

[0048] The functional point data is serialized using a data byte stream serialization mechanism to obtain a data byte stream. The current functional class name and the data byte stream are then stored in the database. Serialization is the process of converting the object's state information into an ordered byte stream. Serialization ensures the integrity and transmissibility of the object during transmission and storage.

[0049] In some embodiments, the process of modifying memory data further includes:

[0050] By modifying the marking mechanism, a write operation handle is created when the write interface is called. The write operation handle is logically processed based on the progress of memory data modification, and its access count is detected. Based on this access count, it is determined whether storage can be performed. In this embodiment, the write operation handle is used as a synchronization marker. The access count of the write operation handle is used to determine whether the modification operation has ended. Storage is only performed after the modification operation is confirmed to be complete, further preventing data loss due to missed writes.

[0051] Specifically, determining whether storage can be performed based on access volume includes:

[0052] The system checks if the access count is 0. If it is, it performs storage. Specifically, when a write operation handle is created, the access count is set to 1; when the write operation ends, the write operation handle is released, and the access count is set to 0. In this embodiment, a non-zero access count indicates that a write operation is in progress; a zero access count indicates that the write operation has been completed.

[0053] In some embodiments, before serializing the function point data using a data byte stream serialization mechanism, the following steps are also included:

[0054] The time mechanism of data synchronization determines whether the difference between the current time and the last time the database was synchronized reaches a preset threshold. If so, the current time is stored and recorded. The preset threshold is determined by the time synchronization parameter corresponding to the current function class name.

[0055] For example, if the time synchronization parameter corresponding to the current function point is 60 seconds, when data storage is performed, it is determined whether the time since the last data storage was completed is greater than 60 seconds. If so, storage can be performed.

[0056] By controlling the interval between the current data storage time and the last data storage time, the database is not synchronized in real time every time data is modified, thus reducing the amount of data transmission.

[0057] It should be noted that the steps shown in the above process or in the flowchart of the accompanying figures can be executed in a computer system such as a set of computer-executable instructions, and although a logical order is shown in the flowchart, in some cases the steps shown or described may be executed in a different order than that shown here.

[0058] This embodiment also provides a game server data storage synchronization system, which is used to implement the above embodiments and preferred embodiments, and will not be repeated as already described. As used below, the terms "module," "unit," "subunit," etc., can refer to a combination of software and / or hardware that performs a predetermined function. Although the apparatus described in the following embodiments is preferably implemented in software, hardware implementation, or a combination of software and hardware, is also possible and contemplated.

[0059] Figure 3 This is a structural block diagram of a game server data storage synchronization system according to an embodiment of this application, such as... Figure 3 As shown, the device includes a pull module 31, a registration module 32, and a storage module 33.

[0060] Module 31 is used to retrieve the functional class names from the database.

[0061] Registration module 32 is used to add the function class name and its corresponding function memory data structure name and time synchronization parameters to the base class of the data synchronization mechanism through macro definition, and register the synchronization storage mechanism of the corresponding function point of each function class name. The synchronization storage mechanism includes: memory data read and write interface mechanism, modification flag mechanism, data synchronization time mechanism and data byte stream serialization mechanism.

[0062] Storage module 33 is used to store data for each functional point through a synchronous storage mechanism.

[0063] Through the aforementioned system, the retrieval module 31 retrieves the functional class names from the database, and the registration module 32 registers the synchronization storage mechanism for each functional class name's corresponding functional point using macro definitions and the base class of the data synchronization mechanism. This synchronization storage mechanism includes: a memory data read / write interface mechanism, a modification flag mechanism, a data synchronization time mechanism, and a data byte stream serialization mechanism. The storage module 33 uses the synchronization storage mechanism to store the data for each functional point. This solves the problems of complex game data storage code and data loss due to storage failures. It provides a unified registration mechanism for each functional point, improves the reusability of data storage code, distinguishes read / write interfaces, and adds synchronization flags to avoid data loss due to storage failures.

[0064] In some embodiments, the storage module 33 is further configured to, through a memory data read / write interface mechanism, call the read interface of the function point corresponding to the current function class name to obtain the corresponding function point data, call the write interface of the function point corresponding to the current function class name to modify the memory data, serialize the function point data through a data byte stream serialization mechanism to obtain a data byte stream, and store the current function class name and the data byte stream into the database. This embodiment avoids storage failures due to missed writes and data loss by placing the operations of accessing and modifying memory data in the read and write interfaces respectively.

[0065] In some embodiments, the storage module 33 is further configured to create a write operation handle when the write interface is called via a modification flag mechanism, perform logical processing on the write operation handle according to the modification progress of the memory data, detect the access value of the write operation handle, and determine whether storage can be performed based on the access value. This embodiment determines whether the modification operation has ended by using the access value of the write operation handle, and only performs storage after confirming that the modification operation has ended, further avoiding data loss due to missed writes.

[0066] It should be noted that the above modules can be functional modules or program modules, and can be implemented through software or hardware. For modules implemented through hardware, the above modules can reside in the same processor; or the above modules can be located in different processors in any combination.

[0067] This embodiment also provides an electronic device, including a memory and a processor, wherein the memory stores a computer program and the processor is configured to run the computer program to perform the steps in any of the above method embodiments.

[0068] Optionally, the electronic device may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor and the input / output device is connected to the processor.

[0069] Optionally, in this embodiment, the processor can be configured to perform the following steps via a computer program:

[0070] S1 retrieves the function class name from the database.

[0071] S2, through macro definition, adds the function class name and its corresponding function memory data structure name and time synchronization parameters to the base class of the data synchronization mechanism, and registers the synchronization storage mechanism of the corresponding function point for each function class name. The synchronization storage mechanism includes: memory data read and write interface mechanism, modification flag mechanism, data synchronization time mechanism and data byte stream serialization mechanism.

[0072] S3 uses a synchronous storage mechanism to store data for each functional point.

[0073] It should be noted that the specific examples in this embodiment can refer to the examples described in the above embodiments and optional implementations, and will not be repeated here.

[0074] In one embodiment, Figure 4 This is a schematic diagram of the internal structure of an electronic device according to an embodiment of this application, such as... Figure 4 As shown, an electronic device is provided, which can be a server, and its internal structure diagram can be as follows. Figure 4 As shown, this electronic device includes a processor, memory, network interface, and database connected via a system bus. The processor provides computing and control capabilities. The memory includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores the operating system, computer programs, and database. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage medium. The database stores data. The network interface communicates with external terminals via a network connection. When the computer program is executed by the processor, it implements a game server data storage synchronization method.

[0075] Those skilled in the art will understand that Figure 4 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the electronic device to which the present application is applied. The specific electronic device may include more or fewer components than shown in the figure, or combine certain components, or have different component arrangements.

[0076] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. This computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments of the above methods. Any references to memory, storage, databases, or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), RAMbus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and RAMbus dynamic RAM (RDRAM), etc.

[0077] Those skilled in the art should understand that the technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments have been described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0078] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the invention patent. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this patent application should be determined by the appended claims.

Claims

1. A method for synchronizing data storage on a game server, characterized in that, The method includes: Retrieve the function class names from the database; By using macro definitions, the functional class name, its corresponding functional memory data structure name, and time synchronization parameters are added to the base class of the data synchronization mechanism. The synchronization storage mechanism for each functional point corresponding to each functional class name is registered. The synchronization storage mechanism includes: memory data read / write interface mechanism, modification flag mechanism, data synchronization time mechanism, and data byte stream serialization mechanism. The synchronous storage mechanism stores data for each functional point, including: using the memory data read / write interface mechanism, calling the read interface of the functional point corresponding to the current functional class name to obtain the corresponding functional point data, and calling the write interface of the functional point corresponding to the current functional class name to modify the memory data; using the modification marking mechanism, creating a write operation handle when calling the write interface, performing logical processing on the write operation handle according to the modification progress of the memory data, detecting the access value of the write operation handle, and determining whether storage can be performed based on the access value; using the data synchronization time mechanism, determining whether the difference between the current time and the last database synchronization time reaches a preset threshold, and if so, performing storage and recording the current time, wherein the preset threshold is determined by the time synchronization parameter corresponding to the current functional class name; using the data byte stream serialization mechanism, serializing the functional point data to obtain a data byte stream, and storing the current functional class name and the data byte stream into the database.

2. The method according to claim 1, characterized in that, The step of determining whether storage can be performed based on the access volume value includes: Determine whether the access count value is 0. If so, perform storage. When the write operation handle is created, the access count value is set to 1. When the write operation ends, the write operation handle is released, and the access count value is set to 0.

3. A game server data storage and synchronization system, characterized in that, The system includes: a fetch module, a registration module, and a storage module. The pull module is used to pull the functional class names from the database data; The registration module is used to add the function class name and its corresponding function memory data structure name and time synchronization parameters to the base class of the data synchronization mechanism through macro definition, and register the synchronization storage mechanism of the function point corresponding to each function class name. The synchronization storage mechanism includes: memory data read and write interface mechanism, modification flag mechanism, data synchronization time mechanism and data byte stream serialization mechanism. The storage module is used to store data for each functional point through the synchronous storage mechanism, including: calling the read interface of the functional point corresponding to the current functional class name through the memory data read / write interface mechanism to obtain the corresponding functional point data, and calling the write interface of the functional point corresponding to the current functional class name to modify the memory data; creating a write operation handle when calling the write interface through the modification marking mechanism, performing logical processing on the write operation handle according to the modification progress of the memory data, detecting the access value of the write operation handle, and determining whether storage can be performed based on the access value; determining whether the difference between the current time and the last database synchronization time reaches a preset threshold through the data synchronization time mechanism, and if so, performing storage and recording the current time, wherein the preset threshold is determined by the time synchronization parameter corresponding to the current functional class name; and serializing the functional point data through the data byte stream serialization mechanism to obtain a data byte stream, and storing the current functional class name and the data byte stream into the database.

4. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the game server data storage synchronization method as described in any one of claims 1 to 2.

5. A storage medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the game server data storage synchronization method as described in any one of claims 1 to 2.