CN111045715A - Hot updating method and system of cloud game and readable storage medium - Google Patents

Hot updating method and system of cloud game and readable storage medium Download PDF

Info

Publication number
CN111045715A
CN111045715A CN201911032330.8A CN201911032330A CN111045715A CN 111045715 A CN111045715 A CN 111045715A CN 201911032330 A CN201911032330 A CN 201911032330A CN 111045715 A CN111045715 A CN 111045715A
Authority
CN
China
Prior art keywords
cloud game
file
updating
game
update
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911032330.8A
Other languages
Chinese (zh)
Other versions
CN111045715B (en
Inventor
鲁圣鹏
许平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Mobile Communications Group Co Ltd
MIGU Interactive Entertainment Co Ltd
MIGU Culture Technology Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
MIGU Interactive Entertainment Co Ltd
MIGU Culture Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Mobile Communications Group Co Ltd, MIGU Interactive Entertainment Co Ltd, MIGU Culture Technology Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN201911032330.8A priority Critical patent/CN111045715B/en
Publication of CN111045715A publication Critical patent/CN111045715A/en
Application granted granted Critical
Publication of CN111045715B publication Critical patent/CN111045715B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/77Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

The embodiment of the invention relates to the field of network communication, and discloses a cloud game thermal updating method, a cloud game thermal updating system and a readable storage medium. The invention discloses a heat updating method of a cloud game, which comprises the following steps: responding to a game starting instruction of a user side, and determining whether the cloud game specified by the game instruction needs to be updated; in response to determining that an update is required, obtaining and executing an update file; comparing the files corresponding to the updated cloud game before updating and the updated cloud game after updating, and screening out the newly added files after updating; and generating a patch package according to the newly added file for updating by other servers. The embodiment provides a new cloud game hot update mode, so that the entry time of a cloud game is ensured as much as possible, and meanwhile, the hot update requirement on a server is met as much as possible.

Description

Hot updating method and system of cloud game and readable storage medium
Technical Field
The embodiment of the invention relates to the field of network communication, in particular to a thermal updating method, a thermal updating system and a readable storage medium of a cloud game.
Background
Cloud gaming (Cloud gaming), also known as game on demand (gaming), is an online gaming technology based on Cloud computing technology. Cloud game technology enables light-end devices (thinclients) with relatively limited graphics processing and data computing capabilities to run high-quality games. In a cloud game scenario, the game is not run on a player game terminal, but in a cloud server. Under the operation mode of the cloud game, all games are operated at the server side, rendered game pictures are compressed and then transmitted to users through the network, the game pictures can be coded in real time, and video streams are pushed to the client side. Correspondingly, at the client, the game equipment of the user does not need any high-end processor and display card, only needs basic video decompression capacity, and decodes and displays the audio and video stream and simultaneously transmits the user operation instruction back to the cloud end when operating the cloud game.
The basic idea of the heat upgrade scheme in the current cloud game is to generate a heat upgrade file and then update the heat upgrade file by each game server. The strategy for generating the hot upgrade files comprises a full file packaging scheme, all resource files are packaged to be used as the hot upgrade files, and the hot upgrade files are uploaded to a hot upgrade server. The updating strategy of the hot update file mainly comprises two strategies: active push and automatic pull. Actively pushing, namely pushing all hot files to each server; the automatic pull is triggered by the user to pull the hot update file before the game.
A large number of games exist in the cloud game platform, the updating frequency and the updating time of each game cannot be known, and the strategy for updating the games through manual configuration causes large workload and poor timeliness. With the expansion of the scale of cloud game platforms, the times of game warmth also become the bottleneck of the whole system load. If the hot update cannot be accurately and timely extracted, the game experience of the user is seriously influenced, the user is lost, and the competitiveness of the product is lost.
If all games on all cloud game servers are hotter, because some games on some machines are scheduled with a low probability and even after updating, they are not scheduled, which is equivalent to hotter inefficiency, which consumes a significant amount of valuable server bandwidth resources. On the contrary, if any service is not heated, the strategy of automatic pulling is adopted, all users need to heat when starting the game, the waiting time of the users entering the game is prolonged, and the user experience is reduced.
Disclosure of Invention
The invention aims to provide a cloud game hot updating method and a server, and provides a new cloud game hot updating method, so that the entry time of a cloud game is ensured as much as possible, and the hot updating requirement on the server is met as much as possible.
In order to solve the technical problem, an embodiment of the present invention provides a hot update method for a cloud game, including: responding to a game starting instruction of a user side, and determining whether the cloud game specified by the game instruction needs to be updated; in response to determining that an update is required, obtaining and executing an update file; comparing the files corresponding to the updated cloud game before updating and the updated cloud game after updating, and screening out the newly added files after updating; and generating a patch package according to the newly added file for updating by other servers.
The embodiment of the invention also provides a hot updating method of the cloud game, which comprises the following steps: in response to the fact that the cloud game needs to be updated, a patch package corresponding to the cloud game is obtained, wherein the patch package comprises a file newly added during updating; executing the patch package to update the cloud game.
An embodiment of the present invention further provides a server, including: at least one processor; and a memory communicatively coupled to the at least one processor; wherein the memory stores instructions executable by the at least one processor to cause the at least one processor to perform: the hot update method of the cloud game as described above.
Embodiments of the present invention also provide a computer-readable storage medium storing a computer program, which when executed by a processor implements the thermal update method of a cloud game as described above.
An embodiment of the present invention further provides a cloud game update system, including: a first server and a second server; the first server responds to a game starting instruction of the user side and executes the following steps: determining whether the cloud game specified by the game instruction needs to be updated; in response to determining that an update is required, obtaining and executing an update file; comparing the files corresponding to the updated cloud game before updating and the updated cloud game after updating, and screening out the newly added files after updating; generating a patch package according to the newly added file for updating by the second server; the second server, in response to determining that a cloud game needs to be updated, performs: acquiring a patch package corresponding to the cloud game, wherein the patch package comprises a file newly added during updating; executing the patch package to update the cloud game.
Compared with the prior art, the implementation mode of the invention has the main differences and the effects that: from the perspective of user requirements, when the cloud game has a hot update requirement, a user terminal which starts the game in advance interacts with a scheduled server, the scheduled server actively pulls an update file for updating, and simultaneously screens out the newly added file after updating to form a patch package which can be updated by other servers. According to the method and the system, all the servers are prevented from being automatically pushed after hot update needs appear, the servers are firstly scheduled according to the user needs, and then the patches required for updating are generated, so that other servers obtain the patches to replace and obtain complete update files, the actual capacity of the obtained update contents is reduced, the network transmission pressure of the update files is greatly reduced, and the patch updating method and the system are triggered by user actions, better meet the needs of users, and reduce invalid updates as much as possible. The embodiment provides a new cloud game hot update mode, so that the entry time of a cloud game is ensured as much as possible, and meanwhile, the hot update requirement on a server is met as much as possible.
As a further improvement, the files before and after updating are compared in the following way, and the newly added files after updating are screened out: comparing the file state diagrams of the tree structures before and after updating; or comparing the file list before and after updating. And a specific comparison mode is determined, so that the implementation process is simple and direct, and the method is easy to popularize.
As a further improvement, the file state diagram of the tree structure of the cloud game is obtained by the following steps: recording a root directory of the cloud game as a root node; traversing all files in the cloud game directory, and recording file names or identification numbers of the files as leaf nodes; if a file is located in the root directory, connecting a leaf node corresponding to the file with the root node; if a file is not located in the root directory, recording an absolute path of the file as a non-leaf node between a leaf node corresponding to the file and the root node. The method for generating the file state diagram of the tree structure is clear, so that the file state diagram can be generated accurately and quickly.
As a further improvement, if the file list before and after updating is compared, the file list includes: an absolute path of the file, and/or a modification time of the file. And further, the compared file parameters are definite, so that the newly added file after updating can be obtained more accurately.
As a further improvement, the other servers are servers in a preset server group. The range of other servers is determined, and network congestion possibly caused by whole network pushing is avoided.
As a further improvement, the servers in the preset server group conform to: the frequency of launching the cloud game is above a threshold. The server which is definitely actively pushed is the server on which the cloud game is started with higher probability, so that the server with higher starting probability preferentially obtains updating push.
As a further improvement, the starting frequency of the cloud game on a certain server is calculated by the following formula:
Figure BDA0002250513440000031
wherein, the PiRepresenting the frequency of initiation of game i on server j, said giRepresents the opening times of the game i on the server j within a preset time length, and the ujAnd representing the number of logged-in users of the server j in the preset time length. A calculation formula of the starting frequency is enumerated, so that the determination of the server capable of being actively pushed is simple and direct.
As a further improvement, it is determined that the cloud game specified by the game instruction needs to be updated by: a soft link is found indicating the existence of an updated file. The scheme determines whether the cloud game needs to be updated through the soft link, and is clear and effective.
As a further improvement, after the generating the patch package, the method further includes: and sending the patch package to a special server to be pushed to the other servers. According to the scheme, the special server is used for pushing the patch package definitely, the bandwidth of the server for generating the patch package is not occupied, various pushing rules can be set on the special server, and management and control of the updating process are facilitated.
The foregoing description is only an overview of the technical solutions of the present invention, and the embodiments of the present invention are described below in order to make the technical means of the present invention more clearly understood and to make the above and other objects, features, and advantages of the present invention more clearly understandable.
Drawings
One or more embodiments are illustrated by way of example in the accompanying drawings, which correspond to the figures in which like reference numerals refer to similar elements and which are not to scale unless otherwise specified.
Fig. 1 is a schematic diagram of a network architecture in which a cloud game operates according to a first embodiment of the present invention;
fig. 2 is a flowchart of a hot update method of a cloud game according to a first embodiment of the present invention;
fig. 3 is a file state diagram in a hot update method of a cloud game according to a first embodiment of the present invention;
FIG. 4 is a comparison diagram of a file state diagram in a hot update method of a cloud game according to a first embodiment of the present invention;
FIG. 5 is a comparison diagram of a file state diagram in a hot update method of a cloud game according to a first embodiment of the present invention;
FIG. 6 is a flowchart of a thermal update method of a cloud game according to a second embodiment of the present invention;
FIG. 7 is a schematic diagram of a server in a fourth embodiment according to the present invention;
fig. 8 is a flowchart of a thermal update method of a cloud game according to a sixth embodiment of the present invention;
fig. 9 is a schematic diagram of a thermal update system of a cloud game according to a seventh embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention more apparent, embodiments of the present invention will be described in detail below with reference to the accompanying drawings. However, it will be appreciated by those of ordinary skill in the art that numerous technical details are set forth in order to provide a better understanding of the present application in various embodiments of the present invention. However, the technical solution claimed in the present application can be implemented without these technical details and various changes and modifications based on the following embodiments. The following embodiments are divided for convenience of description, and should not constitute any limitation to the specific implementation manner of the present invention, and the embodiments may be mutually incorporated and referred to without contradiction.
A first embodiment of the present invention relates to a method for thermally updating a cloud game.
The cloud game hot update method according to this embodiment may be applied to a server of a cloud game, and as shown in fig. 1, a network framework on which the cloud game operates may include: the system comprises a server of the cloud game, a cloud platform and a user terminal. The cloud platform can be used for a game provider to provide on-shelf management of games, management of cloud game update files and the like, the cloud platform can comprise a hot update server, namely a server special for hot update business, and the server is used for storing the update files and the like, and a virtual machine used for running the cloud game when a user requests the game are arranged on the server of the cloud game. In practical application, the virtual machine may be equivalent to a virtual mobile phone, and relates to a mobile phone processing system and the like. Therefore, the original cloud game program running on the mobile phone side can run on the virtual environment conveniently and generate a video stream which needs to be pushed to the user terminal side. And the user terminal receives the pushed video stream and plays the video stream for the user to enjoy.
Fig. 2 shows a hot update method of a cloud game in this embodiment, which specifically includes the following steps:
step 201, responding to a game starting instruction of a user end, and determining whether a cloud game specified by the game starting instruction needs to be updated.
Specifically, a game player operates from a user end, clicks a cloud game icon, sends a game starting instruction, and sends the game starting instruction to the corresponding game server A according to the area mapping, namely the server A is scheduled. And after receiving the game starting instruction, the game server analyzes the specified cloud game. Thereafter, it is determined whether the cloud game needs to be updated. In this embodiment, the update confirmation may be performed according to a mode of searching for a soft link of the update file, where the soft link may be a flag in the hot upgrade server for indicating whether the hot upgrade file exists, and the soft link may also indicate a location where the hot upgrade file exists, and in actual application, the soft link may be named current. Therefore, whether the cloud game needs to be updated or not is determined through the soft link, and the method is clear and effective.
In addition, in practical application, whether the cloud game needs to be updated or not can be determined in other manners, which is not described herein again.
In response to determining that an update is required, an update file is obtained and executed, step 202.
Specifically, after the server finds the soft link on the hot-update server, it is determined that the cloud game needs to be updated, the update file is requested to be downloaded, after the download is completed, the update file can be executed to update the cloud game on the server, and the game directory can be covered during the update. More specifically, the update file can be obtained from a game cloud platform and can also be obtained from a hot update server.
Step 203, comparing the files corresponding to the updated cloud game before updating and screening the newly added files after updating.
Specifically, in this embodiment, the file state diagrams of the tree structures before and after updating are specifically compared, that is, the file state diagrams of the tree structures before and after updating are compared, and the file added after updating is screened out by comparing the file state diagrams of the tree structures before and after updating. Wherein, the file state diagram is shown in fig. 3, and includes: the leaf node 1 is used for recording file names and/or identification numbers; a non-leaf node 2 for recording a file path; and the root node 3 is used for recording a root directory of the cloud game. In addition, the archive path of the game is not included in the tree structure. The file identification number can be MD5(MD5Message-DigestAlgorithm, information digest algorithm) identification number, and the MD5 identification number is different for different files, so that the file is recorded by MD5, different files can be effectively distinguished, and the files before and after updating can be distinguished by using the same file name, which is very accurate.
More specifically, when the file state diagram is generated, all files in the game directory are traversed, and files and paths in the tree structure are created layer by layer, so that a complete file state diagram is formed. The specific steps may include: recording a root directory of the cloud game as a root node; traversing all files in the cloud game directory, and recording file names or identification numbers of the files as leaf nodes; if a file is located in the root directory, connecting the leaf node corresponding to the file with the root node; if a file is not located in the root directory, recording an absolute path of the file as a non-leaf node between a leaf node corresponding to the file and the root node.
The following describes the process of determining alignment by using a tree-structured file state diagram:
1. firstly, a difference state diagram D is defined, wherein M1 is a file state diagram before updating, M2 is a file state diagram after updating, the root nodes of M1 and M2 are the same, the root node can be a game id, and the root node of D is also the game id.
2. Traversing M1 and M2 in a hierarchy manner, and respectively obtaining node lists of M1 and M2 under the hierarchy height h; comparing the difference of the two sets, and if the difference is the same, considering that no change exists; if not, the directory is regarded as a difference directory, and the recursive traversal is continued to search for differences.
3. And storing the difference catalog into a state diagram D, and finally generating the difference state diagram D.
4. The tree height h of the difference state diagram D is determined.
5. If the tree height h is larger than 1, the difference file is represented, and the packing compression generated hot update file is generated according to the state diagram.
6. If the tree height h is 0, no difference file is shown, and no additional file is determined.
Taking fig. 4 as an example, after M1 is compared with M2, the generated difference state diagram D has only one root node, and the height h is 1, which indicates that there is no difference and no patch package is generated; taking fig. 5 as an example, after M1 and M2 are compared, the generated difference state diagram D has a leaf node, and the leaf node stores the absolute path of the conf file; it can be known that h of this difference state diagram D is 2, so it is determined that there is a difference, and then the conf file is packaged as a patch package.
It should be noted that the file state diagram before updating may be pre-stored, such as generated after the game is installed, or generated before the update. The updated file state diagram can be generated after the updated file is executed, so as to avoid influencing the operation of the user on the cloud game, and can also be generated when the user quits the cloud game. The generation time of the file state diagram is not limited herein.
And step 204, generating a patch package according to the newly added file for updating by other servers.
Specifically, when the cloud game needs to be updated, the other servers can download the patch package for upgrading. More specifically, after the patch package is generated, other servers may be informed of the existence of the update file by sending a "hot update broadcast".
It should be noted that, for a single server, a certain time is required from the acquisition of the update file to the generation of the patch package, so in practical applications, a plurality of servers may generate the patch packages in sequence, and at this time, in order to ensure the update effect, the patch package with the latest generation time may be set as the patch package for updating by other servers.
In the embodiment, from the perspective of user requirements, when the cloud game has a hot update requirement, the user terminal which starts the game in advance interacts with the scheduled server, the scheduled server actively pulls the update file for updating, and simultaneously screens out the newly added file after updating to form a patch package which can be updated by other servers. According to the method and the system, the server is prevented from being automatically pushed after hot update needs occur, the server is firstly scheduled according to the user needs, if the server is triggered by the first user starting the game, a patch package required for updating is generated, other servers can upgrade the cloud game by using the patch package to replace and obtain a complete update file, the actual capacity of the obtained update content is reduced, the network transmission pressure of the update file is greatly reduced, and the server is triggered by user actions, so that the requirements of the user are better met, and invalid update is reduced as much as possible. The embodiment provides a new cloud game hot update mode, so that the entry time of a cloud game is ensured as much as possible, and meanwhile, the hot update requirement on a server is met as much as possible.
A second embodiment of the present invention relates to a method for thermally updating a cloud game. The second embodiment is a further improvement on the first embodiment, and the main improvement is that: in the second embodiment, the patch package is generated and then transmitted to a dedicated server, and is pushed to another server by the dedicated server. The special server pushes the patch package, so that the bandwidth of the server generating the patch package is not occupied, various pushing rules can be set on the special server, and the management and control of the updating process are facilitated.
A flowchart of a hot update method of a cloud game in this embodiment is shown in fig. 6, and specifically follows:
steps 601 to 603 are similar to steps 201 to 203 in the first embodiment, and are not described herein again.
And step 604, generating a patch package according to the newly added file.
Specifically, the method for generating the patch package in this step is similar to the method for generating the patch package in step 204 in the first embodiment, and is not described herein again.
Step 605, send the patch package to a dedicated server to be pushed to other servers.
Specifically, the dedicated server may be, for example, a hot upgrade server, and the hot upgrade server, after receiving the patch package, pushes the patch package to another server according to the update rule, or requests the hot upgrade server to download the patch package when the patch package needs to be updated.
More specifically, the other servers may be servers in a preset server group. In this embodiment, the servers in the preset server group are in accordance with: the frequency of launching the cloud game is above a threshold. The starting frequency of the cloud game on a certain server is determined according to the scheduled frequency of the certain server and the probability of the game in the server being used. The specific formula is as follows:
Figure BDA0002250513440000071
Figure BDA0002250513440000072
wherein g in the above formula (1)iRepresenting the opening times of the game i on the server j in a preset time length, β is used as a server weight coefficient reflecting the weight of the server in the whole system, and the calculation method of β is shown in formula (2), ujThe number of the logged-in users of the server j in the preset time is represented, and the denominator in the formula (2) is the total logging-in times of all the users.
Continuing, probability β reflects the probability that the game server is scheduled to, the higher the probability, the greater the probability that the game server is selected by the user, the game on the probability should be kept in the latest version, which is helpful for reducing the number of times that the whole system needs to be heated, probability P reflects the evaluation rate that game i is scheduled on machine j, the higher the evaluation rate, the higher the starting frequency of the game, the more effective heat pushing for the game type can significantly reduce the number of times that the whole system is heated.
From the above equations (1) and (2), the following equations are derived:
Figure BDA0002250513440000073
wherein, PiIndicates the frequency of game i's launch on server j, giRepresents the number of times of opening the game i on the server j within a preset time length, ujThe number of registered users of the server j in a preset time period is represented.
In addition, in practical applications, the other servers may also be set manually, such as a server with a vip authority, and the determination rules of the other servers are not listed here.
Continuing to explain, the hot update server preferentially pushes the server with high scheduling frequency, so that the server with high scheduling frequency can download and update the cloud game in idle time, and when the server is scheduled by a user, the server with high scheduling frequency can directly provide the latest version of the cloud game for the user, thereby avoiding overlong game starting time caused by updating only when the user is started. On the other hand, the server with lower scheduling frequency may actively acquire the update file for downloading when being scheduled, such as pulling the patch package from the hot upgrade server for downloading, or such as pulling the update file from the hot upgrade server for downloading.
Therefore, the patch package is uploaded to the special server, and the special server pushes the patch package, so that the bandwidth of the server generating the patch package is not occupied, various pushing rules can be set on the special server, and management and control of an updating process are facilitated. In addition, the server with high cloud game starting frequency is preferentially and actively pushed to update, the server with low cloud game starting frequency is automatically pulled to update, two updating strategies are combined, the heat updating performance of the whole network is improved, the short-time large-quantity heat updating is reduced while the user requirement is ensured, possible network congestion is avoided, the server with high game starting frequency is updated as far as possible in idle time, the speed of the user when the user starts the game is improved, and the experience is improved.
The third embodiment of the invention relates to a thermal updating method for cloud games. The third embodiment is similar to the first embodiment, and differs mainly in that: in the first embodiment, the file state diagram is used for comparison, and in the embodiment, the file list is used for comparison to screen out newly added files after updating, the mode of the file list is simple and clear, and the storage space occupation is low.
Specifically, file lists before and after updating can be respectively generated through a full path enumeration mode in a cloud game file directory. More specifically, there are two ways of comparing the file list:
firstly, the file list may include a file name (or a file identification number) and a corresponding absolute path, when comparing, it is determined whether there is a newly added file according to the file list, if there is a newly added file, the corresponding absolute path is found out to generate a difference list, and then a patch package is generated through the difference list.
Secondly, the file list may include a file name (or a file identification number), a corresponding path and a corresponding modification time, and when comparing, the files are sorted according to the modification time, and since the modification time of the updated file is different from the original file, for example, if the modification time is earlier, the file before the update time can be determined as a non-newly added file, and the modification time is later than the update time, the file can be determined as a newly added file, so that the patch package is generated according to the newly added file. In this way, the number of files to be compared is small after sorting, and the execution process is simple.
Therefore, in the embodiment, the newly added files are screened out by utilizing the file list comparison mode, and a plurality of comparison modes are provided, so that different comparison modes can be selected according to requirements in practical application, and the method and the device are flexibly and changeably suitable for different requirements.
A fourth embodiment of the present invention relates to a server, as shown in fig. 7, including:
at least one processor; and a memory communicatively coupled to the at least one processor; wherein the memory stores instructions executable by the at least one processor to enable the at least one processor to deploy a thermal update method of a cloud game as mentioned in the first embodiment or the second embodiment.
Where the memory and processor are connected by a bus, the bus may comprise any number of interconnected buses and bridges, the buses connecting together one or more of the various circuits of the processor and the memory. The bus may also connect various other circuits such as peripherals, voltage regulators, power management circuits, and the like, which are well known in the art, and therefore, will not be described any further herein. A bus interface provides an interface between the bus and the transceiver. The transceiver may be one element or a plurality of elements, such as a plurality of receivers and transmitters, providing a means for communicating with various other apparatus over a transmission medium. The data processed by the processor is transmitted over a wireless medium via an antenna, which further receives the data and transmits the data to the processor.
The processor is responsible for managing the bus and general processing and may also provide various functions including timing, peripheral interfaces, voltage regulation, power management, and other control functions. And the memory may be used to store data used by the processor in performing operations.
A fifth embodiment of the present invention relates to a non-volatile storage medium storing a computer-readable program for causing a computer to execute the method embodiment of any one of the first to third embodiments.
A sixth embodiment of the present invention relates to a method for thermally updating a cloud game.
The hot update method in this embodiment is applied to a server of a cloud game, and when an update file exists in the cloud game on the server but a corresponding user side has not yet issued a game starting instruction, the update file is not triggered to be actively pulled, but after a patch package is generated, the cloud game is updated through the patch package. The flowchart is shown in fig. 8, and specifically follows:
step 801, in response to determining that a cloud game needs to be updated, obtaining a patch package corresponding to the cloud game.
Specifically, the patch package includes a file newly added during updating. More specifically, the patch package is generated by: when a server updates the cloud game through the update file, comparing the files corresponding to the updated cloud game before updating, and screening out the newly added files after updating; and generating a patch package according to the newly added file. It is to be noted that the patch package may be the patch package generated in any one of the hot update methods in the first to third embodiments.
Continuing, the server in this embodiment determines that a cloud game needs to be updated according to the following: in response to receiving a hot update broadcast of a cloud game; or responding to a starting instruction for the cloud game from the user terminal. It can be found that the server in this embodiment may adopt a passively pushed update mechanism to determine that an update is needed according to a hot update broadcast sent after a received patch package is generated; or actively pulling the patch package to update according to the starting instruction of the user by adopting an actively pulling updating mechanism.
At step 802, the patch package is executed to update the cloud game.
Specifically, after the patch package is obtained, the patch package is executed to update the file of the cloud game, which is not described herein again.
A seventh embodiment of the present invention relates to a thermal update system for a cloud game.
As shown in fig. 9, the cloud game hot update system according to the present embodiment includes: the first server and the second server, in particular, the second server can be multiple.
The first server responds to a game starting instruction of the user side and executes the following steps:
determining whether the cloud game specified by the game instruction needs to be updated;
in response to determining that an update is required, obtaining and executing an update file;
comparing the files corresponding to the updated cloud game before updating and the updated cloud game after updating, and screening out the newly added files after updating;
generating a patch package according to the newly added file for updating by the second server;
the second server, in response to determining that a cloud game needs to be updated, performs:
acquiring a patch package corresponding to the cloud game, wherein the patch package comprises a file newly added during updating;
executing the patch package to update the cloud game.
It should be further noted that, the hot upgrade system in this embodiment may further include a hot upgrade server, where after the first server generates the patch package, the first server sends the patch package to the dedicated hot upgrade server, and then the hot upgrade server pushes the patch package to the second server. In practical application, the number of the second servers may be large, and when the hot server is pushing, a partial range may be selected for preferential pushing, and other delayed pushing or even no pushing is performed, so that possible network congestion is avoided.
Those skilled in the art can understand that all or part of the steps in the method according to the above embodiments may be implemented by a program to instruct related hardware, where the program is stored in a storage medium and includes several instructions to enable a device (which may be a single chip, a chip, etc.) or a processor (processor) to execute all or part of the steps in the method according to the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.
It will be understood by those of ordinary skill in the art that the foregoing embodiments are specific examples for carrying out the invention, and that various changes in form and details may be made therein without departing from the spirit and scope of the invention in practice.

Claims (10)

1. A hot update method of a cloud game, comprising:
responding to a game starting instruction of a user side, and determining whether the cloud game specified by the game instruction needs to be updated;
in response to determining that an update is required, obtaining and executing an update file;
comparing the files corresponding to the updated cloud game before updating and the updated cloud game after updating, and screening out the newly added files after updating;
and generating a patch package according to the newly added file for updating by other servers.
2. The hot-update method of a cloud game according to claim 1, wherein the newly added files after update are screened by comparing the files before update with the files after update in the following manner:
comparing the file state diagrams of the tree structures before and after updating; alternatively, the first and second electrodes may be,
and comparing the file list before and after updating.
3. The cloud game hot update method of claim 2, wherein the file state diagram of the tree structure of the cloud game is obtained by:
recording a root directory of the cloud game as a root node;
traversing all files in the cloud game directory, and recording file names or identification numbers of the files as leaf nodes;
if a file is located in the root directory, connecting a leaf node corresponding to the file with the root node;
if a file is not located in the root directory, recording an absolute path of the file as a non-leaf node between a leaf node corresponding to the file and the root node.
4. The hot update method for a cloud game according to claim 1, wherein the frequency of the other servers starting the cloud game is higher than a threshold value.
5. The hot update method for the cloud game according to claim 4, wherein the starting frequency of the cloud game on a certain server is calculated by the following formula:
Figure FDA0002250513430000011
wherein, the PiRepresenting the frequency of initiation of game i on server j, said giRepresenting the number of times that a game i is opened on a server j within a preset durationU is describedjAnd representing the number of logged-in users of the server j in the preset time length.
6. The method for hot updating of cloud game according to claim 1, wherein it is determined that the cloud game specified by the game instruction needs to be updated by:
a soft link is found indicating the existence of an updated file.
7. A hot update method of a cloud game, comprising:
in response to the fact that the cloud game needs to be updated, a patch package corresponding to the cloud game is obtained, wherein the patch package comprises a file newly added during updating;
executing the patch package to update the cloud game.
8. The hot update method for a cloud game according to claim 7, wherein the patch package is generated by:
when a server updates the cloud game through an update file, comparing files corresponding to the updated cloud game before updating with files corresponding to the updated cloud game, and screening out newly added files after updating;
and generating a patch package according to the newly added file.
9. A computer-readable storage medium storing a computer program, wherein the computer program, when executed by a processor, implements the thermal update method of a cloud game according to any one of claims 1 to 6, or the thermal update method of a cloud game according to any one of claims 7 to 8.
10. A cloud gaming update system, comprising: a first server and a second server;
the first server responds to a game starting instruction of the user side and executes the following steps:
determining whether the cloud game specified by the game instruction needs to be updated;
in response to determining that an update is required, obtaining and executing an update file;
comparing the files corresponding to the updated cloud game before updating and the updated cloud game after updating, and screening out the newly added files after updating;
generating a patch package according to the newly added file for updating by the second server;
the second server, in response to determining that a cloud game needs to be updated, performs:
acquiring a patch package corresponding to the cloud game, wherein the patch package comprises a file newly added during updating;
executing the patch package to update the cloud game.
CN201911032330.8A 2019-10-28 2019-10-28 Cloud game hot updating method, system and readable storage medium Active CN111045715B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911032330.8A CN111045715B (en) 2019-10-28 2019-10-28 Cloud game hot updating method, system and readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911032330.8A CN111045715B (en) 2019-10-28 2019-10-28 Cloud game hot updating method, system and readable storage medium

Publications (2)

Publication Number Publication Date
CN111045715A true CN111045715A (en) 2020-04-21
CN111045715B CN111045715B (en) 2024-02-23

Family

ID=70232845

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911032330.8A Active CN111045715B (en) 2019-10-28 2019-10-28 Cloud game hot updating method, system and readable storage medium

Country Status (1)

Country Link
CN (1) CN111045715B (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111694583A (en) * 2020-05-08 2020-09-22 广州微算互联信息技术有限公司 Cloud game updating method, system and storage medium
CN112596772A (en) * 2020-12-15 2021-04-02 上海米哈游网络科技股份有限公司 Server updating method and device, electronic equipment and storage medium
CN112686002A (en) * 2020-12-25 2021-04-20 珠海西山居移动游戏科技有限公司 File processing method and device
CN112732317A (en) * 2021-01-11 2021-04-30 珠海金山网络游戏科技有限公司 Method, device and medium for accelerating package-out speed based on Unity3D project
CN113900681A (en) * 2021-08-13 2022-01-07 西安万像电子科技有限公司 Zero-terminal software updating method, electronic device and storage medium
CN114917577A (en) * 2022-06-07 2022-08-19 北京蔚领时代科技有限公司 Cloud game data updating method and device, electronic equipment and storage medium
CN115309434A (en) * 2022-10-12 2022-11-08 北京蔚领时代科技有限公司 Cloud game service end batch updating system
CN116339791A (en) * 2023-05-31 2023-06-27 海马云(天津)信息技术有限公司 Cloud application updating method and device, electronic equipment and storage medium
CN112686002B (en) * 2020-12-25 2024-06-07 珠海西山居数字科技有限公司 File processing method and device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103002010A (en) * 2012-10-29 2013-03-27 北京奇虎科技有限公司 Method, device and system for updating data based on incremental data
CN106933630A (en) * 2017-03-09 2017-07-07 百度在线网络技术(北京)有限公司 A kind of client side upgrading method, device, equipment and storage medium

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103002010A (en) * 2012-10-29 2013-03-27 北京奇虎科技有限公司 Method, device and system for updating data based on incremental data
CN106933630A (en) * 2017-03-09 2017-07-07 百度在线网络技术(北京)有限公司 A kind of client side upgrading method, device, equipment and storage medium

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111694583A (en) * 2020-05-08 2020-09-22 广州微算互联信息技术有限公司 Cloud game updating method, system and storage medium
CN111694583B (en) * 2020-05-08 2023-12-19 广州微算互联信息技术有限公司 Cloud game updating method, cloud game updating system and storage medium
CN112596772A (en) * 2020-12-15 2021-04-02 上海米哈游网络科技股份有限公司 Server updating method and device, electronic equipment and storage medium
CN112686002A (en) * 2020-12-25 2021-04-20 珠海西山居移动游戏科技有限公司 File processing method and device
CN112686002B (en) * 2020-12-25 2024-06-07 珠海西山居数字科技有限公司 File processing method and device
CN112732317A (en) * 2021-01-11 2021-04-30 珠海金山网络游戏科技有限公司 Method, device and medium for accelerating package-out speed based on Unity3D project
CN112732317B (en) * 2021-01-11 2024-05-17 珠海金山数字网络科技有限公司 Method, device and medium for accelerating packet discharging speed of Unity-based 3D project
CN113900681A (en) * 2021-08-13 2022-01-07 西安万像电子科技有限公司 Zero-terminal software updating method, electronic device and storage medium
CN114917577A (en) * 2022-06-07 2022-08-19 北京蔚领时代科技有限公司 Cloud game data updating method and device, electronic equipment and storage medium
CN115309434A (en) * 2022-10-12 2022-11-08 北京蔚领时代科技有限公司 Cloud game service end batch updating system
CN116339791A (en) * 2023-05-31 2023-06-27 海马云(天津)信息技术有限公司 Cloud application updating method and device, electronic equipment and storage medium
CN116339791B (en) * 2023-05-31 2023-09-01 海马云(天津)信息技术有限公司 Cloud application updating method and device, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN111045715B (en) 2024-02-23

Similar Documents

Publication Publication Date Title
CN111045715B (en) Cloud game hot updating method, system and readable storage medium
CN105511889B (en) Universal game version increment updating system and method
US10042626B2 (en) Software updates using client self-reporting and a hierarchical data structure
US7849462B2 (en) Image server
US9286059B2 (en) Information processing device and difference generating for software patching system
US8073926B2 (en) Virtual machine image server
JP3382953B2 (en) Client management flow control method and apparatus on finite memory computer system
US8078574B1 (en) Network acceleration device cache supporting multiple historical versions of content
CN101170675B (en) Method and system for managing J2ME application in network TV system
CN110149409B (en) Cloud host metadata service management method, system, equipment and storage medium
CN110933036B (en) Cloud game service system and server
CN108307198A (en) flow service node dispatching method, device and scheduling node
US20120179778A1 (en) Applying networking protocols to image file management
CN111001162A (en) Game skin changing method and device, storage medium and processor
US20100306687A1 (en) System and method for avatar management
CN104104645A (en) Cross-platform resource management method and system
CN102143182A (en) Internet-based digital television multimedia information making, examination and publishing system
WO2018233190A1 (en) Media segment downloading method, terminal, and computer readable storage medium
CN109348256B (en) Data transmission method and server
JP2010079523A (en) Method of sharing session data
CN111064700A (en) Downloading method, device and system of cloud game
CN115531865A (en) Cloud game running method, equipment, storage medium and device
CN115002495A (en) Animation processing method and device
CN113986423A (en) Bullet frame display method and system, storage medium and terminal equipment
US20050183085A1 (en) Method of and apparatus for managing task, and computer product

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant