Configuration updating method and device, storage medium and electronic equipment
By dividing business configuration data into global common and local exclusive data, and using differential update methods, the problem of low configuration update efficiency is solved, and a more efficient update process is achieved.
Patent Information
- Application Number
- CN202410011640.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-02
- Publication Date
- 2025-07-04
AI Technical Summary
In the prior art, there are problems with excessive network bandwidth and data processing performance overhead during configuration update, resulting in low update efficiency.
The business configuration data is divided into global common data and local exclusive data. The difference update method is used to update only the difference part to avoid full update.
Reduces unnecessary network bandwidth and data processing performance overhead, and improves the efficiency of configuration updates.
Smart Images

Figure CN120255937A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computers, and more particularly, to a configuration update method, apparatus, storage medium, and electronic device. Background Art
[0002] In a configuration update scenario, usually the server uniformly packages all the data required for the update in full, and then distributes it to each client. However, the full data update will bring unnecessary network bandwidth overhead and data processing performance overhead. For example, the configuration data that the client already has will be repeatedly distributed, which will lead to a problem of low configuration update efficiency. Therefore, there is a problem of low configuration update efficiency.
[0003] In response to the above problem, no effective solution has been proposed yet. Summary of the Invention
[0004] Embodiments of this application provide a configuration update method, apparatus, storage medium, and electronic device to at least solve the technical problem of low configuration update efficiency.
[0005] According to one aspect of the embodiments of this application, a configuration update method is provided, including: in response to a configuration update request, obtaining service configuration data required for an object client to run an application service, where the configuration update request is used to request an update of the service configuration data, the service configuration data includes first configuration data and second configuration data, the first configuration data is global shared data required for the object client to run the application service, and the second configuration data is local exclusive data required for the object client to run the application service; in the case where the configuration update request indicates an update of the service configuration data belonging to the global shared data, obtaining differential update data belonging to the global shared data, and using the differential update data belonging to the global shared data to update the first configuration data, where the differential update data is used to represent the content difference between the content indicated by the configuration update request to be updated and the existing content of the service configuration data; in the case where the configuration update request indicates an update of the service configuration data belonging to the local exclusive data, obtaining differential update data belonging to the local exclusive data, and using the differential update data belonging to the local exclusive data to update the second configuration data.
[0006] According to another aspect of the embodiments of the present application, another configuration update method is provided, including: obtaining full-scale update data, where the full-scale update data is used to represent the content indicated to be updated by a configuration update request, the configuration update request is used to request an update of service configuration data required for an object client to run an application service, the service configuration data includes first configuration data and second configuration data, the first configuration data is global shared data required for the object client to run the application service, and the second configuration data is local exclusive data required for the object client to run the application service; when the configuration update request indicates an update to service configuration data belonging to the global shared data, packing the full-scale update data into differential update data belonging to the global shared data, and sending the differential update data belonging to the global shared data to the object client to update the first configuration data, where the differential update data is used to represent the content difference between the content indicated to be updated by the configuration update request and the existing content of the service configuration data; when the configuration update request indicates an update to service configuration data belonging to the local exclusive data, packing the full-scale update data into differential update data belonging to the local exclusive data, and sending the differential update data belonging to the local exclusive data to the object client to update the second configuration data.
[0007] According to another aspect of the embodiments of the present application, a configuration update device is further provided, including: a first obtaining unit, configured to obtain service configuration data required for an object client to run an application service in response to a configuration update request, where the configuration update request is used to request an update of the service configuration data, the service configuration data includes first configuration data and second configuration data, the first configuration data is global shared data required for the object client to run the application service, and the second configuration data is local exclusive data required for the object client to run the application service; a first update unit, configured to obtain differential update data belonging to the global shared data and use the differential update data belonging to the global shared data to update the first configuration data when the configuration update request indicates an update to service configuration data belonging to the global shared data, where the differential update data is used to represent the content difference between the content indicated to be updated by the configuration update request and the existing content of the service configuration data; a second update unit, configured to obtain differential update data belonging to the local exclusive data and use the differential update data belonging to the local exclusive data to update the second configuration data when the configuration update request indicates an update to service configuration data belonging to the local exclusive data.
[0008] As an alternative, the above-mentioned second update unit includes at least one of the following: a first acquisition module, configured to acquire the differential update data exclusive to the first operation scope when the object client is within the first operation scope, where the local exclusive data includes the data exclusive to the first operation scope; a second acquisition module, configured to acquire the differential update data exclusive to the first management area when the object client is within the first management area, where the local exclusive data includes the data exclusive to the first management area.
[0009] As an alternative, the above-mentioned first acquisition module includes: a first acquisition sub-module, configured to acquire the differential update data exclusive to the first operation scope when the object client is within the first operation scope and the configuration update request indicates to update the data exclusive to the first operation scope; or, the above-mentioned second acquisition module includes: a second acquisition sub-module, configured to acquire the differential update data exclusive to the first management area when the object client is within the first management area and the configuration update request indicates to update the data exclusive to the first management area.
[0010] As an alternative, the above-mentioned second update unit includes: a third acquisition module, configured to acquire the differential update data exclusive to the second operation scope and the differential update data exclusive to the second management area when the object client is within the second management area within the second operation scope, where the second operation scope includes at least one management area, the at least one management area includes the second management area, and the local exclusive data includes the data exclusive to the second management area and the data exclusive to the second operation scope.
[0011] As an alternative, the above-mentioned first acquisition unit includes: a fourth acquisition module, configured to acquire the first configuration data and the second configuration data, where the first configuration data is pre-split into first full data and first differential data, and the second configuration data is pre-split into second full data and second differential data; the above-mentioned first update unit includes: a first update module, configured to update the first differential data by using the differential update data belonging to the global shared data; the above-mentioned second update unit includes: a second update module, configured to update the second differential data by using the differential update data belonging to the local exclusive data.
[0012] As an alternative solution, the above device further includes: a first adjustment module, configured to, during the process of updating the first differential data by using the differential update data belonging to the globally shared data, in the case where the data after the update of the first differential data conflicts with the first full amount data, preferentially use the data after the update of the first differential data to adjust the first full amount data until the first full amount data adapts to the data after the update of the first differential data; the device further includes: a second adjustment module, configured to, during the process of updating the second differential data by using the differential update data belonging to the locally exclusive data, in the case where the data after the update of the second differential data conflicts with the second full amount data, preferentially use the data after the update of the second differential data to adjust the second full amount data until the second full amount data adapts to the data after the update of the second differential data.
[0013] As an alternative solution, the above first update unit includes: a fifth acquisition module, configured to acquire the differential update data belonging to the globally shared data sent by the object server, where the object server is configured to calculate and send the content indicated by the configuration update request to be updated; a first verification module, configured to, when the object client logs in to the object server, use the differential update data belonging to the globally shared data to verify with the original update data belonging to the globally shared data stored in the object server; a first hot update module, configured to, when the verification is passed, use the differential update data belonging to the globally shared data to hot update the first configuration data; the second update unit includes: a sixth acquisition module, configured to acquire the differential update data belonging to the locally exclusive data sent by the object server; a second verification module, configured to, when the object client logs in to the object server, use the differential update data belonging to the locally exclusive data to verify with the original update data belonging to the locally exclusive data stored in the object server; a second hot update module, configured to, when the verification is passed, use the differential update data belonging to the locally exclusive data to hot update the second configuration data.
[0014] According to another aspect of the embodiments of the present application, another configuration update device is further provided, including: a second acquisition unit, configured to acquire full update data, where the full update data is used to represent the content indicated to be updated by a configuration update request, the configuration update request is used to request business configuration data required for an object client to run an application service, the business configuration data includes first configuration data and second configuration data, the first configuration data is global shared data required for the object client to run the application service, and the second configuration data is local exclusive data required for the object client to run the application service; a first sending unit, configured to, when the configuration update request indicates an update to the business configuration data belonging to the global shared data, package the full update data into differential update data belonging to the global shared data, and send the differential update data belonging to the global shared data to the object client to update the first configuration data, where the differential update data is used to represent the content difference between the content indicated to be updated by the configuration update request and the existing content of the business configuration data; a second sending unit, configured to, when the configuration update request indicates an update to the business configuration data belonging to the local exclusive data, package the full update data into differential update data belonging to the local exclusive data, and send the differential update data belonging to the local exclusive data to the object client to update the second configuration data.
[0015] As an optional solution, the first sending unit includes: a first sending module, configured to send the differential update data belonging to the global shared data to the object clients within a third operation scope when the configuration update request indicates an update to the data exclusive to the third operation scope; or, a second sending module, configured to send the differential update data belonging to the global shared data to the object clients in a third management area when the configuration update request indicates an update to the data exclusive to the third management area, where the third operation scope includes the third management area; the second sending unit includes: a third sending module, configured to send the differential update data belonging to the local exclusive data to the object clients within a fourth operation scope when the configuration update request indicates an update to the data exclusive to the fourth operation scope; or, a fourth sending module, configured to send the differential update data belonging to the local exclusive data to the object clients in a fourth management area when the configuration update request indicates an update to the data exclusive to the fourth management area, where the fourth operation scope includes the fourth management area.
[0016] According to another aspect of the embodiments of the present application, there is provided a computer program product or a computer program. The computer program product or the computer program includes computer instructions, and the computer instructions are stored in a computer-readable storage medium. A processor of an electronic device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the electronic device executes the configuration update method as described above.
[0017] According to another aspect of the embodiments of the present application, there is also provided an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor. The processor executes the above configuration update method through the computer program.
[0018] In the embodiments of the present application, by classifying the service configuration data required when the object client runs the application service into the global common data required when the object client runs the above application service and the local exclusive data required when the object client runs the above application service, the layering between the common data and the differentiated data of the service configuration data is realized. Different layering can correspond to different configuration update requirements, so that each configuration update only needs to update the corresponding layered data, and there is no need to update all the service configuration data. At the same time, for the updated content of the service configuration data in this embodiment, it is not the full amount of updated content, but only the content that the service configuration data does not have. Thus, the purpose of reducing unnecessary network bandwidth overhead and data processing performance overhead is achieved, thereby realizing the technical effect of improving the configuration update efficiency, and further solving the technical problem of low configuration update efficiency. Description of the Drawings
[0019] The drawings described herein are used to provide a further understanding of the present application, and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application, and do not constitute an improper limitation to the present application. In the drawings:
[0020] Figure 1 is a schematic diagram of the application environment of an optional configuration update method according to the embodiments of the present application;
[0021] Figure 2 is a schematic diagram of the process of an optional configuration update method according to the embodiments of the present application;
[0022] Figure 3 is a schematic diagram of an optional configuration update method according to the embodiments of the present application;
[0023] Figure 4 is a schematic diagram of the process of another optional configuration update method according to the embodiments of the present application;
[0024] Figure 5Schematic diagram of another alternative configuration update method according to an embodiment of the present application;
[0025] Figure 6 Schematic diagram of another alternative configuration update method according to an embodiment of the present application;
[0026] Figure 7 Schematic diagram of another alternative configuration update method according to an embodiment of the present application;
[0027] Figure 8 Schematic diagram of another alternative configuration update method according to an embodiment of the present application;
[0028] Figure 9 Schematic diagram of another alternative configuration update method according to an embodiment of the present application;
[0029] Figure 10 Schematic diagram of another alternative configuration update method according to an embodiment of the present application;
[0030] Figure 11 Schematic diagram of another alternative configuration update method according to an embodiment of the present application;
[0031] Figure 12 Schematic diagram of an alternative configuration update device according to an embodiment of the present application;
[0032] Figure 13 Schematic diagram of another alternative configuration update device according to an embodiment of the present application;
[0033] Figure 14 Schematic diagram of the structure of an alternative electronic device according to an embodiment of the present application. Detailed implementation manners
[0034] In order to enable those skilled in the art to better understand the solutions of the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present application without creative efforts shall fall within the protection scope of the present application.
[0035] It should be noted that the terms "first", "second", etc. in the description, claims and the above-mentioned drawings of this application are used to distinguish similar objects, and do not necessarily describe a specific order or sequence. It should be understood that the data used in this way can be interchanged under appropriate circumstances, so that the embodiments of the present application described here can be implemented in an order other than those illustrated or described here. In addition, the terms "comprising" and "having" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, system, product or device comprising a series of steps or units does not necessarily have to be limited to those steps or units clearly listed, but may include other steps or units not clearly listed or inherent to these processes, methods, products or devices.
[0036] For ease of understanding, the following terms are explained:
[0037] Game configuration file: In a game project, it is a modifiable data configuration provided to game designers for modifying relevant values or parameters for game operation.
[0038] Xlsx: Xlsx is the extension name of a Microsoft Office EXCEL document, providing visual and editable tabular data. Local game configuration files are edited in xlsx format files.
[0039] Cloud configuration center: A configuration editing interface based on web services, used to provide a web configuration interface for configurators to modify configurations.
[0040] Bytes file: A binary file that can be read by the game server and client, generated by the conversion tool according to a specific format from the content input by the configurator.
[0041] Bytes file hot update: It refers to the function of the server sending the modified content of the Bytes file to the client without the client being updated. When the client receives the modified content, it automatically updates the content of the configuration file during operation.
[0042] Xml: An extensible structured data representation language.
[0043] Conversion: The workflow of converting text tabular data (such as xlsx data or cloud configuration center data) into a Bytes file used by the game program according to specific rules (such as the rules expressed in Xml form).
[0044] Configuration file level: Defines the scope of effect of the configuration file. Currently, it is divided into three levels: B0 global general configuration, B1 operator configuration, and B2 regional configuration. Among them, the B0 configuration takes effect in all operators and regions. B1 only takes effect within the corresponding operator scope, and B2 only takes effect in a certain region and area within the operating scope of the corresponding operator.
[0045] The Intelligent Traffic System (ITS), also known as the Intelligent Transportation System, effectively integrates advanced scientific and technological means (information technology, computer technology, data communication technology, sensor technology, electronic control technology, automatic control theory, operations research, artificial intelligence, etc.) into transportation, service control, and vehicle manufacturing, strengthening the connection among vehicles, roads, and users, thereby forming a comprehensive transportation system that ensures safety, improves efficiency, enhances the environment, and saves energy. Or;
[0046] The Intelligent Vehicle Infrastructure Cooperative Systems (IVICS), abbreviated as the vehicle-road collaborative system, is a development direction of the Intelligent Traffic System (ITS). The vehicle-road collaborative system uses advanced wireless communication and new-generation Internet technologies to comprehensively implement dynamic real-time information interaction between vehicles and between vehicles and roads, and conducts active vehicle safety control and road collaborative management based on the collection and fusion of dynamic traffic information in the whole space-time, fully realizing the effective collaboration of people, vehicles, and roads, ensuring traffic safety, improving traffic efficiency, and thus forming a safe, efficient, and environmentally friendly road traffic system.
[0047] Artificial Intelligence (AI) uses digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, and is a theory, method, technology, and application system that can perceive the environment, acquire knowledge, and use knowledge to obtain the best results. In other words, artificial intelligence is a comprehensive technology in computer science that attempts to understand the essence of intelligence and produce a new intelligent machine that can react in a way similar to human intelligence. Artificial intelligence also studies the design principles and implementation methods of various intelligent machines, enabling the machines to have the functions of perception, reasoning, and decision-making.
[0048] Artificial intelligence technology is an interdisciplinary subject with a wide range of fields, including both hardware-level and software-level technologies. The basic technologies of artificial intelligence generally include sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing technology, pre-trained model technology, operation / interaction systems, mechatronics, etc. Among them, the pre-trained model, also known as the large model or the foundation model, can be widely applied to downstream tasks in various directions of artificial intelligence after fine-tuning. The software technologies of artificial intelligence mainly include several major directions such as computer vision technology, speech processing technology, natural language processing technology, and machine learning / deep learning.
[0049] With the research and progress of artificial intelligence technology, artificial intelligence technology has been studied and applied in multiple fields, such as common smart homes, smart wearable devices, virtual assistants, smart speakers, smart marketing, driverless, autonomous driving, drones, digital twins, virtual humans, robots, artificial intelligence-generated content (AIGC), conversational interactions, smart healthcare, smart customer service, game AI, etc. It is believed that with the development of technology, artificial intelligence technology will be applied in more fields and play an increasingly important role.
[0050] The solution provided by the embodiments of this application relates to related technologies in the artificial intelligence scenario, and is specifically described through the following embodiments:
[0051] According to one aspect of the embodiments of this application, a configuration update method is provided. Optionally, as an alternative implementation, the above configuration update method can be but is not limited to being applied to an environment such as Figure 1 shown. Among them, it can but is not limited to include a user device 102 and a server 112. The user device 102 can be but is not limited to a device running an object client. The user device 102 can but is not limited to include a display 104, a processor 106, and a memory 108. The server 112 includes a database 114 and a processing engine 116.
[0052] The specific process can be as follows:
[0053] Step S102, the user device 102 obtains a configuration update request, and in response to the configuration update request through the processor 106, obtains the service configuration data required for the object client to run the application service;
[0054] Step S104, send the configuration update request to the server 112 through the network 110;
[0055] Step S106, the server 112 obtains the differential update data for updating the service configuration data in response to the configuration update request through the processing engine 116, where the differential update data is used to represent the content difference between the content indicated by the configuration update request to be updated and the existing content of the service configuration data;
[0056] Step S108, send the differential update data to the user device 102 through the network 110. The user device 102 displays the update result corresponding to the differential update data on the display 104 through the processor 106, and stores the above differential update data in the memory 108.
[0057] Except Figure 1In addition to the examples shown, the above terminal device may be a terminal device configured with a target client, and may include at least one of the following: mobile phones (such as Android phones, iOS phones, etc.), laptop computers, tablet computers, handheld computers, MIDs (Mobile Internet Devices), PADs, desktop computers, smart TVs, etc. The target client may be a video client, an instant messaging client, a browser client, an education client, etc. The above network may include but is not limited to: wired networks, wireless networks. Among them, the wired network includes: local area networks, metropolitan area networks, and wide area networks, and the wireless network includes: Bluetooth, WIFI, and other networks that implement wireless communication. The above server may be a single server, or a server cluster composed of multiple servers, or a cloud server. The above is only an example, and this embodiment does not make any limitations thereto.
[0058] Optionally, as an alternative implementation, as Figure 2 shown, the configuration update method may be executed by an electronic device, which may be, for example, a user device or a server as Figure 1 shown, and the specific steps include:
[0059] S202, in response to a configuration update request, obtain the service configuration data required for the object client to run the application service. Among them, the configuration update request is used to request an update of the service configuration data, and the service configuration data includes first configuration data and second configuration data. The first configuration data is the globally shared data required for the object client to run the application service, and the second configuration data is the locally exclusive data required for the object client to run the application service;
[0060] S204, in the case where the configuration update request indicates an update to the service configuration data belonging to the globally shared data, obtain the delta update data belonging to the globally shared data, and use the delta update data belonging to the globally shared data to update the first configuration data. Among them, the delta update data is used to represent the content difference between the content indicated by the configuration update request to be updated and the existing content of the service configuration data;
[0061] S206, in the case where the configuration update request indicates an update to the service configuration data belonging to the locally exclusive data, obtain the delta update data belonging to the locally exclusive data, and use the delta update data belonging to the locally exclusive data to update the second configuration data.
[0062] Optionally, in this embodiment, the above configuration update method can be but is not limited to being applied to the update scenario of game configurations. Game configurations can be configured with updated content locally or in a cloud configuration center according to requirements. As the scale of the game industry continues to expand, the number of game players, online duration, and the complexity of game programs and data are becoming increasingly high, which leads to a higher complexity in updating game configurations. Naturally, the higher-complexity configuration updates reduce the update efficiency of game configurations. To overcome this problem, this embodiment uses a hierarchical method of global shared data and local exclusive data, combined with differential updates of configuration data under different hierarchies, to reduce unnecessary network bandwidth overhead and data processing performance overhead during the game configuration process, achieving the technical effect of improving the update efficiency of game configurations.
[0063] Optionally, in this embodiment, the business configuration data required for the object client to run application services can be but is not limited to understood as a series of configuration information required to run application programs or business logics in the client environment. The business configuration data can be but is not limited to used to guide how the application program interacts with backend services, displays content, executes specific functions, etc. For example, the basic settings of the application program (start-up parameters, UI theme, default language, etc.); if the application program needs to interact with backend services (such as API endpoints, database connections, etc.), then the configuration data can be but is not limited to include the URLs, authentication credentials, request timeouts, etc. of these services; the application program may need to operate according to specific business rules or parameters. For example, the discount rate and promotion period of an e-commerce application; it can also include the content to be displayed in the application program, such as default articles, pictures, videos, etc.; it can also involve encryption keys, SSL certificates, access control lists, etc. to ensure the secure operation of the application program.
[0064] In this embodiment, when the (object) client application program starts, it can be but is not limited to checking this business configuration data to ensure the correct operation of the application program. If these configuration data change (for example, the URL of the backend service changes, new business logic parameters, etc.), then configuration updates need to be performed, that is, a configuration update request is triggered.
[0065] Optionally, in this embodiment, the global shared data required for the object client to run application services can be but is not limited to understood as the common data that all clients need to use when running this application service. It can be but is not limited to the basic settings of the application program, general rules, and other parameters applicable to all users, such as encryption keys, SSL certificates, default language, time zone, currency unit, etc. in the application program. The global shared data is crucial for the consistency and unity of the application program, thus ensuring that each user can run the application program in the same basic environment and configuration. The business configuration data can be but is not limited to include the global shared data.
[0066] Optionally, in this embodiment, the local exclusive data required by the object client when running the application service is different from the global shared data. The local exclusive data can be, but is not limited to, set for personalized requirements or specific business logics, and may only be applied to specific individuals or a range of clients. The update complexity of the local exclusive data may be higher than that of the global shared data. Therefore, in this embodiment, the local exclusive data can be dynamically inserted into specific positions of the object client in an interpolation manner to facilitate higher-frequency data updates and adjustments.
[0067] Optionally, in this embodiment, the delta update data is used to represent the content difference between the content indicated by the configuration update request to be updated and the existing content of the service configuration data. Or rather, in the process of configuration update in this embodiment, attention is paid to the changed or newly added parts, rather than the entire configuration data, which is more efficient and resource-saving compared with the full update method.
[0068] To further illustrate with an example, optionally, first identify the parts required to be changed in the configuration update request, which can be completed by comparing the new configuration data and the old configuration data. Once the changed parts are identified, the next step is to calculate the differences between these changes and the existing configuration data, and these differences can be understood as the delta update data. The delta update data is usually small and only contains the changed parts, rather than the entire configuration data. Therefore, when it is necessary to transmit the update data to the client or other systems, using the delta update data can greatly reduce the transmission time and bandwidth. At the same time, at the receiving end (object client), after receiving the delta update data, only these changes need to be applied to the existing configuration data, rather than processing the entire configuration data. Specifically, assume that there is a list with 100 entries in the configuration data of an application. If only 5 of these entries have changed, then the delta update data will only contain the new values or changed content of these 5 entries, rather than the 100 entries of the entire list.
[0069] Optionally, in this embodiment, obtain the delta update data belonging to the global shared data, and use the delta update data belonging to the global shared data to update the first configuration data; and obtain the delta update data belonging to the local exclusive data, and use the delta update data belonging to the local exclusive data to update the second configuration data.
[0070] For further illustration, optionally, the object client receives a configuration update request and initially determines the request type to identify whether it is a global shared data update or a local exclusive data update. If it is a global shared data update request, the system extracts the differential update data belonging to the global shared data. Verifies and merges this differential data into the existing global shared data. Updates the first configuration data and performs necessary tests and validations. If it is a local exclusive data update request, the system extracts the differential update data belonging to the local exclusive data. Verifies the legality of the differential data and locates the configuration data of the specific user or scenario that needs to be updated. Merges and applies this differential update data to the corresponding local exclusive data. Updates the second configuration data, records the log, and notifies the user as needed. Further ensures that the updates of the global shared data and the local exclusive data are synchronized in the system and deploys the changes comprehensively to ensure that all relevant parties are updated and aware of the changes. In addition, for the global and local data, this embodiment can, but is not limited to, continuously detect and maintain to ensure the integrity, accuracy, and security of the data.
[0071] It should be noted that in this embodiment, the service configuration data required by the object client when running the application service is divided into the global shared data required by the object client when running the application service and the local exclusive data required by the object client when running the application service, realizing the layering between the common data and the differential data of the service configuration data. Different layers can correspond to different configuration update requirements, so that each configuration update only needs to target and update the corresponding layer data, rather than updating all the service configuration data. At the same time, for the update content of the service configuration data in this embodiment, it is not the full update content, but only the content that does not exist in the service configuration data, so as to reduce unnecessary network bandwidth overhead and data processing performance overhead, and thus achieve the technical effect of improving the configuration update efficiency.
[0072] For further illustration, optionally, for example Figure 3As shown, in response to a configuration update request, business configuration data 306 required for the object client 302 to run an application service is obtained. The configuration update request is used to request an update of the business configuration data 306, and the business configuration data 306 includes first configuration data 306-1 and second configuration data 306-2. The first configuration data 306-1 is global shared data required for the object client 302 to run an application service, and the second configuration data 306-2 is local exclusive data required for the object client 302 to run an application service. In the case where the configuration update request indicates an update to the business configuration data 306 that belongs to global shared data, the object client 302 obtains the delta update data 308-1 that belongs to global shared data and is determined by the object server 304 from the update data 308, and uses the delta update data 308-1 that belongs to global shared data to update the first configuration data 306-1. The delta update data 308-1 is used to represent the content difference between the content indicated by the configuration update request to be updated and the existing content of the business configuration data 306. In the case where the configuration update request indicates an update to the business configuration data 306 that belongs to local exclusive data, the object client 302 obtains the delta update data 308-2 that belongs to local exclusive data and is determined by the object server 304 from the update data 308, and uses the delta update data 308-2 that belongs to local exclusive data to update the second configuration data 306-2.
[0073] According to the embodiments provided by the present application, in response to a configuration update request, business configuration data required for an object client to run an application service is obtained. The configuration update request is used to request an update of the business configuration data, and the business configuration data includes first configuration data and second configuration data. The first configuration data is global shared data required for the object client to run the application service, and the second configuration data is local exclusive data required for the object client to run the application service. When the configuration update request indicates an update to the business configuration data that belongs to the global shared data, differential update data belonging to the global shared data is obtained, and the first configuration data is updated using the differential update data belonging to the global shared data. The differential update data is used to represent the content difference between the content indicated by the configuration update request to be updated and the existing content of the business configuration data. When the configuration update request indicates an update to the business configuration data that belongs to the local exclusive data, differential update data belonging to the local exclusive data is obtained, and the second configuration data is updated using the differential update data belonging to the local exclusive data. By classifying the business configuration data required for the object client to run the application service into global shared data required for the object client to run the application service and local exclusive data required for the object client to run the application service, a layer separation between the common data and the differential data of the business configuration data is achieved. Different layers can correspond to different configuration update requirements, so that each configuration update only needs to target and update the corresponding layer data, without having to update all the business configuration data. At the same time, for the update content of the business configuration data in this embodiment, it is not a full update content, but only the content that the business configuration data does not have, thereby achieving the purpose of reducing unnecessary network bandwidth overhead and data processing performance overhead, and thus achieving the technical effect of improving the configuration update efficiency.
[0074] As an alternative solution, obtaining the differential update data belonging to the local exclusive data includes at least one of the following:
[0075] S1-1, when the object client is within the first operation scope, obtaining the differential update data exclusive to the first operation scope, where the local exclusive data includes the data exclusive to the first operation scope;
[0076] S1-2, when the object client is in the first management area, obtaining the differential update data exclusive to the first management area, where the local exclusive data includes the data exclusive to the first management area.
[0077] Optionally, in this embodiment, the application service can be jointly operated by multiple operators, but is not limited to this. Different operators may have different resources and technical capabilities. Through cooperation, resource sharing and complementarity can be achieved, improving the overall operation efficiency. Moreover, when multiple operators jointly promote and apply the service, the market coverage can be expanded, the user acquisition channels can be increased, and the market share can be improved. Among them, different operators among the multiple operators can correspond to different operation scopes. For example, the first operator corresponds to the first operation scope.
[0078] Optionally, in this embodiment, the application service can be divided into different management regions, but is not limited to this. Different management regions can be managed by different servers or server clusters, but are not limited to this. By managing different management regions with different servers or server clusters, a distributed management architecture can be achieved. This can reduce the load on a single server, improve the scalability and availability of the system. If a certain server or server cluster fails, the servers in other regions can still operate normally. For example, the first management region is managed by the first server, and the configuration update of the object clients within the first management region can also be assisted by the first server, but is not limited to this.
[0079] As an optional solution, obtaining the differential update data exclusive to the first operation scope includes: when the object client is within the first operation scope and the configuration update request indicates to update the data exclusive to the first operation scope, obtaining the differential update data exclusive to the first operation scope; or,
[0080] As an optional solution, obtaining the differential update data exclusive to the first management region includes: when the object client is within the first management region and the configuration update request indicates to update the data exclusive to the first management region, obtaining the differential update data exclusive to the first management region.
[0081] It should be noted that when the object client is within the first operation scope and the configuration update request clearly indicates that the data exclusive to the first operation scope needs to be updated, this embodiment will specifically obtain the differential update data exclusive to the first operation scope. These data are only related to the first operation scope and are used to accurately update the configuration within this scope. Similarly, when the object client is within the first management region and the configuration update request clearly indicates that the data exclusive to the first management region needs to be updated, this embodiment will correspondingly obtain the differential update data exclusive to the first management region. These differential data reflect the characteristics of the first management region and are used to accurately update the configuration within this region. This targeted data acquisition and update method ensures the accuracy and efficiency of the configuration update, avoids unnecessary global updates, reduces data transmission and processing overhead, and also reduces the risk of errors.
[0082] Through the embodiments provided in the present application, when the object client is within the first operation scope and the configuration update request indicates to update the data exclusive to the first operation scope, the differential update data exclusive to the first operation scope is obtained; when the object client is within the first management area and the configuration update request indicates to update the data exclusive to the first management area, the differential update data exclusive to the first management area is obtained, thereby achieving the purpose of avoiding unnecessary global updates and reducing data transmission and processing overheads, and thus realizing the technical effect of improving the update efficiency of the configuration.
[0083] As an alternative solution, obtaining the differential update data belonging to the locally exclusive data includes:
[0084] When the object client is within the second management area within the second operation scope, the differential update data exclusive to the second operation scope and the differential update data exclusive to the second management area are obtained, where the second operation scope includes at least one management area, the at least one management area includes the second management area, and the locally exclusive data includes the data exclusive to the second management area and the data exclusive to the second operation scope.
[0085] It should be noted that in this embodiment, the differential update data exclusive to the second operation scope is obtained. These data are specifically customized for the second operation scope and are used to accurately update the configuration within this operation scope. At the same time, since the object client is also within the second management area, in this embodiment, the differential update data exclusive to the second management area is also obtained. These data reflect the unique requirements of the second management area and ensure the accurate update of the configuration in this management area.
[0086] Through the embodiments provided in the present application, when the object client is within the second management area within the second operation scope, the differential update data exclusive to the second operation scope and the differential update data exclusive to the second management area are obtained, where the second operation scope includes at least one management area, the at least one management area includes the second management area, and the locally exclusive data includes the data exclusive to the second management area and the data exclusive to the second operation scope, which can accurately meet the personalized configuration requirements of the object client within a specific operation scope and management area, thereby achieving the purpose of ensuring the accuracy and efficiency of the configuration, avoiding unnecessary data transmission and processing, and at the same time reducing the complexity of configuration updates, and thus realizing the technical effect of improving the update efficiency of the configuration.
[0087] As an alternative solution, obtaining the service configuration data required when the object client runs the application service includes: obtaining the first configuration data and the second configuration data, where the first configuration data is pre-split into the first full amount data and the first differential data, and the second configuration data is pre-split into the second full amount data and the second differential data;
[0088] As an alternative, update the first configuration data by using the differential update data belonging to the globally shared data, including: updating the first differential data by using the differential update data belonging to the globally shared data;
[0089] As an alternative, update the second configuration data by using the differential update data belonging to the locally exclusive data, including: updating the second differential data by using the differential update data belonging to the locally exclusive data.
[0090] It should be noted that when the object client is located in a specific area (such as the first operation scope or the first management area), this embodiment will obtain the differential update data exclusive to this area. These differential update data are used to update the configurations of the corresponding areas to ensure the accuracy and consistency of the configurations. At the same time, the data acquisition and update operations in different areas are carried out according to the instructions in the configuration update request to ensure the pertinence and efficiency of the update.
[0091] When it comes to nested areas (such as the second management area within the second operation scope), this embodiment will obtain the differential update data exclusive to the second operation scope and the differential update data exclusive to the second management area. This multi-level acquisition method meets more complex configuration requirements and ensures that the configurations at each level are accurately updated. This strategy takes into account the hierarchical structure and inclusion relationship between the operation scope and the management area to achieve more flexible and efficient operation management.
[0092] Finally, in the process of updating data by using the differential update data, the differential update data belonging to the globally shared data are used to update the global configuration to ensure the consistency and unity of the overall embodiment. And the differential update data belonging to the locally exclusive data are used to update the configurations of specific areas to meet local requirements. This targeted update method improves the accuracy and efficiency of the update and reduces unnecessary resource consumption.
[0093] Through the embodiments provided in this application, obtain the first configuration data and the second configuration data, wherein the first configuration data is pre-split into the first full amount data and the first differential data, and the second configuration data is pre-split into the second full amount data and the second differential data; update the first differential data by using the differential update data belonging to the globally shared data; update the second differential data by using the differential update data belonging to the locally exclusive data, thereby achieving the purpose of reducing unnecessary resource consumption, and thus realizing the technical effect of improving the update efficiency of the configuration.
[0094] As an alternative solution, during the process of updating the first differential data with the differential update data belonging to the globally shared data, the method further includes: in the case where there is a conflict between the data after the update of the first differential data and the first full data, preferentially using the data after the update of the first differential data to adjust the first full data until the first full data adapts to the data after the update of the first differential data;
[0095] As an alternative solution, during the process of updating the second differential data with the differential update data belonging to the locally exclusive data, the method further includes: in the case where there is a conflict between the data after the update of the second differential data and the second full data, preferentially using the data after the update of the second differential data to adjust the second full data until the second full data adapts to the data after the update of the second differential data.
[0096] It should be noted that when there is a conflict between the data after the update of the first differential data and the first full data, this embodiment preferentially considers using the data after the update of the first differential data. Or rather, this embodiment will adjust the first full data so that the adjusted first full data adapts to the data after the update of the first differential data to ensure the accuracy and consistency of the data. By preferentially adopting the data after the differential update, this embodiment can ensure that the latest state and changes of the data are correctly applied.
[0097] Similarly, in the case where there is a conflict between the data after the update of the second differential data and the second full data, this embodiment will also preferentially use the data after the update of the second differential data. Or rather, this embodiment will adjust the second full data so that the adjusted second full data is consistent with the data after the update of the second differential data.
[0098] Through the embodiments provided by this application, in the case where there is a conflict between the data after the update of the first differential data and the first full data, preferentially using the data after the update of the first differential data to adjust the first full data until the first full data adapts to the data after the update of the first differential data; in the case where there is a conflict between the data after the update of the second differential data and the second full data, preferentially using the data after the update of the second differential data to adjust the second full data until the second full data adapts to the data after the update of the second differential data, thereby achieving the purpose of ensuring the priority and accuracy of the differential update data, and at the same time the full data will be adjusted accordingly to adapt to the changes of the differential data, thus realizing the technical effect of maintaining the overall consistency and integrity of the configuration data.
[0099] As an alternative solution, obtaining the differential update data belonging to the globally shared data and using the differential update data belonging to the globally shared data to update the first configuration data includes:
[0100] S2-1. Obtain the differential update data of the globally shared data sent by the object server, where the object server is used to calculate and send the content to be updated indicated by the configuration update request;
[0101] S2-2. When the object client logs in to the object server, use the differential update data of the globally shared data to verify with the original update data of the globally shared data stored in the object server;
[0102] S2-3. When the verification passes, use the differential update data of the globally shared data to hot update the first configuration data;
[0103] As an optional solution, obtain the differential update data of the locally exclusive data, and use the differential update data of the locally exclusive data to update the second configuration data, including:
[0104] S3-1. Obtain the differential update data of the locally exclusive data sent by the object server;
[0105] S3-2. When the object client logs in to the object server, use the differential update data of the locally exclusive data to verify with the original update data of the locally exclusive data stored in the object server;
[0106] S3-3. When the verification passes, use the differential update data of the locally exclusive data to hot update the second configuration data.
[0107] Optionally, in this embodiment, the object client logging in to the object server can be understood as the process of the client establishing a connection with the server and performing identity verification. Specifically, the object client will send a login request to the object server and provide corresponding identity verification information (such as username and password). After receiving the login request, the object server will verify the validity of the identity verification information. If the verification passes, the object server will allow the object client to log in and establish a corresponding session connection.
[0108] Optionally, in this embodiment, hot update can be but is not limited to the instant update encountered when the user opens the application service after downloading and installing the application service. Hot update can be but is not limited to being divided into two types: resource hot update and code hot update. For example, resource hot update is mainly implemented through AssetBundle. In the Unity editor, specify the name and suffix of the AB package for the resources used in the game, then package and upload them to the server, and dynamically load the AB resource package on the server when the game runs. And code hot update is actually also a way of hot updating the code regarded as a resource.
[0109] It should be noted that the differential update data belonging to the globally shared data is obtained from the object server. Here, the object server is responsible for calculating and sending down the update content indicated by the configuration update request. When the object client logs in to the object server, it will use the differential update data of these globally shared data to verify with the original update data of the globally shared data stored on the object server to ensure the integrity and accuracy of the data. If the verification of the globally shared data passes, then the first configuration data will be hot-updated using these differential update data. This means that the first configuration data will be updated instantaneously and dynamically without the need to restart the application or interrupt the service.
[0110] Similarly, similar to obtaining global data, the differential update data belonging to the locally exclusive data is also obtained from the object server. Similarly, after the object client logs in to the object server, the differential update data of these locally exclusive data is used to verify with the original update data of the locally exclusive data stored on the object server to ensure the accuracy of the data. When the verification of the locally exclusive data passes, the second configuration data is hot-updated using these differential update data to achieve dynamic and instant update of the local configuration.
[0111] Through the embodiments provided in this application, the differential update data belonging to the globally shared data sent down by the object server is obtained, where the object server is used to calculate and send down the content indicated by the configuration update request; in the case where the object client logs in to the object server, the differential update data belonging to the globally shared data is used to verify with the original update data of the globally shared data stored by the object server; in the case where the verification passes, the first configuration data is hot-updated using the differential update data belonging to the globally shared data; the differential update data belonging to the locally exclusive data sent down by the object server is obtained; in the case where the object client logs in to the object server, the differential update data belonging to the locally exclusive data is used to verify with the original update data of the locally exclusive data stored by the object server; in the case where the verification passes, the second configuration data is hot-updated using the differential update data belonging to the locally exclusive data, thereby achieving the purpose of allowing the object client to process and update the configuration data more flexibly, which can be updated globally or locally specifically, and at the same time ensuring the accuracy and integrity of the data, thus achieving the technical effect of improving the stability of the configuration update.
[0112] Optionally, as an alternative implementation, as Figure 4 shown, the configuration update method can be executed by an electronic device, and this electronic device can be, for example, a user device or a server as Figure 1 shown, and the specific steps include:
[0113] S402. Obtain the full update data, where the full update data is used to represent the content indicated to be updated by the configuration update request. The configuration update request is used to request the update of the service configuration data required for the object client to run the application service. The service configuration data includes the first configuration data and the second configuration data. The first configuration data is the global common data required for the object client to run the application service, and the second configuration data is the local exclusive data required for the object client to run the application service.
[0114] S404. In the case where the configuration update request indicates the update of the service configuration data belonging to the global common data, package the full update data into the differential update data belonging to the global common data, and send the differential update data belonging to the global common data to the object client to update the first configuration data, where the differential update data is used to represent the content difference between the content indicated to be updated by the configuration update request and the existing content of the service configuration data.
[0115] S406. In the case where the configuration update request indicates the update of the service configuration data belonging to the local exclusive data, package the full update data into the differential update data belonging to the local exclusive data, and send the differential update data belonging to the local exclusive data to the object client to update the second configuration data.
[0116] For specific embodiments, reference can be made to the examples shown in the above configuration update method, and details are not described herein again.
[0117] It should be noted that in this embodiment, the service configuration data required for the object client to run the application service is divided into the global common data required for the object client to run the application service and the local exclusive data required for the object client to run the application service, realizing the layering between the common data and the differential data of the service configuration data. Different layers can correspond to different configuration update requirements, so that each configuration update only needs to update the corresponding layered data specifically, without updating all the service configuration data. At the same time, for the updated content of the service configuration data in this embodiment, it is not the full updated content, but only the content that does not exist in the service configuration data, so as to reduce unnecessary network bandwidth overhead and data processing performance overhead, and thus achieve the technical effect of improving the configuration update efficiency.
[0118] For further illustration by way of example, optionally, for example Figure 3As shown, obtain (full volume) update data 308, where the (full volume) update data 308 is used to represent the content indicated to be updated by the configuration update request. The configuration update request is used to request the business configuration data 306 required for the object client 302 to run the application service. The business configuration data 306 includes first configuration data 306-1 and second configuration data 306-2. The first configuration data 306-1 is the global common data required for the object client 302 to run the application service, and the second configuration data 306-2 is the local exclusive data required for the object client 302 to run the application service. In the case where the configuration update request indicates an update to the business configuration data 306 that belongs to the global common data, pack the (full volume) update data 308 into differential update data 308-1 that belongs to the global common data, and send the differential update data 308-1 that belongs to the global common data to the object client 302 to update the first configuration data 306-1, where the differential update data 308-1 is used to represent the content difference between the content indicated to be updated by the configuration update request and the existing content of the business configuration data 306. In the case where the configuration update request indicates an update to the business configuration data 306 that belongs to the local exclusive data, pack the (full volume) update data 308 into differential update data 308-2 that belongs to the local exclusive data, and send the differential update data 308-2 that belongs to the local exclusive data to the object client 302 to update the second configuration data 306-2.
[0119] Through the embodiments provided in this application, full-update data is obtained, where the full-update data is used to represent the content indicated to be updated by a configuration update request. The configuration update request is used to request the business configuration data required for an object client to run an application service. The business configuration data includes first configuration data and second configuration data. The first configuration data is the globally shared data required for the object client to run the application service, and the second configuration data is the locally exclusive data required for the object client to run the application service. When the configuration update request indicates an update to the business configuration data that belongs to the globally shared data, the full-update data is packaged into differential update data that belongs to the globally shared data, and the differential update data that belongs to the globally shared data is sent to the object client to update the first configuration data, where the differential update data is used to represent the content difference between the content indicated to be updated by the configuration update request and the existing content of the business configuration data. When the configuration update request indicates an update to the business configuration data that belongs to the locally exclusive data, the full-update data is packaged into differential update data that belongs to the locally exclusive data, and the differential update data that belongs to the locally exclusive data is sent to the object client to update the second configuration data. By classifying the business configuration data required for an object client to run an application service into the globally shared data required for the object client to run the application service and the locally exclusive data required for the object client to run the application service, a layer separation is achieved between the common data and the differential data of the business configuration data. Different layers can correspond to different configuration update requirements, so that each configuration update only needs to target and update the corresponding layer data, without having to update all the business configuration data. At the same time, for the update content of the business configuration data in this embodiment, it is not a full update content, but only the content that does not exist in the business configuration data is updated, thereby achieving the purpose of reducing unnecessary network bandwidth overhead and data processing performance overhead, and thus achieving the technical effect of improving the configuration update efficiency.
[0120] As an optional solution, sending the differential update data that belongs to the globally shared data to the object client includes:
[0121] S4-1, when the configuration update request indicates an update to the data exclusive to the third operation scope, sending the differential update data that belongs to the globally shared data to the object clients within the third operation scope; or,
[0122] S4-2, when the configuration update request indicates an update to the data exclusive to the third management area, sending the differential update data that belongs to the globally shared data to the object clients in the third management area, where the third operation scope includes the third management area;
[0123] As an optional solution, sending the differential update data that belongs to the locally exclusive data to the object client includes:
[0124] S5-1, when the configuration update request indicates to update the data exclusive to the fourth operation scope, send the differential update data belonging to the local exclusive data to the target client within the fourth operation scope; or,
[0125] S5-2, when the configuration update request indicates to update the data exclusive to the fourth management area, send the differential update data belonging to the local exclusive data to the target client in the fourth management area, where the fourth operation scope includes the fourth management area.
[0126] It should be noted that if the configuration update request indicates to update the data exclusive to the third operation scope, this embodiment will send the differential update data belonging to the global shared data to the target client within the third operation scope. Then the target client can use these differential update data to update its global configuration.
[0127] If the configuration update request indicates to update the data exclusive to the third management area, then this embodiment will send the differential update data belonging to the global shared data to the target client in the third management area. Since the third management area is included in the third operation scope, it is appropriate to use the differential update data of the global shared data.
[0128] Similarly, for other operation scopes (such as the fourth operation scope) and management areas (such as the fourth management area), when the configuration update request indicates to update the data exclusive to the fourth operation scope, this embodiment will send the differential update data belonging to the local exclusive data to the target client within the fourth operation scope to ensure that the target client within the fourth operation scope can accurately receive and apply the relevant differential updates.
[0129] If the configuration update request is for the data exclusive to the fourth management area, then the differential update data belonging to the local exclusive data will be sent to the target client in the fourth management area. Since the fourth management area is included in the fourth operation scope, this targeted update method can ensure that the specific configuration within this area is accurately updated.
[0130] Through the embodiments provided in the present application, when a configuration update request indicates to update data exclusive to a third operation scope, differential update data belonging to globally shared data is sent to the target clients within the third operation scope; or, when a configuration update request indicates to update data exclusive to a third management area, differential update data belonging to globally shared data is sent to the target clients in the third management area, where the third operation scope includes the third management area; when a configuration update request indicates to update data exclusive to a fourth operation scope, differential update data belonging to locally exclusive data is sent to the target clients within the fourth operation scope; or, when a configuration update request indicates to update data exclusive to a fourth management area, differential update data belonging to locally exclusive data is sent to the target clients in the fourth management area, where the fourth operation scope includes the fourth management area. Thus, the purpose of ensuring that differential update data can be accurately and efficiently sent to the target clients in each operation scope and management area that need to be updated is achieved, thereby realizing the technical effect of precise and immediate update of the configuration.
[0131] As an alternative solution, for ease of understanding, the above configuration update method is applied to the automated hot update scenario of server game configuration based on multiple operators and multiple regions. During the operation of the game server program, the main functions are carried by several services with different functions and their corresponding multiple service entities. In addition to the program functions, each service also has an important component, namely the game configuration file that provides data content. Game program developers can provide game planners and designers with the ability to modify and verify the published data content through the game configuration file, decoupling the program functions from the data content, so as to reduce the package size levels that need to be updated for the game server and the client when the game content is updated. The content update can be completed without the need to restart the processes of the game server and the client (by means of runtime reloading).
[0132] In the game business with multi-region operation, it faces a more complex data file organization method than single-region operation. In the business of this embodiment, the server of this embodiment has a globally unified server partitioned architecture and operates in a way that divides operators and regions, such as Figure 5 shown. In such a regional operation mode, this embodiment extracts the common data configuration content as the B0 layer configuration, the differentiated operation configuration as the B1 layer configuration, and the regional configuration under the operator as the B2 layer configuration. Each layer of configuration can be published as needed and sent to the client through the server to achieve configuration hot update.
[0133] Optionally, in this embodiment, a server game configuration automated hot update solution for partitioned operation games applicable to multiple operators and multiple regions is designed and implemented. In this embodiment, game configurators can configure data content according to requirements in a local or cloud configuration center. The configuration center or local configuration tool automatically packages the configuration content into configuration Bytes files at different levels according to requirements. The server packages the configuration Bytes files and distributes them to game player clients of different operators and different regions. In this way, game player clients can obtain updated game operation function content without the need for updates. Through this method, game content developers can efficiently and automatically release game content that needs to be updated, simplify manual processes, and reduce the loss of game user experience caused by explicit game updates (such as version updates through an app store).
[0134] Optionally, in this embodiment, for the server architecture of partitioned operation games, a configuration structure with three layers of B0, B1, and B2 is adopted to achieve the reuse of common data of game content and the isolation of differential data.
[0135] Optionally, in this embodiment, game content producers can configure the data required for this update in the cloud configuration center. The configuration tool automatically calculates the differential content of this time and generates a Bytes file to be packaged and uploaded to the game server for distribution. Instead of full-packaging and downloading, this reduces unnecessary network bandwidth overhead and data processing performance overhead.
[0136] Optionally, in this embodiment, the Bytes for server and client hot updates are automatically generated based on tool differential comparison. The configuration will be pre-split into full and differential configurations. Permission management is performed on modifications to the differential configuration.
[0137] Optionally, in this embodiment, when the server receives hot update release information, it automatically identifies and packages the required Bytes files through a tool pipeline, including differential and partial full Bytes. It is released to the official server for server updates, and the hot update data is reconstructed. After the client logs in, it is sent to the client as needed.
[0138] In addition, in this embodiment, for the automatic merging of the differential table and full table of hot updates, the version differences of multiple pipelines are considered and supported, and it can be extended to the hot update of program binary functions.
[0139] Optionally, in this embodiment, after the client logs in to the server, it will compare the local hot update data with the server's hot update data (MD5 verification). For each client connection, the server calculates the differential content required for each client and distributes it.
[0140] It should be noted that in recent years, with the continuous expansion of the scale of the game industry, the number of game players, online duration, and the complexity of game programs and data have become increasingly high. Game designers need to add, delete, and modify game data configurations during game pre-research, development, testing, and online operation. This requires the game development side to provide easy-to-use and reliable standardized data configuration file tools to assist in the functions of adding, deleting, and modifying game data. Since most current online games have two sets of independently developed and operated codes for the client and the server, a data configuration file conversion tool that supports both shared and exclusive use by the server and the client needs to be provided to convert editable and easily maintainable game data into structured data recognizable by the program. However, the existing configuration file generation and hot update have problems such as insufficient automation capabilities, inability to directly adapt to global partition operation, and lack of some correctness verification capabilities.
[0141] The server game configuration automated hot update solution for global full-server partition operation games applied to multiple operators and multiple regions provided in this embodiment can reduce the content update work cost of game content developers through an automated pipeline, efficiently release and iterate game content; reduce the coupling and influence of regional content, and isolate the released content of different operators and regions. By means of differential server push for hot update, the client update frequency is reduced, the decline in the game experience of players due to update blockage is reduced, and the amount of update data for irrelevant content is reduced. And through strict correctness verification and lazy update methods, the running performance of the server and the client is improved, and the performance risk brought by content update is reduced.
[0142] For further illustration by example, optionally, such as Figure 6 and Figure 7 the shown working interface, game content developers can configure different game contents through different view tabs, such as game props, game tasks, mails, rewards, etc. In the cloud configuration center, the configuration content can be submitted with one click. A configuration content (Bytes) file read by the server and the client is generated, and the difference information of this configuration can be viewed. For regional work content, content developers can set different configuration levels, such as full-server configuration B0, operator configuration B1, and regional configuration B2. The tool and the game program logic will read the configuration files at different levels and use them within the corresponding scope according to the region.
[0143] If a hot update of content is required, the game content developer configures the content in the cloud configuration center and clicks hot update to publish. Through the automated pipeline, the differential Bytes files can be generated on demand to refresh the server Bytes files and package the client hot update Bytes files. After the hot update package is automatically pushed to the server, the server reloads the configuration, builds the hot update package, and sends it to the client in the form of a file stream. The client will determine the hot update file information required this time based on the local cache and MD5 code verification, and then obtain the corresponding bytes file from the server. The entire process is completed at runtime, and the client does not need to publish versions or manually update, and the players are unaware of it.
[0144] Optionally, the partition hierarchical configuration structure of this embodiment is as follows: Figure 8 As shown, the game version has a new publisher, and there is a strong demand for regional differentiated configuration in terms of time, rewards, activities, CDN maps, etc. In addition, the game needs to distinguish multiple client packages globally. The trunk R&D configuration is implemented in the Global directory. After pulling the PUB and experience service branches, it takes more time to process the test configuration of the R&D environment. Therefore, this embodiment divides the configuration files according to the global common configuration (B0), operator configuration (B1), and regional configuration (B2) to reuse common data and isolate regional difference data.
[0145] Optionally, the hot update workflow of this embodiment is as follows: Figure 9 As shown, it is guaranteed that the data released each time is valid and correct differential update content data. Different content can be released repeatedly, and the entire process has no impact on the player's gaming experience. For example, the game project manager (PM) or R&D manager (DM) first determines the content branch and content to be released this time. The game content operation generates differential Bytes files in the cloud configuration center or local production configuration. Through the tool pipeline, the release information of this time is automatically generated and delivered to the game server packaging pipeline, and the released content is uploaded to the version management end (SVN or Git).
[0146] Secondly, the server packaging automation pipeline receives the hot update information of this time, and the publisher specifies whether to superimpose the previous packaging information. The build pipeline and the Hotfix packaging sub-pipeline are executed to build the server update package containing the hot update information.
[0147] The server builds the update package and automatically deploys it to the test server. The tester logs in to the test server with the current external network release package to verify whether the hot update content is effective and whether the function meets expectations.
[0148] When the test is completed and the content is confirmed, the pipeline automatically releases the server update package. The official server loads the server Bytes and client Bytes that need to be automatically updated by means of restart or reload. After loading, it reads the server Bytes, updates the business data in the memory, and at the same time, organizes the compressed client Bytes into file stream data packets.
[0149] In addition, when external network players log in again or perform regular checks, they can also initiate a hot update data check and send a hot update verification request to the server. Along with the local hot update data (file name and file MD5 verification code), after receiving the request, the server verifies the MD5 code for each hot update Bytes file existing on the client one by one. If the MD5 codes are different, they are recorded. The verification results are compared with the current hot update information on the server, and the server sends the inconsistent MD5 codes and the newly added hot update files to the client in the form of a file list. After receiving the new hot update files, the client unpacks and loads them into the memory, updates the game data, and updates the local hot update Bytes file cache for the next verification.
[0150] Optionally, in this embodiment, the automatic tool packaged by the server is as Figure 10 shown. First, the server pipeline reads the differential information (including the information of the Bytes files that need to be modified) generated by the conversion configuration tool. Then it loads the dependent files such as convlist. These dependent files specify the paths of the Bytes files and parse information such as data (referred to as meta information). Then, through path conversion, MD5 code calculation, region information calculation (extraction of region and language information), etc., the additional information of the files is input into the filelist file. Subsequently, when the server reloads, it packages the specified files into file stream data to be sent to the client according to this file. In addition, to improve performance and reduce network transmission overhead, the server compresses all the client Bytes files to be sent using lz4.
[0151] Optionally, the game in this embodiment can be but is not limited to a single-region operation version and a multi-region operation version, as Figure 11As shown, the HOK implementation solution is used to improve the reusability and maintainability of the code. At the same time, considering the network environment of single-region operation, the infrastructure and equipment are easier to manage compared to multi-region operation, with higher average performance and usually smaller average network latency. Therefore, in the implementation solution of single-region operation, the granularity of splitting full-scale configuration and differential configuration is coarser. In order to pursue the ultimate minimization of data volume in multi-region operation, more configurations will be split into full-scale configuration and differential configuration, and configured, merged, and distributed separately. In addition, in the implementation solution of single-region operation, more resident data will be distributed, while in multi-single-region operation, these resident distributed data will be removed, and only the real hot update content will be retained.
[0152] Through the embodiments provided in this application, the game configuration content of regionalized operation is isolated by using configuration grading. The content coupling of partitioned operation is reduced, and the mutual influence of content is lowered. The goal of achieving a whole-region and whole-server architecture with autonomous content in each region is reached. Currently, the hot update automation pipeline is running normally. Game developers perform a one-time table splitting on the commonly used configuration tables, and the tool side realizes the automatic merging of server configurations and the automatic packaging of server hot update packages. It can achieve the hot update and release of game content without the participation of game developers, enabling game configurators to efficiently and conveniently produce and iterate game content. It also supports global multi-packages, and the first-pack configurations of each client package can be inconsistent, meeting the configuration structure with the smallest unit being the region or area. The R & D and test environment is also divided into areas with less operation, and there is no need to handle the test configurations during the R & D period additionally. The configurations in the R & D environment and the release environment are isolated. This embodiment can also have high availability, scalability, and reusability in various actual application scenarios. By splitting the full-scale table and differential table for commonly used tables, the existing content and incremental content can be isolated, enabling game content operators to focus more on incremental content. At the same time, through an automated method, the understanding cost and operation burden of game content operators are reduced, and the working efficiency of the entire pipeline is improved.
[0153] It can be understood that in the specific implementation of this application, data related to user information, etc. is involved. When the above embodiments of this application are applied to specific products or technologies, user permission or consent needs to be obtained, and the collection, use, and processing of relevant data need to comply with the relevant laws, regulations, and standards of the relevant regions and areas.
[0154] It should be noted that for the foregoing method embodiments, for the sake of simple description, they are all expressed as a series of action combinations. However, those skilled in the art should know that this application is not limited by the described action sequence, because according to this application, certain steps can be in other sequences or performed simultaneously. Secondly, those skilled in the art should also know that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily essential to this application.
[0155] According to another aspect of the embodiments of the present application, there is also provided a configuration update device for implementing the above configuration update method. As Figure 12 shown, the device includes:
[0156] A first acquisition unit 1202, configured to acquire service configuration data required for an object client to run an application service in response to a configuration update request, where the configuration update request is used to request an update of the service configuration data, and the service configuration data includes first configuration data and second configuration data. The first configuration data is global common data required for the object client to run the application service, and the second configuration data is local exclusive data required for the object client to run the application service;
[0157] A first update unit 1204, configured to, when the configuration update request indicates an update of service configuration data belonging to global common data, acquire differential update data belonging to global common data, and update the first configuration data by using the differential update data belonging to global common data, where the differential update data is used to represent the content difference between the content indicated by the configuration update request to be updated and the existing content of the service configuration data;
[0158] A second update unit 1206, configured to, when the configuration update request indicates an update of service configuration data belonging to local exclusive data, acquire differential update data belonging to local exclusive data, and update the second configuration data by using the differential update data belonging to local exclusive data.
[0159] For specific embodiments, reference may be made to the examples shown in the above configuration update method, and details are not described herein again.
[0160] As an optional solution, the second update unit 1206 includes at least one of the following:
[0161] A first acquisition module, configured to acquire differential update data exclusive to the first operation scope when the object client is within the first operation scope, where the local exclusive data includes data exclusive to the first operation scope;
[0162] A second acquisition module, configured to acquire differential update data exclusive to the first management area when the object client is within the first management area, where the local exclusive data includes data exclusive to the first management area.
[0163] For specific embodiments, reference may be made to the examples shown in the above configuration update method, and details are not described herein again.
[0164] As an alternative, the first acquisition module includes: a first acquisition sub-module, configured to acquire differential update data exclusive to the first operation scope when the object client is within the first operation scope and the configuration update request indicates to update data exclusive to the first operation scope; or,
[0165] The second acquisition module includes: a second acquisition sub-module, configured to acquire differential update data exclusive to the first management area when the object client is within the first management area and the configuration update request indicates to update data exclusive to the first management area.
[0166] For specific embodiments, reference may be made to the examples shown in the above configuration update method, and details are not described herein again.
[0167] As an alternative, the second update unit 1206 includes:
[0168] A third acquisition module, configured to acquire differential update data exclusive to the second operation scope and differential update data exclusive to the second management area when the object client is within the second management area within the second operation scope, where the second operation scope includes at least one management area, the at least one management area includes the second management area, and the local exclusive data includes data exclusive to the second management area and data exclusive to the second operation scope.
[0169] For specific embodiments, reference may be made to the examples shown in the above configuration update method, and details are not described herein again.
[0170] As an alternative, the first acquisition unit 1202 includes: a fourth acquisition module, configured to acquire first configuration data and second configuration data, where the first configuration data is pre-split into first full-scale data and first differential data, and the second configuration data is pre-split into second full-scale data and second differential data;
[0171] The first update unit 1204 includes: a first update module, configured to update the first differential data by using differential update data belonging to globally shared data;
[0172] The second update unit 1206 includes: a second update module, configured to update the second differential data by using differential update data belonging to local exclusive data.
[0173] For specific embodiments, reference may be made to the examples shown in the above configuration update method, and details are not described herein again.
[0174] As an alternative, the device further includes: a first adjustment module, configured to, during the process of updating the first differential data by using the differential update data belonging to the globally shared data, in the case where there is a conflict between the data after the update of the first differential data and the first full amount data, preferentially use the data after the update of the first differential data to adjust the first full amount data until the first full amount data adapts to the data after the update of the first differential data;
[0175] The device further includes: a second adjustment module, configured to, during the process of updating the second differential data by using the differential update data belonging to the locally exclusive data, in the case where there is a conflict between the data after the update of the second differential data and the second full amount data, preferentially use the data after the update of the second differential data to adjust the second full amount data until the second full amount data adapts to the data after the update of the second differential data.
[0176] For specific embodiments, reference may be made to the examples shown in the above configuration update method, and details are not described herein again.
[0177] As an alternative, the first update unit 1204 includes:
[0178] a fifth acquisition module, configured to acquire the differential update data belonging to the globally shared data sent by the object server, where the object server is configured to calculate and send the content indicated by the configuration update request for update;
[0179] a first verification module, configured to, in the case where the object client logs in to the object server, use the differential update data belonging to the globally shared data to perform verification with the original update data belonging to the globally shared data stored in the object server;
[0180] a first hot update module, configured to, in the case where the verification passes, perform hot update on the first configuration data by using the differential update data belonging to the globally shared data;
[0181] The second update unit 1206 includes:
[0182] a sixth acquisition module, configured to acquire the differential update data belonging to the locally exclusive data sent by the object server;
[0183] a second verification module, configured to, in the case where the object client logs in to the object server, use the differential update data belonging to the locally exclusive data to perform verification with the original update data belonging to the locally exclusive data stored in the object server;
[0184] a second hot update module, configured to, in the case where the verification passes, perform hot update on the second configuration data by using the differential update data belonging to the locally exclusive data.
[0185] For specific embodiments, reference may be made to the examples shown in the above configuration update method, and details are not described herein again.
[0186] According to another aspect of the embodiments of the present application, another configuration update device for implementing the above configuration update method is further provided. As Figure 13 shown, the device includes:
[0187] A second acquisition unit 1302, configured to acquire full-update data, where the full-update data is used to represent the content indicated to be updated by a configuration update request, the configuration update request is used to request business configuration data required for an object client to run an application service, the business configuration data includes first configuration data and second configuration data, the first configuration data is global common data required for the object client to run the application service, and the second configuration data is local exclusive data required for the object client to run the application service;
[0188] A first sending unit 1304, configured to, when the configuration update request indicates to update the business configuration data belonging to the global common data, package the full-update data into differential update data belonging to the global common data, and send the differential update data belonging to the global common data to the object client to update the first configuration data, where the differential update data is used to represent the content difference between the content indicated to be updated by the configuration update request and the existing content of the business configuration data;
[0189] A second sending unit 1306, configured to, when the configuration update request indicates to update the business configuration data belonging to the local exclusive data, package the full-update data into differential update data belonging to the local exclusive data, and send the differential update data belonging to the local exclusive data to the object client to update the second configuration data.
[0190] As an optional solution, the first sending unit 1304 includes:
[0191] A first sending module, configured to, when the configuration update request indicates to update the data exclusive to the third operation scope, send the differential update data belonging to the global common data to the object clients within the third operation scope; or,
[0192] A second sending module, configured to, when the configuration update request indicates to update the data exclusive to the third management area, send the differential update data belonging to the global common data to the object clients in the third management area, where the third operation scope includes the third management area;
[0193] The second sending unit 1306 includes:
[0194] A third sending module, configured to, when the configuration update request indicates to update the data exclusive to the fourth operation scope, send the differential update data belonging to the local exclusive data to the object clients within the fourth operation scope; or,
[0195] A fourth sending module, configured to, when a configuration update request indicates to update data exclusive to a fourth management area, send differential update data belonging to local exclusive data to an object client in the fourth management area, where the fourth operation scope includes the fourth management area.
[0196] For specific embodiments, reference may be made to the examples shown in the above configuration update method, and the examples are not elaborated herein.
[0197] According to another aspect of the embodiments of the present application, an electronic device for implementing the above configuration update method is further provided. The electronic device may be, but is not limited to, Figure 1 the user equipment 102 or the server 112 shown in Figure 14 As shown, the electronic device includes a memory 1402 and a processor 1404. A computer program is stored in the memory 1402, and the processor 1404 is configured to execute the steps in any one of the above method embodiments through the computer program.
[0198] Optionally, in this embodiment, the above electronic device may be at least one network device among multiple network devices in a computer network.
[0199] Optionally, in this embodiment, the above processor may be configured to execute the following steps through the computer program:
[0200] S1. In response to a configuration update request, obtain service configuration data required when an object client runs an application service, where the configuration update request is used to request an update of the service configuration data, and the service configuration data includes first configuration data and second configuration data. The first configuration data is global common data required when the object client runs the application service, and the second configuration data is local exclusive data required when the object client runs the application service;
[0201] S2. When the configuration update request indicates to update the service configuration data belonging to the global common data, obtain differential update data belonging to the global common data, and update the first configuration data by using the differential update data belonging to the global common data, where the differential update data is used to represent the content difference between the content indicated by the configuration update request to be updated and the existing content of the service configuration data;
[0202] S3. When the configuration update request indicates to update the service configuration data belonging to the local exclusive data, obtain differential update data belonging to the local exclusive data, and update the second configuration data by using the differential update data belonging to the local exclusive data. Or,
[0203] S1. Obtain full - volume update data, where the full - volume update data is used to represent the content indicated by the configuration update request for updating. The configuration update request is used to request an update of the service configuration data required for the object client to run the application service. The service configuration data includes first configuration data and second configuration data. The first configuration data is the globally shared data required for the object client to run the application service, and the second configuration data is the locally exclusive data required for the object client to run the application service.
[0204] S2. In the case where the configuration update request indicates an update to the service configuration data belonging to the globally shared data, package the full - volume update data into differential update data belonging to the globally shared data, and send the differential update data belonging to the globally shared data to the object client to update the first configuration data. Here, the differential update data is used to represent the content difference between the content indicated by the configuration update request for updating and the existing content of the service configuration data.
[0205] S3. In the case where the configuration update request indicates an update to the service configuration data belonging to the locally exclusive data, package the full - volume update data into differential update data belonging to the locally exclusive data, and send the differential update data belonging to the locally exclusive data to the object client to update the second configuration data.
[0206] Optionally, those of ordinary skill in the art can understand that Figure 14 the structure shown is only schematic Figure 14 and does not limit the structure of the above - mentioned electronic device. For example, the electronic device may further include more or fewer components (such as a network interface, etc.) than those shown Figure 14 or have a different configuration from that shown Figure 14 .
[0207] Among them, the memory 1402 can be used to store software programs and modules, such as the program instructions / modules corresponding to the configuration update method and device in the embodiments of the present application. The processor 1404 executes various functional applications and data processing by running the software programs and modules stored in the memory 1402, that is, implements the above - mentioned configuration update method. The memory 1402 may include a high - speed random access memory, and may also include a non - volatile memory, such as one or more magnetic storage devices, flash memory, or other non - volatile solid - state memories. In some instances, the memory 1402 may further include a memory remotely set relative to the processor 1404, and these remote memories can be connected to the electronic device through a network. Examples of the above - mentioned network include, but are not limited to, the Internet, enterprise intranets, local area networks, mobile communication networks, and their combinations. Specifically, the memory 1402 can be used, but is not limited to, storing information such as service configuration data, globally shared data, and locally exclusive data. As an example, Figure 14As shown, the above-mentioned memory 1402 may but is not limited to include the first acquisition unit 1202, the first update unit 1204, and the second update unit 1206 in the above-mentioned configuration update device (or the second acquisition unit 1302, the first transmission unit 1304, and the second transmission unit 1306 not shown in the figure). In addition, it may also include but is not limited to other module units in the above-mentioned configuration update device, which will not be elaborated in this example.
[0208] Optionally, the above-mentioned transmission device 1406 is used to receive or send data via a network. Specific examples of the above-mentioned network may include a wired network and a wireless network. In one example, the transmission device 1406 includes a network adapter (Network Interface Controller, NIC), which can be connected to other network devices and routers through a network cable so as to communicate with the Internet or a local area network. In one example, the transmission device 1406 is a Radio Frequency (RF) module, which is used to communicate with the Internet wirelessly.
[0209] In addition, the above-mentioned electronic device further includes: a display 1408, which is used to display information such as the above-mentioned candidate probe point set, blocking degree, and target probe point set; and a connection bus 1410, which is used to connect each module component in the above-mentioned electronic device.
[0210] In other embodiments, the above-mentioned user equipment or server may be a node in a distributed system, where the distributed system may be a blockchain system, and the blockchain system may be a distributed system formed by connecting the multiple nodes in a form of network communication. Among them, the nodes can form a peer-to-peer network, and any form of computing device, such as an electronic device like a server or a user equipment, can become a node in the blockchain system by joining the peer-to-peer network.
[0211] According to one aspect of the present application, a computer program product is provided. The computer program product includes computer programs / instructions, and the computer programs / instructions contain program codes for executing the methods shown in the flowcharts. In such an embodiment, the computer program can be downloaded and installed from the network through the communication part, and / or installed from a removable medium. When the computer program is executed by a central processing unit, various functions provided by the embodiments of the present application are executed.
[0212] The serial numbers of the above-mentioned embodiments of the present application are only for description and do not represent the advantages or disadvantages of the embodiments.
[0213] It should be noted that the computer system of the electronic device is only an example and should not bring any limitations to the functions and usage scope of the embodiments of the present application.
[0214] The computer system includes a Central Processing Unit (CPU), which can perform various appropriate actions and processes according to the programs stored in the Read-Only Memory (ROM) or the programs loaded from the storage section into the Random Access Memory (RAM). In the random access memory, various programs and data required for system operation are also stored. The central processing unit, the read-only memory, and the random access memory are connected to each other via a bus. An Input / Output interface (I / O interface) is also connected to the bus.
[0215] The following components are connected to the input / output interface: an input section including a keyboard, a mouse, etc.; an output section including, for example, a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), etc., and a speaker, etc.; a storage section including a hard disk, etc.; and a communication section including a network interface card such as a local area network card, a modem, etc. The communication section performs communication processing via a network such as the Internet. A drive is also connected to the input / output interface as needed. Removable media, such as magnetic disks, optical discs, magneto-optical discs, semiconductor memories, etc., are installed on the drive as needed so that computer programs read from them can be installed into the storage section as needed.
[0216] In particular, according to an embodiment of the present application, the processes described in each method flowchart can be implemented as computer software programs. For example, an embodiment of the present application includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program contains program codes for performing the methods shown in the flowcharts. In such an embodiment, the computer program can be downloaded and installed from the network through the communication section, and / or installed from the removable media. When the computer program is executed by the central processing unit, various functions defined in the system of the present application are executed.
[0217] According to one aspect of the present application, a computer-readable storage medium is provided, and a processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the methods provided in the above various optional implementation manners.
[0218] Optionally, in this embodiment, the above computer-readable storage medium can be set to store a computer program for performing the following steps:
[0219] S1. In response to a configuration update request, obtain the service configuration data required for the object client to run the application service, where the configuration update request is used to request an update of the service configuration data, and the service configuration data includes first configuration data and second configuration data. The first configuration data is the globally shared data required for the object client to run the application service, and the second configuration data is the locally exclusive data required for the object client to run the application service.
[0220] S2. In the case where the configuration update request indicates an update to the service configuration data belonging to the globally shared data, obtain the differential update data belonging to the globally shared data, and use the differential update data belonging to the globally shared data to update the first configuration data, where the differential update data is used to represent the content difference between the content indicated by the configuration update request to be updated and the existing content of the service configuration data.
[0221] S3. In the case where the configuration update request indicates an update to the service configuration data belonging to the locally exclusive data, obtain the differential update data belonging to the locally exclusive data, and use the differential update data belonging to the locally exclusive data to update the second configuration data. Or,
[0222] S1. Obtain the full update data, where the full update data is used to represent the content indicated by the configuration update request to be updated, and the configuration update request is used to request an update of the service configuration data required for the object client to run the application service. The service configuration data includes first configuration data and second configuration data. The first configuration data is the globally shared data required for the object client to run the application service, and the second configuration data is the locally exclusive data required for the object client to run the application service.
[0223] S2. In the case where the configuration update request indicates an update to the service configuration data belonging to the globally shared data, package the full update data into differential update data belonging to the globally shared data, and send the differential update data belonging to the globally shared data to the object client to update the first configuration data, where the differential update data is used to represent the content difference between the content indicated by the configuration update request to be updated and the existing content of the service configuration data.
[0224] S3. In the case where the configuration update request indicates an update to the service configuration data belonging to the locally exclusive data, package the full update data into differential update data belonging to the locally exclusive data, and send the differential update data belonging to the locally exclusive data to the object client to update the second configuration data.
[0225] Optionally, in the embodiments of the present application, the term "module" or "unit" refers to a computer program or a part of a computer program with a predetermined function, which works together with other related parts to achieve a predetermined goal, and can be implemented in whole or in part by using software, hardware (such as a processing circuit or a memory), or a combination thereof. Similarly, one processor (or multiple processors or memories) can be used to implement one or more modules or units. In addition, each module or unit can be a part of an overall module or unit that includes the function of that module or unit.
[0226] Optionally, in this embodiment, those of ordinary skill in the art can understand that all or part of the steps in the various methods of the above embodiments can be completed by instructing the relevant hardware of the electronic device through a program, and this program can be stored in a computer-readable storage medium. The storage medium can include: a flash drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, an optical disk, etc.
[0227] The serial numbers of the above embodiments of the present application are only for description and do not represent the advantages or disadvantages of the embodiments.
[0228] If the integrated unit in the above embodiments is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in the above computer-readable storage medium. Based on this understanding, the technical solution of the present application, in essence, or the part that contributes to the prior art, or all or part of this technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions for causing one or more computer devices (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods of the various embodiments of the present application.
[0229] In the above embodiments of the present application, the descriptions of the various embodiments have their own emphases. For the parts not detailed in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0230] In the several embodiments provided by the present application, it should be understood that the disclosed user equipment can be implemented in other ways. Among them, the device embodiments described above are only illustrative. For example, the division of units is only a logical function division. In actual implementation, there can be other division methods. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the displayed or discussed coupling or direct coupling or communication connection to each other can be through some interfaces, and the indirect coupling or communication connection of units or modules can be in an electrical or other form.
[0231] The unit described as a separation component may or may not be physically separated, and the component displayed as a unit may or may not be a physical unit, that is, it may be located in one place or may be distributed over multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0232] In addition, each functional unit in various embodiments of the present application can be integrated into one processing unit, or each unit can exist physically alone, or two or more units can be integrated into one unit. The above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
[0233] The above are only the preferred embodiments of the present application. It should be noted that for those of ordinary skill in the art, without departing from the principle of the present application, several improvements and refinements can be made, and these improvements and refinements should also be regarded as the protection scope of the present application.
Claims
1. A configuration update method, characterized in that, Including: In response to a configuration update request, obtain service configuration data required for an object client to run an application service, where the configuration update request is used to request an update of the service configuration data, the service configuration data includes first configuration data and second configuration data, the first configuration data is global common data required for the object client to run the application service, and the second configuration data is local exclusive data required for the object client to run the application service; In the case where the configuration update request indicates an update to service configuration data belonging to the global common data, obtain differential update data belonging to the global common data, and use the differential update data belonging to the global common data to update the first configuration data, where the differential update data is used to represent the content difference between the content indicated by the configuration update request to be updated and the existing content of the service configuration data; In the case where the configuration update request indicates an update to service configuration data belonging to the local exclusive data, obtain differential update data belonging to the local exclusive data, and use the differential update data belonging to the local exclusive data to update the second configuration data.
2. The method according to claim 1, wherein The obtaining of the differential update data belonging to the local exclusive data includes at least one of the following: In the case where the object client is within a first operation scope, obtain differential update data exclusive to the first operation scope, where the local exclusive data includes data exclusive to the first operation scope; In the case where the object client is within a first management area, obtain differential update data exclusive to the first management area, where the local exclusive data includes data exclusive to the first management area.
3. The method according to claim 2, wherein: The obtaining of the differential update data exclusive to the first operation scope includes: in the case where the object client is within the first operation scope and the configuration update request indicates an update to the data exclusive to the first operation scope, obtain the differential update data exclusive to the first operation scope; or, The obtaining of the differential update data exclusive to the first management area includes: in the case where the object client is within the first management area and the configuration update request indicates an update to the data exclusive to the first management area, obtain the differential update data exclusive to the first management area.
4. The method according to claim 2, wherein The obtaining of the differential update data belonging to the local exclusive data includes: In the case where the object client is within a second management area within a second operation scope, obtain differential update data exclusive to the second operation scope and differential update data exclusive to the second management area, where the second operation scope includes at least one management area, the at least one management area includes the second management area, and the local exclusive data includes data exclusive to the second management area and data exclusive to the second operation scope.
5. The method according to claim 1, wherein: The obtaining of the service configuration data required for an object client to run an application service includes: Obtain the first configuration data and the second configuration data, where the first configuration data is pre-split into first full data and first differential data, and the second configuration data is pre-split into second full data and second differential data; The updating the first configuration data by using the differential update data belonging to the globally shared data includes: updating the first differential data by using the differential update data belonging to the globally shared data; The updating the second configuration data by using the differential update data belonging to the locally exclusive data includes: updating the second differential data by using the differential update data belonging to the locally exclusive data.
6. The method according to claim 5, wherein In the process of updating the first differential data by using the differential update data belonging to the globally shared data, the method further includes: in the case where the data after the update of the first differential data conflicts with the first full data, preferentially use the data after the update of the first differential data and adjust the first full data until the first full data adapts to the data after the update of the first differential data; In the process of updating the second differential data by using the differential update data belonging to the locally exclusive data, the method further includes: in the case where the data after the update of the second differential data conflicts with the second full data, preferentially use the data after the update of the second differential data and adjust the second full data until the second full data adapts to the data after the update of the second differential data.
7. The method according to any one of claims 1 to 6, wherein The obtaining the differential update data belonging to the globally shared data and updating the first configuration data by using the differential update data belonging to the globally shared data includes: Obtain the differential update data belonging to the globally shared data sent by the object server, where the object server is used to calculate and send the content indicated by the configuration update request; When the object client logs in to the object server, use the differential update data belonging to the globally shared data to verify with the original update data belonging to the globally shared data stored in the object server; When the verification passes, hot-update the first configuration data by using the differential update data belonging to the globally shared data; The obtaining the differential update data belonging to the locally exclusive data and updating the second configuration data by using the differential update data belonging to the locally exclusive data includes: Obtain the differential update data belonging to the locally exclusive data sent by the object server; When the object client logs in to the object server, use the differential update data belonging to the locally exclusive data to verify with the original update data belonging to the locally exclusive data stored in the object server; When the verification passes, hot-update the second configuration data by using the differential update data belonging to the locally exclusive data.
8. A configuration update method, characterized in that, Includes: Obtain full - volume update data, where the full - volume update data is used to represent the content indicated by a configuration update request for updating. The configuration update request is used to request an update of the business configuration data required for an object client to run an application service. The business configuration data includes first configuration data and second configuration data. The first configuration data is the globally shared data required for the object client to run the application service, and the second configuration data is the locally exclusive data required for the object client to run the application service; In the case where the configuration update request indicates an update to the business configuration data belonging to the globally shared data, package the full - volume update data into differential update data belonging to the globally shared data, and send the differential update data belonging to the globally shared data to the object client to update the first configuration data, where the differential update data is used to represent the content difference between the content indicated by the configuration update request for updating and the existing content of the business configuration data; In the case where the configuration update request indicates an update to the business configuration data belonging to the locally exclusive data, package the full - volume update data into differential update data belonging to the locally exclusive data, and send the differential update data belonging to the locally exclusive data to the object client to update the second configuration data.
9. The method according to claim 8, wherein, The step of sending the differential update data belonging to the globally shared data to the object client includes: In the case where the configuration update request indicates an update to data exclusive to a third operation scope, send the differential update data belonging to the globally shared data to the object clients within the third operation scope; or, In the case where the configuration update request indicates an update to data exclusive to a third management area, send the differential update data belonging to the globally shared data to the object clients in the third management area, where the third operation scope includes the third management area; The step of sending the differential update data belonging to the locally exclusive data to the object client includes: In the case where the configuration update request indicates an update to data exclusive to a fourth operation scope, send the differential update data belonging to the locally exclusive data to the object clients within the fourth operation scope; or, In the case where the configuration update request indicates an update to data exclusive to a fourth management area, send the differential update data belonging to the locally exclusive data to the object clients in the fourth management area, where the fourth operation scope includes the fourth management area.
10. A configuration update device, characterized in that, Comprising: A first acquisition unit, configured to acquire service configuration data required for an object client to run an application service in response to a configuration update request, where the configuration update request is used to request an update of the service configuration data, the service configuration data includes first configuration data and second configuration data, the first configuration data is global common data required for the object client to run the application service, and the second configuration data is local exclusive data required for the object client to run the application service; A first update unit, configured to, when the configuration update request indicates an update to service configuration data belonging to the global common data, acquire differential update data belonging to the global common data, and use the differential update data belonging to the global common data to update the first configuration data, where the differential update data is used to represent the content difference between the content indicated by the configuration update request to be updated and the existing content of the service configuration data; A second update unit, configured to, when the configuration update request indicates an update to service configuration data belonging to the local exclusive data, acquire differential update data belonging to the local exclusive data, and use the differential update data belonging to the local exclusive data to update the second configuration data.
11. A configuration update device, characterized in that, Comprising: A second acquisition unit, configured to acquire full update data, where the full update data is used to represent the content indicated by the configuration update request to be updated, the configuration update request is used to request an update of service configuration data required for an object client to run an application service, the service configuration data includes first configuration data and second configuration data, the first configuration data is global common data required for the object client to run the application service, and the second configuration data is local exclusive data required for the object client to run the application service; A first sending unit, configured to, when the configuration update request indicates an update to service configuration data belonging to the global common data, package the full update data into differential update data belonging to the global common data, and send the differential update data belonging to the global common data to the object client to update the first configuration data, where the differential update data is used to represent the content difference between the content indicated by the configuration update request to be updated and the existing content of the service configuration data; A second sending unit, configured to, when the configuration update request indicates an update to service configuration data belonging to the local exclusive data, package the full update data into differential update data belonging to the local exclusive data, and send the differential update data belonging to the local exclusive data to the object client to update the second configuration data.
12. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a stored program, where the program, when run by an electronic device, executes the method described in any one of claims 1 to 7, or 8 to 9.
13. A computer program product, comprising a computer program / instructions, characterized in that, The computer program / instructions, when executed by a processor, implement the steps of the method described in any one of claims 1 to 7, or 8 to 9.
14. An electronic device, comprising a memory and a processor, characterized in that, A computer program is stored in the memory, and the processor is configured to execute the method described in any one of claims 1 to 7, or 8 to 9 through the computer program.