CN115080141A - Data processing method and system - Google Patents

Data processing method and system Download PDF

Info

Publication number
CN115080141A
CN115080141A CN202210621944.5A CN202210621944A CN115080141A CN 115080141 A CN115080141 A CN 115080141A CN 202210621944 A CN202210621944 A CN 202210621944A CN 115080141 A CN115080141 A CN 115080141A
Authority
CN
China
Prior art keywords
version
storage unit
downloader
data processing
thread
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.)
Pending
Application number
CN202210621944.5A
Other languages
Chinese (zh)
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.)
Zhuhai Kingsoft Digital Network Technology Co Ltd
Original Assignee
Zhuhai Kingsoft Digital Network 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 Zhuhai Kingsoft Digital Network Technology Co Ltd filed Critical Zhuhai Kingsoft Digital Network Technology Co Ltd
Priority to CN202210621944.5A priority Critical patent/CN115080141A/en
Publication of CN115080141A publication Critical patent/CN115080141A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44536Selecting among different versions

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Stored Programmes (AREA)

Abstract

The application provides a data processing method and a system, the method is applied to a terminal, the terminal comprises a starting module and a downloader component of a target object, the method comprises the steps that the starting module executes a starting process under the condition that a starting instruction is received, a corresponding initial version storage unit is determined according to a preset selection rule, and the downloader component of the initial version is loaded from the initial version storage unit; the downloader component processes the operation instruction of the user for the target object through the first thread, detects the version updating information through the second thread, and downloads the updated version storage unit through the second thread when the version updating information is detected to exist. The data processing method realizes the updating of the starting module and the downloader component in a single-process mode, and improves the version updating efficiency; meanwhile, the downloader component downloads and updates the updated version in the background in a multithreading mode under the condition that other operations of the user are not influenced, so that the user feels nothing and the user experience is improved.

Description

Data processing method and system
Technical Field
The present application relates to the field of computer technologies, and in particular, to a data processing method. The application also relates to a data processing system, a computing device, and a computer-readable storage medium.
Background
With the development of internet technology, the types and contents of games are more and more abundant, and in order to increase the downloading speed of games, many game manufacturers download games in a game downloader manner.
However, in the prior art, the self-updating algorithm of the game downloader is old and takes a long time, and a player needs to wait every time when encountering the update of the game downloader, thereby affecting the experience.
Disclosure of Invention
In view of this, embodiments of the present application provide a data processing method to solve technical defects in the prior art. The embodiment of the application also provides a data processing system, a computing device and a computer readable storage medium.
According to a first aspect of the embodiments of the present application, there is provided a data processing method, where the method is applied to a terminal, and the terminal includes a start module and a downloader component of a target object, and the method includes:
the starting module executes a starting process under the condition of receiving a starting instruction, determines a corresponding initial version storage unit according to a preset selection rule, and loads a downloader component of the initial version from the initial version storage unit;
the downloader component processes the operation instruction of the user aiming at the target object through a first thread, detects version updating information through a second thread, and downloads an updating version storage unit through the second thread under the condition that the version updating information is detected to exist, wherein the updating version storage unit comprises an updating version starting module and a downloader component.
According to a second aspect of embodiments of the present application, there is provided a data processing system comprising a start module and a downloader component of a target object, wherein:
the starting module is configured to execute a starting process under the condition that a starting instruction is received, determine a corresponding initial version storage unit according to a preset selection rule, and load a downloader component of the initial version from the initial version storage unit;
the downloader component is configured to process an operation instruction of a user for the target object through a first thread, detect version update information through a second thread, and download an update version storage unit through the second thread when the version update information is detected to exist, wherein the update version storage unit comprises an update version starting module and a downloader component.
According to a third aspect of embodiments herein, there is provided a computing device comprising:
a memory and a processor;
the memory is used for storing computer executable instructions, and the processor realizes the steps of the data processing method when executing the computer executable instructions.
According to a fourth aspect of embodiments herein, there is provided a computer-readable storage medium storing computer-executable instructions that, when executed by a processor, implement the steps of the data processing method described above.
According to a fifth aspect of embodiments of the present application, there is provided a chip storing a computer program which, when executed by the chip, implements the steps of the data processing method described above.
The data processing method provided by the application is applied to a terminal, the terminal comprises a starting module and a downloader component of a target object, and the method comprises the following steps: the starting module executes a starting process under the condition of receiving a starting instruction, determines a corresponding initial version storage unit according to a preset selection rule, and loads a downloader component of the initial version from the initial version storage unit; the downloader component processes the operation instruction of the user aiming at the target object through a first thread, detects version updating information through a second thread, and downloads an updating version storage unit through the second thread under the condition that the version updating information is detected to exist, wherein the updating version storage unit comprises an updating version starting module and a downloader component.
The data processing method realizes the updating of the starting module and the downloader component in a single-process mode of the starting module, and improves the version updating efficiency; meanwhile, the downloader component downloads and updates the updated version in the background in a multithreading mode under the condition that other operations of the user are not influenced, so that the user feels nothing and the user experience is improved.
Drawings
Fig. 1 is a schematic diagram illustrating a specific process of applying a data processing method to self-update of a downloader in a game scene according to an embodiment of the present application;
fig. 2 is a flowchart of a data processing method according to an embodiment of the present application;
fig. 3 is a schematic diagram of a peer directory in a data processing method according to an embodiment of the present application;
FIG. 4 is a block diagram of a data processing system according to an embodiment of the present application;
fig. 5 is a block diagram of a computing device according to an embodiment of the present application.
Detailed Description
In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present application. This application is capable of implementation in many different ways than those herein set forth and of similar import by those skilled in the art without departing from the spirit and scope of this application, and thus this application is not limited to the specific implementations disclosed below.
The terminology used in the one or more embodiments of the present application is for the purpose of describing particular embodiments only and is not intended to be limiting of the one or more embodiments of the present application. As used in one or more embodiments of the present application and the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should also be understood that the term "and/or" as used in one or more embodiments of the present application refers to and encompasses any and all possible combinations of one or more of the associated listed items.
It will be understood that, although the terms first, second, etc. may be used herein in one or more embodiments of the present application to describe various information, these information should not be limited by these terms. These terms are only used to distinguish one type of information from another. For example, a first aspect may be termed a second aspect, and, similarly, a second aspect may be termed a first aspect, without departing from the scope of one or more embodiments of the present application.
First, the noun terms to which one or more embodiments of the present invention relate are explained.
Self-updating: the application process needs to rely on the code of the application process to update the code and the data of the latest version, and does not rely on the assistance of other processes and is at the source of an update chain.
A downloader: in the embodiment of the present application, the downloader is understood as a downloader component, which refers to a general-purpose program having at least a self-updating function, and any general-purpose program having a downloading function and a self-updating function may be referred to as a downloader component.
A starter: the shell program may call other programs or load other components, where the shell program may be understood as a single-function program, and basically only a program with a start function, and the core function is implemented by loading other components, for example, the starter may select to load a downloader component of a certain version to implement a download function, and the like.
Installing a package: a version of the launcher or downloader may be installed onto the data package on the user's computer.
In the present application, a data processing method is provided. The present application is directed to a data processing system, a computing device, and a computer readable storage medium, each of which is described in detail in the following embodiments.
Referring to fig. 1, fig. 1 is a schematic diagram illustrating a specific process of applying a data processing method provided by an embodiment of the present application to self-update of a downloader in a game scene.
Specifically, when the data processing method is applied to a game scene, the downloader may be understood as a downloader of a certain game, for example, a game downloader.
In specific implementation, a user installs a launcher and a downloader of a certain version (such as version A) of the game A on a terminal, and obtains the launcher and the downloader of the version A and a storage unit (such as a folder or a version directory) of the version A named by the version A, wherein the storage unit of the version A and the launcher of the version A belong to a same-level directory, and the storage unit of the version A stores version components and data required by the downloader of the version A.
Starting a launcher of the version A, executing a starting process, and loading a downloader component of the version A from a storage unit of the version A by the launcher of the version A under the condition that only the storage unit of the version A exists at present; the downloader component of version a downloads or executes the a game according to the user operation while checking whether it has the latest version at a background timing.
When detecting that the latest version B exists, the downloader component of the version A silently downloads the memory cell of the acquired version B in the background and decompresses the downloaded memory cell of the version B to the peer directory of the memory cell of the version A; after the update is completed, the downloader of the version A moves the running initiator of the version A in the outer directory back to the storage unit of the version A, and moves the initiator of the version B from the storage unit of the version B to the outer directory. Meanwhile, the downloader of the version A prompts the user that the update exists, and the user can freely select to update; if the user selects to update the version, the downloader of the version A runs the starter of the version B and closes the downloader, and the starter of the version B is started to execute a starting process and load the downloader component of the version B from the storage unit of the version B; at this time, the downloader component of version B downloads or executes the a game according to the user operation while checking whether it has the latest version at a background timing.
In addition, in the peer directory of the version a storage unit and the version B storage unit, three or more versions of the storage unit can be simultaneously stored, and when a problem occurs in the updating process of a newer version, the normal operation of the game a is not affected, and the game a can still be operated by adopting downloaders and starters of other versions. In order to avoid resource occupation caused by the existence of too many versions of memory cells, a version threshold value may be set, and if the version threshold value is greater than the version threshold value, the memory cell of the oldest version is deleted. For example, if the version threshold is 3, then three versions of memory locations may exist at the same time, and if there are more updated versions, then the oldest version of memory locations may be deleted.
In the data processing method provided by the embodiment of the application, the downloader performs self-updating in the manner, and any error in the updating process does not affect the normal experience of a user. For example, when the latest version is downloaded in the background, a network error may occur to cause a download failure of the version storage unit, or a decompression failure may occur due to the frustration of antivirus software, and the like, but the user is unaware of the download failure of this time, and the downloader will continuously try to download again in the background until the update is completed; meanwhile, the starter searches a proper version storage unit for starting every starting process, the task is small, the code content of the starter cannot be updated basically in the follow-up process, and even if the replacement of the starter fails, the starter of the old version can also search the storage unit of the proper version; if a problem occurs in the update package (the storage unit of the update version), for example, the current version cannot be opened due to antivirus software or artificial mistaken killing of a part of components, the starter will continue to select other suitable storage units of the old version to load the downloader and perform a self-updating process in the background again; and after the updating fails, all the rescue measures are not effective, the user can also directly use the latest installation package, the installation package does not cover the original catalog, but generates a catalog of the latest version, so that the user can recover the normal use without unloading.
Referring to fig. 2, fig. 2 is a flowchart of a data processing method according to an embodiment of the present application, which specifically includes the following steps:
the method is applied to a terminal, the terminal comprises a starting module and a downloader component of a target object, and the method comprises the following steps:
step 202: the starting module executes a starting process under the condition of receiving a starting instruction, determines a corresponding initial version storage unit according to a preset selection rule, and loads a downloader component of the initial version from the initial version storage unit.
Specifically, the specific application scenarios of the data processing methods are different, and the target objects are also different; for example, the data processing method is applied to a game scene, the target object can be understood as any game, and the data processing method is applied to an instant messaging scene, the target object can be understood as any instant messaging program and the like.
For convenience of understanding, in the embodiments of the present application, the data processing method is applied to a game scene, and the target object is an example of a game and is described in detail; but the data processing method can be applied to the self-updating implementation of downloaders of other scenes.
The starting instruction may be initiated by a user through double-click or other operation manners, the starting module may be understood as the starter in the above embodiment, and the downloader component may be understood as the downloader in the above embodiment.
The preset selection rule may be set according to actual application, for example, in the embodiment of the present application, the preset selection rule may include two types, a first type may select a selection rule of a version corresponding to the preset selection rule, and a second type may select a selection rule of a latest version; the following is a detailed description of specific implementation manners of the two preset selection rules.
For example, in the case that the preset selection rule is the first selection rule, the specific implementation manner of determining the corresponding initial version storage unit according to the preset selection rule is as follows:
the determining the corresponding initial version storage unit according to the preset selection rule comprises the following steps:
and the starting module determines the current version information and determines a corresponding initial version storage unit from the same-level directory according to the current version information.
The current version information can be understood as the version information of the starting module; each boot module and downloader component has its version number.
Specifically, the start module executes a start process, determines its current version information, for example, version a, selects the version a storage unit from the peer directory as an initial version storage unit, and then records a downloader component in the version a storage unit.
In the data processing method provided by the embodiment of the application, when the start module is started for the first time after installation, the start module may select a corresponding initial version storage unit according to version information of the start module, load a downloader component of the initial version from the initial version storage unit, and perform subsequent target object processing, so as to ensure correct selection of the version.
In the second case, if the starting module is not started for the first time, then when the starting module is started for this time, the memory cell of the latest version can be selected as the memory cell of the initial version, so that the user can perform subsequent target object processing based on the downloader component of the latest version, and the user experience is improved. The specific implementation mode is as follows:
the determining the corresponding initial version storage unit according to the preset selection rule comprises the following steps:
the starting module determines all version information in the same-level directory, and determines the latest version storage unit as the corresponding initial version storage unit according to the version information.
Wherein, the same level directory can be understood as the directory belonging to the same level as the starting module.
Referring to fig. 3, fig. 3 is a schematic diagram illustrating a peer directory in a data processing method according to an embodiment of the present application.
Exe in fig. 3 can be understood as a start module, and seasungam _2.0.0.147, seasungam _2.0.0.148, etc. can be understood as storage units of respective versions belonging to a same directory as the start module, and each version of the storage unit includes many functional components of downloading, running, etc. of the version.
In specific implementation, when the starting module is not started for the first time and a plurality of version storage units exist in the same-level directory, all version information in the same-level directory is determined first, and then the storage unit of the latest version is determined from all the version information (such as the version number) to serve as the initial version storage unit.
In the data processing method provided by the embodiment of the application, the starting module can select a proper version storage unit to start each time, so that a user can adopt the downloader component with the latest version to process a target object each time, and the user experience is improved.
In specific implementation, the starting module executes a starting process under the condition of receiving a starting instruction, selects an initial version storage unit from a peer directory according to a preset selection rule, and loads a downloader component of an initial version from the initial version storage unit; in practical application, a user may install a certain version of the startup module and the downloader component on a terminal of the user, obtain a memory cell named by the version at the same time, and then move the version of the startup module out of the memory cell named by the version, so that the version of the startup module and the version of the memory cell named by the version belong to the same-level directory.
Step 204: the downloader component processes the operation instruction of the user aiming at the target object through a first thread, detects version updating information through a second thread, and downloads an updating version storage unit through the second thread under the condition that the version updating information is detected to exist, wherein the updating version storage unit comprises an updating version starting module and a downloader component.
The downloader component can work through multiple threads, for example, the first thread is used for processing an operating instruction of a user for a target object, the second thread is used for detecting version updating and downloading, the different threads are used for realizing the imperceptibility of the user of the version updating, and the user experience is improved.
Specifically, a specific implementation manner for processing the operation instruction of the user for the target object through the first thread is as follows:
the processing of the operation instruction of the user for the target object through the first thread comprises:
the downloader component receives an operation instruction of a user for the target object;
under the condition that the operation instruction is determined to be the target object downloading instruction, downloading the target object through the first thread according to the downloading instruction;
controlling the target object through the first thread according to the control instruction if the operation instruction is determined to be the control instruction of the target object; and
and under the condition that the operation instruction is determined to be a starting instruction of the target object, starting the target object through the first thread according to the starting instruction.
The target objects are different, the operation instructions of the user for the target objects are different, and the operation on the target objects through the first thread is also different.
A specific implementation of processing a user operation command for a target object by a first thread will be described in detail below, taking the target object as an example of a game.
In specific implementation, the downloader component receives an operation instruction of a user for a game, and downloads the game through a first thread according to the downloading instruction under the condition that the operation instruction is determined to be a game downloading instruction; controlling the movement of a character or a prop in the game or increasing the skill of the character and the like through a first thread according to the control instruction when the operation instruction is determined to be the control instruction of the game; and under the condition that the operation instruction is determined to be a starting instruction of the game, starting the game through the first thread according to the starting instruction.
In addition, in the prior art, a double process is generally adopted for updating the downloader component, and under the double process, the starter only calls up the downloader process under the corresponding version directory and then closes the downloader process; i.e., the dual process launcher is a process and the downloader is a process, not some of the components. The disadvantage is that it is necessary to avoid that the downloader of the old version is directly started by the user (for example, the user cannot predict what operation the user will do, for example, if the user himself makes a shortcut to the downloader of the old version, then the old version is not deleted by the version, and only the downloader can be started from the old version after each start), and only one downloader process can be run at the same time for the game platform, the logical judgment of multiple processes becomes complicated, and if the user starts the downloader for multiple times, the process table needs to be queried to see whether another process exists; in the data processing method provided by the embodiment of the application, the starter adopts single-process operation, the downloader is used as a component and is subsequently loaded into the process of the starter, and the downloader is a component, so that the problems cannot be caused; in addition, when the starting failure of the new version directory occurs, the return value of the adopted component is much faster than that of the process, and the available version directory can be switched to more quickly, so that a player cannot sense the available version directory.
When the version update detection is performed through the second thread, in order to avoid resource waste, the detection may be performed according to a timing task, instead of performing the version update detection in real time. The specific implementation mode is as follows:
the detecting version update information by a second thread and downloading an updated version storage unit by the second thread if presence of version update information is detected, comprising:
and the downloader component detects the version updating information through a second thread according to a preset time interval, and downloads the updating version storage unit through the second thread under the condition that the version updating information is detected to exist.
The preset time interval may be set according to practical applications, for example, the preset time interval is set to 3 minutes or 5 minutes.
Take the preset time interval of 5 minutes as an example; in specific implementation, the downloader component detects the version update information through the second thread every 5 minutes, and downloads an update version storage unit through the second thread in the case of detecting that the version update information exists, wherein the update version storage unit comprises an update version initiator and a downloader.
In the data processing method provided by the embodiment of the application, because the update time of the version is not strictly limited in a specific application scenario, a preset time interval can be set in order to save processing resources, so that the downloader component can perform version update detection and downloading regularly according to the preset time interval, thereby saving network resource occupation, enabling the operation of a target object to be more flow-oriented, and improving user experience.
In addition, after the downloader component downloads the updated version storage unit, the updated version storage unit is stored in the peer directory of the initial version storage unit, so that the subsequent starting module can select the storage unit of the latest version from the peer directory to load the downloader component, and the user experience is improved. The specific implementation mode is as follows:
after downloading the updated version storage unit through the second thread in the case that the presence of the version update information is detected, further comprising:
and the downloader component stores the updated version storage unit to the peer directory of the initial version storage unit.
Still referring to fig. 3, if the seaungame _2.0.0.147 in fig. 3 is the initial version storage unit and the seaungame _2.0.0.148 is the updated version storage unit, the seaungame _2.0.0.147 and the seaungame _2.0.0.148 belong to the same level directory.
In the actual version updating process, in order to avoid the situation that the updated version file is unsafe due to viruses carried in the updated version storage unit or the updated version file is incomplete due to component loss in the updated version storage unit, the downloader component downloads the updated version file to the cache file first, decompresses and detects the updated version file in the cache file, and stores the updated version storage unit in the same-level directory as the initial version storage unit under the condition that the problem is detected to be absent. The specific implementation mode is as follows:
the storing the updated version storage unit in the peer directory of the initial version storage unit includes:
and the downloader component downloads the update version storage unit to a cache file for decompression, and stores the decompressed update version storage unit to the same-level directory of the initial version storage unit under the condition that the decompressed update version storage unit meets a preset update condition.
The preset updating condition may be set according to actual application, for example, the preset updating condition may be understood as a condition that no software virus exists or no component is missing.
In specific implementation, the downloader component downloads the update version storage unit to the cache file for decompression, then detects the decompressed update version storage unit, and stores the decompressed and detected update version storage unit to the peer directory of the initial version storage unit to wait for being loaded and updated when determining that the update version storage unit meets the preset update condition.
Meanwhile, after the downloader component finishes downloading the memory unit of the updated version, the starting module of the initial version can be replaced by the starting module of the updated version, so that the downloader component of the updated version can be directly loaded when the starting module is started next time, and the imperceptibility of a user is realized. The specific implementation mode is as follows:
after storing the updated version storage unit in the same-level directory of the initial version storage unit, the method further comprises the following steps;
and the downloader component moves the starting module of the initial version from the outer-layer directory to the initial version storage unit and moves the starting module of the updated version in the updated version storage unit from the updated version storage unit to the outer-layer directory.
The outer directory may be understood as an outer file of a certain storage unit, and if the version a boot module is outside the version a storage unit, it may indicate that the version a boot module is in the outer directory of the version a storage unit.
In practical application, after the downloader component finishes downloading the update version storage unit, the startup module of the initial version is moved from the outer-layer directory to the initial version storage unit, and then the startup module of the update version in the update version storage unit is moved from the update version storage unit to the outer-layer directory thereof, so that when the subsequent startup module is triggered, the startup module of the update version executes a startup process, and the downloader component of the update version is loaded from the update version storage unit for target object processing.
And after the starting module of the updated version in the updated version storage unit is moved to the outer-layer directory from the updated version storage unit, the downloader component of the initial version closes itself, and the starting module of the updated version is operated at the same time, so that a user can process the target object by using the starting module of the updated version and the downloader component. The specific implementation mode is as follows:
after the moving the boot module of the updated version in the updated version storage unit from the updated version storage unit to the outer directory, the method further includes:
and the downloader component closes the downloader component of the initial version and runs the starting module of the updated version.
In practical application, because the operation habits of users are not used, not all users are used to update versions, in order to improve user experience, the target object processing is performed by adopting a starting module and a downloader component of the updated version on the premise of ensuring the user's will. The specific implementation mode is as follows:
the closing the downloader component of the initial version and running the starting module of the updated version comprises:
and the downloader component sends a version updating success notice to a user, closes the downloader component of the initial version under the condition of receiving an updating instruction of the user, and operates the starting module of the updating version.
Specifically, after the downloader component of the initial version moves the starting module of the updated version to the outer-layer directory, a version update notification is sent to the user, the downloader component of the initial version is closed only when the update instruction of the user is confirmed, and the starting module of the updated version is operated at the same time, so that version update can be performed on the premise of ensuring the will of the user.
Meanwhile, in order to avoid the situation that the downloaded updated version memory unit has problems and the target object cannot run, even if the updated version memory unit is downloaded, the previous old version memory unit cannot be deleted; in addition, in order to avoid resource waste caused by the existence of multiple version memory units, a preset quantity threshold is set in the embodiment of the application and used for monitoring the quantity of the version memory units, so that not only is the updated version not covered by the previous version ensured, but also the existence of multiple versions is avoided. The specific implementation mode is as follows:
after storing the updated version storage unit in the peer directory of the initial version storage unit, the method further includes:
and the downloader component determines and deletes a target version memory cell from the version memory cells according to a preset deletion rule under the condition that the number of the version memory cells existing in the same-level directory is determined to be greater than or equal to a preset number threshold.
The preset number threshold may be set according to practical applications, for example, the preset number threshold may be 3 or 5, and the like.
In specific implementation, when determining that the number of the version memory cells existing in the same-level directory is greater than or equal to a preset number threshold, the downloader component of the initial version determines and deletes the target version memory cell from the version memory cells according to a preset deletion rule; wherein, the preset deletion rule can be understood as deleting the oldest version file.
Taking the preset number threshold as 3 as an example, when determining that the number of version memory cells existing in the peer directory is greater than or equal to 3, the downloader component of the initial version determines and deletes the memory cell of the oldest version from all the current version memory cells.
In the data processing method provided by the embodiment of the application, a multi-version directory structure is adopted, so that users, operation and maintenance personnel and the like can conveniently perform version rollback switching; for example, a game player can quickly switch between a formal version and an experience version without repeated downloading; meanwhile, after a serious error occurs in the external network, operation and maintenance personnel can release an old version, and a user can roll back to the old version without downloading, so that the use experience of the user is improved. In practical application, the downloader component usually maintains three version directories, and the older version directory is cleaned up, so as to avoid resource occupation.
The data processing method provided by the embodiment of the application realizes the updating of the starting module and the downloader component in a single-process mode of the starting module, and improves the version updating efficiency; meanwhile, the downloader component downloads and updates the updated version in the background in a multithreading mode under the condition that other operations of the user are not influenced, so that the user feels nothing and the user experience is improved.
When the data processing method is applied to a game scene, the whole updating and downloading process is not aware of a player, the updating and downloading are finished when the player is prompted, the player is not aware even if the updating and downloading are failed, and the downloader component retries downloading by various schemes under the condition that the operation of the player is not influenced.
Specifically, the data processing method can be updated without the aid of an additional updating program, only adopts an updating structure of one starter and a plurality of version directories, has the characteristics of delay (namely, a player does not feel, the game flow is accelerated to enter, and the experience is improved), rollback switching (namely, more new characteristics are supported), high robustness (namely, the probability of self-updating problems is greatly reduced, the self-updating is the source of an updating chain, once the self-updating has problems, the subsequent processes such as repairing cannot be implemented), and can check the updating anytime and anywhere, so that the player can be ensured to be updated with the latest version. Besides the installation function, the installation package also has an updating function, and a player can manually update the installation package without reloading after uninstalling under the condition that problems occur in the installation process.
Corresponding to the above method embodiment, the present application further provides an embodiment of a data processing system, and fig. 4 shows a schematic structural diagram of the data processing system provided in the embodiment of the present application. As shown in FIG. 4, the system includes a target object launch module 402 and a downloader component 404, wherein:
the starting module 402 is configured to execute a starting process under the condition that a starting instruction is received, determine a corresponding initial version storage unit according to a preset selection rule, and load a downloader component of the initial version from the initial version storage unit;
the downloader component 404 is configured to process an operation instruction of a user for the target object through a first thread, detect version update information through a second thread, and download an update version storage unit through the second thread when the presence of the version update information is detected, wherein the update version storage unit includes an update version starting module and a downloader component.
Optionally, the starting module 402 determines current version information, and determines a corresponding initial version storage unit from a peer directory according to the current version information.
Optionally, the starting module 402 determines all version information in the peer directory, and determines the latest version storage unit as the corresponding initial version storage unit according to the version information.
Optionally, the downloader component 404 receives an operation instruction of the user for the target object;
under the condition that the operation instruction is determined to be the target object downloading instruction, downloading the target object through the first thread according to the downloading instruction;
controlling the target object through the first thread according to the control instruction if the operation instruction is determined to be the control instruction of the target object; and
and under the condition that the operation instruction is determined to be a starting instruction of the target object, starting the target object through the first thread according to the starting instruction.
Optionally, the downloader component 404 detects the version update information through a second thread according to a preset time interval, and downloads the updated version storage unit through the second thread if the presence of the version update information is detected.
Optionally, the downloader component 404 stores the updated version storage unit in the peer directory of the initial version storage unit.
Optionally, the downloader component 404 downloads the update version storage unit to a cache file for decompression, and stores the decompressed update version storage unit to the peer directory of the initial version storage unit when it is determined that the decompressed update version storage unit meets a preset update condition.
Optionally, the downloader component 404 moves the initial version startup module from the outer directory to the initial version storage unit, and moves the updated version startup module in the updated version storage unit from the updated version storage unit to the outer directory.
Optionally, the downloader component 404 turns off the downloader component of the initial version and runs the startup module of the updated version.
Optionally, the downloader component 404 sends a notification of successful version update to the user, and in a case that an update instruction of the user is received, closes the downloader component of the initial version, and runs the startup module of the updated version.
Optionally, the downloader component 404 determines and deletes the target version storage unit from the version storage units according to a preset deletion rule, when determining that the number of the version storage units existing in the peer directory is greater than or equal to a preset number threshold.
The data processing system provided by the embodiment of the application realizes the updating of the starting module and the downloader component in a single-process mode of the starting module, and improves the version updating efficiency; meanwhile, the downloader component downloads and updates the updated version in the background in a multithreading mode under the condition that other operations of the user are not influenced, so that the user feels nothing and the user experience is improved.
The above is a schematic scheme of a data processing system of the present embodiment. It should be noted that the technical solution of the data processing system and the technical solution of the data processing method belong to the same concept, and details that are not described in detail in the technical solution of the data processing system can be referred to the description of the technical solution of the data processing method. Further, the components in the device embodiment should be understood as functional blocks that must be created to implement the steps of the program flow or the steps of the method, and each functional block is not actually divided or separately defined. The device claims defined by such a set of functional modules are to be understood as a functional module framework for implementing the solution mainly by means of a computer program as described in the specification, and not as a physical device for implementing the solution mainly by means of hardware.
FIG. 5 illustrates a block diagram of a computing device 500 provided in accordance with one embodiment of the present description. The components of the computing device 500 include, but are not limited to, a memory 510 and a processor 520. Processor 520 is coupled to memory 510 via bus 530, and database 550 is used to store data.
Computing device 500 also includes access device 540, access device 540 enabling computing device 500 to communicate via one or more networks 560. Examples of such networks include the Public Switched Telephone Network (PSTN), a Local Area Network (LAN), a Wide Area Network (WAN), a Personal Area Network (PAN), or a combination of communication networks such as the internet. The access device 540 may include one or more of any type of network interface, e.g., a Network Interface Card (NIC), wired or wireless, such as an IEEE802.11 Wireless Local Area Network (WLAN) wireless interface, a worldwide interoperability for microwave access (Wi-MAX) interface, an ethernet interface, a Universal Serial Bus (USB) interface, a cellular network interface, a bluetooth interface, a Near Field Communication (NFC) interface, and so forth.
In one embodiment of the present description, the above-described components of computing device 500, as well as other components not shown in FIG. 5, may also be connected to each other, such as by a bus. It should be understood that the block diagram of the computing device architecture shown in FIG. 5 is for purposes of example only and is not limiting as to the scope of the present description. Those skilled in the art may add or replace other components as desired.
Computing device 500 may be any type of stationary or mobile computing device, including a mobile computer or mobile computing device (e.g., tablet, personal digital assistant, laptop, notebook, netbook, etc.), mobile phone (e.g., smartphone), wearable computing device (e.g., smartwatch, smartglasses, etc.), or other type of mobile device, or a stationary computing device such as a desktop computer or PC. Computing device 500 may also be a mobile or stationary server.
Wherein the processor 520 is configured to execute computer-executable instructions that, when executed by the processor, implement the steps of the data processing method described above.
The above is an illustrative scheme of a computing device of the present embodiment. It should be noted that the technical solution of the computing device and the technical solution of the data processing method belong to the same concept, and details that are not described in detail in the technical solution of the computing device can be referred to the description of the technical solution of the data processing method.
An embodiment of the present application further provides a computer readable storage medium, which stores computer instructions, and the instructions are executed by a processor to be used for the data processing method.
The above is an illustrative scheme of a computer-readable storage medium of the present embodiment. It should be noted that the technical solution of the storage medium belongs to the same concept as the technical solution of the data processing method, and details that are not described in detail in the technical solution of the storage medium can be referred to the description of the technical solution of the data processing method.
An embodiment of the present application further provides a chip, which stores a computer program, and the computer program implements the steps of the data processing method when executed by the chip.
The foregoing description of specific embodiments of the present application has been presented. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims may be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing may also be possible or may be advantageous.
The computer instructions comprise computer program code which may be in the form of source code, object code, an executable file or some intermediate form, or the like. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording medium, usb disk, removable hard disk, magnetic disk, optical disk, computer Memory, Read-Only Memory (ROM), Random Access Memory (RAM), electrical carrier wave signals, telecommunications signals, software distribution medium, and the like. It should be noted that the computer readable medium may contain content that is subject to appropriate increase or decrease as required by legislation and patent practice in jurisdictions, for example, in some jurisdictions, computer readable media does not include electrical carrier signals and telecommunications signals as is required by legislation and patent practice.
It should be noted that, for the sake of simplicity, the above-mentioned method embodiments are described as a series of acts or combinations, but those skilled in the art should understand that the present application is not limited by the described order of acts, as some steps may be performed in other orders or simultaneously according to the present application. Further, those skilled in the art should also appreciate that the embodiments described in the specification are preferred embodiments and that the acts and modules referred to are not necessarily required in this application.
In the above embodiments, the descriptions of the respective embodiments have respective emphasis, and for parts that are not described in detail in a certain embodiment, reference may be made to related descriptions of other embodiments.
The preferred embodiments of the present application disclosed above are intended only to aid in the explanation of the application. Alternative embodiments are not exhaustive and do not limit the invention to the precise embodiments described. Obviously, many modifications and variations are possible in light of the above teaching. The embodiments were chosen and described in order to best explain the principles of the application and its practical applications, to thereby enable others skilled in the art to best understand and utilize the application. The application is limited only by the claims and their full scope and equivalents.

Claims (14)

1. A data processing method is applied to a terminal, the terminal comprises a starting module and a downloader component of a target object, and the method comprises the following steps:
the starting module executes a starting process under the condition of receiving a starting instruction, determines a corresponding initial version storage unit according to a preset selection rule, and loads a downloader component of the initial version from the initial version storage unit;
the downloader component processes the operation instruction of the user aiming at the target object through a first thread, detects version updating information through a second thread, and downloads an updating version storage unit through the second thread under the condition that the version updating information is detected to exist, wherein the updating version storage unit comprises an updating version starting module and a downloader component.
2. The data processing method according to claim 1, wherein the determining the corresponding initial version storage unit according to the preset selection rule comprises:
and the starting module determines the current version information and determines a corresponding initial version storage unit from the same-level directory according to the current version information.
3. The data processing method according to claim 1, wherein the determining the corresponding initial version storage unit according to the preset selection rule comprises:
the starting module determines all version information in the same-level directory, and determines the latest version storage unit as the corresponding initial version storage unit according to the version information.
4. The data processing method according to claim 1, wherein the processing, by the first thread, an operation instruction of a user for the target object comprises:
the downloader component receives an operation instruction of a user for the target object;
under the condition that the operation instruction is determined to be the target object downloading instruction, downloading the target object through the first thread according to the downloading instruction;
controlling the target object through the first thread according to the control instruction if the operation instruction is determined to be the control instruction of the target object; and
and under the condition that the operation instruction is determined to be a starting instruction of the target object, starting the target object through the first thread according to the starting instruction.
5. The data processing method of claim 1, wherein detecting version update information by a second thread and downloading an updated version store unit by the second thread if presence of version update information is detected comprises:
and the downloader component detects the version updating information through a second thread according to a preset time interval, and downloads the updating version storage unit through the second thread under the condition that the version updating information is detected to exist.
6. The data processing method according to claim 1 or 5, wherein after downloading the updated version storage unit through the second thread in the case where the presence of the version update information is detected, further comprising:
and the downloader component stores the updated version storage unit to the peer directory of the initial version storage unit.
7. The data processing method of claim 6, wherein the storing the updated version storage unit in the peer directory of the initial version storage unit comprises:
and the downloader component downloads the update version storage unit to a cache file for decompression, and stores the decompressed update version storage unit to the same-level directory of the initial version storage unit under the condition that the decompressed update version storage unit meets a preset update condition.
8. The data processing method of claim 6, wherein storing the updated version storage unit in the peer directory of the initial version storage unit further comprises;
and the downloader component moves the starting module of the initial version from the outer-layer directory to the initial version storage unit and moves the starting module of the updated version in the updated version storage unit from the updated version storage unit to the outer-layer directory.
9. The data processing method according to claim 8, wherein after the moving the boot module of the updated version in the updated version storage unit from the updated version storage unit to the outer directory, the method further comprises:
and the downloader component closes the downloader component of the initial version and runs the starting module of the updated version.
10. The data processing method of claim 9, wherein the shutting down the initial version of the downloader component and running the updated version of the launch module comprises:
and the downloader component sends a version updating success notice to a user, closes the downloader component of the initial version under the condition of receiving an updating instruction of the user, and operates the starting module of the updating version.
11. The data processing method of claim 6, wherein storing the updated version store in the peer directory of the initial version store further comprises:
and the downloader component determines and deletes a target version memory cell from the version memory cells according to a preset deletion rule under the condition that the number of the version memory cells existing in the same-level directory is determined to be greater than or equal to a preset number threshold.
12. A data processing system comprising a target object launch module and a downloader component, wherein:
the starting module is configured to execute a starting process under the condition that a starting instruction is received, determine a corresponding initial version storage unit according to a preset selection rule, and load a downloader component of the initial version from the initial version storage unit;
the downloader component is configured to process an operation instruction of a user for the target object through a first thread, detect version update information through a second thread, and download an update version storage unit through the second thread when the version update information is detected to exist, wherein the update version storage unit comprises an update version starting module and a downloader component.
13. A computing device, comprising:
a memory and a processor;
the memory is configured to store computer-executable instructions, and the processor is configured to execute the computer-executable instructions to implement the steps of the data processing method of any one of claims 1 to 11.
14. A computer-readable storage medium storing computer instructions, characterized in that the instructions, when executed by a processor, implement the steps of the data processing method of any one of claims 1 to 11.
CN202210621944.5A 2022-06-02 2022-06-02 Data processing method and system Pending CN115080141A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210621944.5A CN115080141A (en) 2022-06-02 2022-06-02 Data processing method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210621944.5A CN115080141A (en) 2022-06-02 2022-06-02 Data processing method and system

Publications (1)

Publication Number Publication Date
CN115080141A true CN115080141A (en) 2022-09-20

Family

ID=83249327

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210621944.5A Pending CN115080141A (en) 2022-06-02 2022-06-02 Data processing method and system

Country Status (1)

Country Link
CN (1) CN115080141A (en)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102945182A (en) * 2012-12-06 2013-02-27 北京奇虎科技有限公司 Application program updating method and device
CN102955702A (en) * 2011-08-23 2013-03-06 腾讯科技(深圳)有限公司 Method and device for installing and upgrading software
CN103092665A (en) * 2013-03-01 2013-05-08 畅捷通信息技术股份有限公司 Immediate updating device and immediate updating method
CN103136027A (en) * 2013-03-01 2013-06-05 畅捷通信息技术股份有限公司 Immediate updating device and immediate updating method
CN107357613A (en) * 2017-06-28 2017-11-17 广州酷狗计算机科技有限公司 Using update method, device and computer-readable recording medium
CN108334370A (en) * 2017-05-26 2018-07-27 中国电子科技集团公司第四十研究所 A kind of software auto-increment update upgrade method of distributed test system
CN108647039A (en) * 2018-04-10 2018-10-12 北京奇安信科技有限公司 A kind of processing method and processing device of data upgrading
CN109309725A (en) * 2018-10-25 2019-02-05 深圳市腾讯信息技术有限公司 Using downloading and update method, device, computer equipment and storage medium
CN109600671A (en) * 2018-12-13 2019-04-09 四川九州电子科技股份有限公司 A kind of system and method that network machine top box quickly upgrades
CN109766131A (en) * 2017-11-06 2019-05-17 上海宝信软件股份有限公司 The system and method for the intelligent automatic upgrading of software is realized based on multithreading
CN111142900A (en) * 2019-12-17 2020-05-12 深圳市优必选科技股份有限公司 Program updating method and device and terminal equipment
CN111291012A (en) * 2020-01-16 2020-06-16 深圳市前海随手财富管理有限公司 Rule file deployment system, method, equipment and medium
CN111651187A (en) * 2020-06-01 2020-09-11 福建天晴在线互动科技有限公司 Method and system for updating version increment based on H5 micro terminal

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102955702A (en) * 2011-08-23 2013-03-06 腾讯科技(深圳)有限公司 Method and device for installing and upgrading software
CN102945182A (en) * 2012-12-06 2013-02-27 北京奇虎科技有限公司 Application program updating method and device
CN103092665A (en) * 2013-03-01 2013-05-08 畅捷通信息技术股份有限公司 Immediate updating device and immediate updating method
CN103136027A (en) * 2013-03-01 2013-06-05 畅捷通信息技术股份有限公司 Immediate updating device and immediate updating method
CN108334370A (en) * 2017-05-26 2018-07-27 中国电子科技集团公司第四十研究所 A kind of software auto-increment update upgrade method of distributed test system
CN107357613A (en) * 2017-06-28 2017-11-17 广州酷狗计算机科技有限公司 Using update method, device and computer-readable recording medium
CN109766131A (en) * 2017-11-06 2019-05-17 上海宝信软件股份有限公司 The system and method for the intelligent automatic upgrading of software is realized based on multithreading
CN108647039A (en) * 2018-04-10 2018-10-12 北京奇安信科技有限公司 A kind of processing method and processing device of data upgrading
CN109309725A (en) * 2018-10-25 2019-02-05 深圳市腾讯信息技术有限公司 Using downloading and update method, device, computer equipment and storage medium
CN109600671A (en) * 2018-12-13 2019-04-09 四川九州电子科技股份有限公司 A kind of system and method that network machine top box quickly upgrades
CN111142900A (en) * 2019-12-17 2020-05-12 深圳市优必选科技股份有限公司 Program updating method and device and terminal equipment
CN111291012A (en) * 2020-01-16 2020-06-16 深圳市前海随手财富管理有限公司 Rule file deployment system, method, equipment and medium
CN111651187A (en) * 2020-06-01 2020-09-11 福建天晴在线互动科技有限公司 Method and system for updating version increment based on H5 micro terminal

Similar Documents

Publication Publication Date Title
KR100915564B1 (en) Method, software and apparatus for application upgrade during execution
US9081639B2 (en) System and method for remotely re-imaging a computer system
US7275153B2 (en) Booting and boot code update system using boot strapper code to select between a loader and a duplicate backup loader
JP4740238B2 (en) Method, software, and device for using application state history information when restarting an application
US9928059B1 (en) Automated deployment of a multi-version application in a network-based computing environment
CN110750288B (en) Native engineering configuration method and device, electronic equipment and storage medium
CN105786538B (en) software upgrading method and device based on android system
CN110825563B (en) System recovery method and device and electronic equipment
GB2465193A (en) Detecting updated files in a firmware over the air update using CRC values
CN101719073A (en) Intelligent client-based on-demand downloading realization method
CN102622241A (en) Software upgrading method and software upgrading device
JPH10228379A (en) Method and computer system for executing architecture specification code having reduced run-time memory space request
US20150012732A1 (en) Method and device for recombining runtime instruction
CN105260209A (en) Hot-update solution of program
CN106775873B (en) Method and equipment for updating mobile phone software and acquiring patch file
US7818557B2 (en) Method for re-imaging a computer system
CN113032032A (en) System management method and device, computing equipment and readable storage medium
CN103984585A (en) Method for upgrading Linux kernel in running process of kernel module capable of being plugged in thermal mode
CN106293790B (en) application program upgrading method and device based on Firefox operating system
CN113296804B (en) Method and device for upgrading database
CN108664255B (en) Software upgrading method and device
CN115080141A (en) Data processing method and system
CN111506555B (en) Druid cluster migration method and device and computer equipment
CN111949290B (en) Hot patch management method and device, electronic equipment and storage medium
CN114253572A (en) Process updating method and device

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