CN108717360B - Software version updating method and device - Google Patents

Software version updating method and device Download PDF

Info

Publication number
CN108717360B
CN108717360B CN201810973602.3A CN201810973602A CN108717360B CN 108717360 B CN108717360 B CN 108717360B CN 201810973602 A CN201810973602 A CN 201810973602A CN 108717360 B CN108717360 B CN 108717360B
Authority
CN
China
Prior art keywords
configuration
files
file
comparison
version
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.)
Active
Application number
CN201810973602.3A
Other languages
Chinese (zh)
Other versions
CN108717360A (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.)
Beixinyuan System Integration Co Ltd
Original Assignee
Beixinyuan System Integration 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 Beixinyuan System Integration Co Ltd filed Critical Beixinyuan System Integration Co Ltd
Priority to CN201810973602.3A priority Critical patent/CN108717360B/en
Publication of CN108717360A publication Critical patent/CN108717360A/en
Application granted granted Critical
Publication of CN108717360B publication Critical patent/CN108717360B/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

The invention discloses a software version updating method and a device thereof, comprising the following steps: acquiring configuration files and configuration parameter items of a new version and an old version, and filtering the configuration files and the configuration parameter items participating in comparison by using a filtering algorithm; the configuration files and the configuration parameter items of the new version and the old version which participate in comparison are compared, and the configuration files and the configuration parameter items which participate in comparison, belong to the new version and are different from the old version are stored in the configuration comparison files; deleting the configuration files and the configuration parameters corresponding to the configuration files and the configuration parameters of the old version which need to be reserved in the configuration comparison files, and modifying and storing the configuration files and the configuration parameters which need to be modified in the configuration comparison files; replacing the configuration file of the new version with the configuration file of the old version which is not in the configuration comparison file, and overwriting the configuration file and the configuration parameters of the new version with the configuration file and the configuration parameters in the configuration comparison file; the old version of software is deactivated and backed up and then the new version of software is activated.

Description

Software version updating method and device
Technical Field
The present invention relates to the field of software updating, and more particularly, to a method and an apparatus for updating a software version.
Background
With the application of technologies such as internet, cloud computing, etc., more and more network products are developed based on a B/S (browser/server) architecture. The Web browser is the most important application software on the terminal computer, and the core part of the software product function realization is centralized on the server. Software products are generally upgraded iteratively according to market or user feedback, so that the software version at the server side needs to be updated and replaced continuously. Software upgrading is to migrate a software product packaged in a test environment to a production environment, usually operation and maintenance personnel are required to know the difference between a new version and an old version in advance, then manual replacement is performed on a server side, and parameter information of a configuration file of the test environment is modified into related parameters in the production environment.
Aiming at the problem of modification difficulty caused by configuration change from a test environment to a production environment in the prior art, no effective solution is provided at present.
Disclosure of Invention
In view of this, an object of the embodiments of the present invention is to provide a method and an apparatus for updating a software version, which can perform configuration updating for different types of software or different types of software, increase a software version updating speed, ensure correctness of a software configuration environment, and improve operation and maintenance efficiency.
Based on the above object, an aspect of the embodiments of the present invention provides a software version updating method, including the following steps:
acquiring configuration files and configuration parameter items of a new version and an old version, and filtering the configuration files and the configuration parameter items participating in comparison by using a filtering algorithm;
the configuration files and the configuration parameter items of the new version and the old version which participate in comparison are compared, and the configuration files and the configuration parameter items which participate in comparison, belong to the new version and are different from the old version are stored in the configuration comparison files;
deleting the configuration files and the configuration parameters corresponding to the configuration files and the configuration parameters of the old version which need to be reserved in the configuration comparison files, and modifying and storing the configuration files and the configuration parameters which need to be modified in the configuration comparison files;
replacing the configuration file of the new version with the configuration file of the old version which is not in the configuration comparison file, and overwriting the configuration file and the configuration parameters of the new version with the configuration file and the configuration parameters in the configuration comparison file;
the old version of software is deactivated and backed up and then the new version of software is activated.
In some embodiments, the filtering algorithm includes a list of profiles and configuration parameter items that do not participate in the comparison; and removing the configuration files and the configuration parameter items which do not participate in comparison by using a filtering algorithm, and reserving the configuration files and the configuration parameter items which participate in comparison.
In some embodiments, the new version of configuration files and configuration parameter items are configuration files and configuration parameter items used in the test environment; the old version of the configuration file and the configuration parameter items are the configuration file and the configuration parameter items used in the existing production environment.
In some embodiments, the configuration files and configuration parameters corresponding to the old version of configuration files and configuration parameters that need to be retained are those that are applicable only to the test environment and not to the production environment; and configuring the configuration files and the configuration parameters which need to be modified in the comparison files, wherein the configuration files and the configuration parameters are suitable for the production environment to be updated.
In some embodiments, when overwriting the configuration file and the configuration parameters of the new version with the configuration file and the configuration parameters in the configuration comparison file, the configuration parameters in the configuration file in the configuration comparison file are used to overwrite the configuration parameters in the new version of the configuration file, rather than overwriting the configuration file of the new version with the configuration file in the configuration comparison file.
In some embodiments, the method further comprises configuring an update process of the software version update method using at least one of: identifying algorithm configuration, filtering algorithm configuration, old version backup catalog configuration and new version start command configuration.
In another aspect of the embodiments of the present invention, a software version updating apparatus is further provided, including:
the configuration identification module is used for acquiring configuration files and configuration parameter items of a new version and an old version, and filtering the configuration files and the configuration parameter items participating in comparison by using a filtering algorithm;
the configuration comparison module is used for comparing the configuration files and the configuration parameter items of the new version and the old version which participate in comparison, and storing the configuration files and the configuration parameter items which participate in comparison, belong to the new version and are different from the old version into the configuration comparison file;
the configuration updating module is used for deleting the configuration files and the configuration parameters corresponding to the configuration files and the configuration parameters of the old version needing to be reserved in the configuration comparison files, and modifying and storing the configuration files and the configuration parameters needing to be modified in the configuration comparison files;
the software updating module is used for replacing the configuration file of the new version with the configuration file of the old version which is not in the configuration comparison file, and covering the configuration file and the configuration parameters of the new version with the configuration file and the configuration parameters in the configuration comparison file;
the backup and starting module is used for stopping and backing up the old version software and then starting the new version software;
the software version updating device uses the method.
In another aspect of the embodiments of the present invention, there is also provided a computer device, including a memory, at least one processor, and a computer program stored on the memory and executable on the processor, where the processor executes the program to perform the method described above.
In another aspect of the embodiments of the present invention, a computer-readable storage medium is further provided, which stores a computer program, and the computer program, when executed by a processor, performs the above-mentioned method.
In another aspect of the embodiments of the present invention, there is also provided a computer program product including a computer program stored on a computer-readable storage medium, the computer program including instructions which, when executed by a computer, cause the computer to perform the above method.
The invention has the following beneficial technical effects: according to the software version updating method and device provided by the embodiment of the invention, the technical scheme that the configuration files and the configuration parameter items of the new version and the old version are acquired for filtering, the configuration files which belong to the new version and are different from the old version are stored in the configuration comparison file, the configuration files which need to be reserved and need to be modified are deleted, the configuration files of the new version which is not in the configuration comparison file are used, and the new version which is covered in the configuration comparison file is used is modified and stored, so that the configuration updating can be carried out on different software or different types of software, the software version updating speed is increased, the correctness of a software configuration environment is ensured, and the operation and maintenance efficiency is increased.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
FIG. 1 is a flowchart illustrating a software version updating method according to an embodiment of the present invention;
FIG. 2 is a detailed flowchart of an embodiment of a software version updating method provided by the present invention;
FIG. 3 is a block diagram of an embodiment of a software version updating apparatus provided in the present invention;
fig. 4 is a schematic hardware structure diagram of an embodiment of a computer device for executing the software version updating method provided by the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the following embodiments of the present invention are described in further detail with reference to the accompanying drawings.
It should be noted that all expressions using "first" and "second" in the embodiments of the present invention are used for distinguishing two entities with the same name but different names or different parameters, and it should be noted that "first" and "second" are merely for convenience of description and should not be construed as limitations of the embodiments of the present invention, and they are not described in any more detail in the following embodiments.
In view of the above, a first aspect of the embodiments of the present invention provides an embodiment of a method capable of performing configuration update for different software or different types of software. Fig. 1 is a flowchart illustrating an embodiment of a software version updating method provided by the present invention.
The software version updating method optionally includes the following steps:
s101, acquiring configuration files and configuration parameter items of a new version and an old version, and filtering the configuration files and the configuration parameter items participating in comparison by using a filtering algorithm;
step S103, comparing the configuration files and the configuration parameter items of the new version and the old version which participate in comparison, and storing the configuration files and the configuration parameter items which participate in comparison, belong to the new version and are different from the old version into a configuration comparison file;
step S105, deleting the configuration file and the configuration parameters corresponding to the configuration file and the configuration parameters of the old version needing to be reserved in the configuration comparison file, and modifying and saving the configuration file and the configuration parameters needing to be modified in the configuration comparison file;
step S107, replacing the configuration file of the new version with the configuration file of the old version which is not in the configuration comparison file, and covering the configuration file and the configuration parameters of the new version with the configuration file and the configuration parameters in the configuration comparison file;
step S109, the old version software is deactivated and backed up, and then the new version software is activated.
In some embodiments, the filtering algorithm includes a list of profiles and configuration parameter items that do not participate in the comparison; and removing the configuration files and the configuration parameter items which do not participate in comparison by using a filtering algorithm, and reserving the configuration files and the configuration parameter items which participate in comparison.
The filter algorithm is designed to exclude configuration updates from configuration files and configuration parameter items that may have been previously determined to be specific to the test environment.
In some embodiments, the new version of configuration files and configuration parameter items are configuration files and configuration parameter items used in the test environment; the old version of the configuration file and the configuration parameter items are the configuration file and the configuration parameter items used in the existing production environment. In some embodiments, the configuration files and configuration parameters corresponding to the old version of configuration files and configuration parameters that need to be retained are those that are applicable only to the test environment and not to the production environment; and configuring the configuration files and the configuration parameters which need to be modified in the comparison files, wherein the configuration files and the configuration parameters are suitable for the production environment to be updated.
It should be appreciated that among the test environment, the existing production environment, and the production environment to be updated, erroneously overriding the configuration files and configuration parameters of the existing production environment with the configuration files and configuration parameters of the test environment may result in the updated production environment being unavailable. Therefore, it is necessary to clearly distinguish the three in the configuration update.
In some embodiments, when overwriting the configuration file and the configuration parameters of the new version with the configuration file and the configuration parameters in the configuration comparison file, the configuration parameters in the configuration file in the configuration comparison file are used to overwrite the configuration parameters in the new version of the configuration file, rather than overwriting the configuration file of the new version with the configuration file in the configuration comparison file.
Not using a configuration file that overwrites the new version of the configuration files in the configuration comparison file may prevent new configuration parameters included in the new version of the configuration file from being written to the production environment to be updated. This potential concern is not taken into account in conventional configuration updates.
In some embodiments, the method further comprises configuring an update process of the software version update method using at least one of: identifying algorithm configuration, filtering algorithm configuration, old version backup catalog configuration and new version start command configuration.
Fig. 2 is a detailed flowchart of an embodiment of the software version updating method provided by the present invention. As shown in fig. 2, software configuration parameter identification is first performed. The parameter identification algorithm is set according to specific configuration file parameter information, for example, for a configuration parameter url ═ jdbc: mysql://192.168.1.1: 3306/vrvussesssl ═ false in a configuration file jdbc.
[jdbc.properties]–>=
The representation identifies the jdbc.properties profile line by line, and one or more lines where "═ appears are one parameter item, where the first appearance of" ═ is the identifier, on the left is the parameter name, and on the right is the parameter value. Configure filter algorithm set to
[log4j.properties]
Properties file is shown filtered, which does not participate in the new and old version comparisons. Is arranged to
[log4j.properties]
log4j.rootLogger=ERROR,console
And (4) indicating that the parameter items of the cloud 4j, rootlogger, ERROR under the filtered cloud 4j, properties file do not participate in the new version and old version comparison module.
And then comparing the new version configuration with the old version configuration by using a configuration parameter identification algorithm and a configuration filtering algorithm, and storing the configuration file names or configuration parameter items which belong to the new version and are different from the old version into a specified configuration comparison file. In the embodiment of the present invention, the configuration parameter items in the new version configuration file jdbc.
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://192.168.1.1:3306/testuseSSL=false
username=root
password=root
maxIdleTime=1800
The configuration parameter items in the old version configuration file jdbc.
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://10.10.1.1:3306/vrvuseSSL=false
username=v/mPUZal
password=v/mPUZal
After comparison, the information to be saved in the configuration comparison file is:
[jdbc.properties]
url=jdbc:mysql://192.168.1.1:3306/testuseSSL=false
username=root
password=root
maxIdleTime=1800
if the configuration parameter identification algorithm is not set, when the new version and the old version are compared, the configuration files of the new version and the old version are directly compared, any inconsistency occurs in the contents of the configuration files, and all parameter items in the configuration files are written into the appointed files. If the configuration filtering algorithm is not set, all configuration contents are compared when the new version is compared with the old version.
Then, the old configuration file name or the configuration parameter item which needs to be utilized is deleted, and the configuration file name or the configuration parameter item which needs to be edited again is modified and then is reserved. The configuration file name or configuration parameter that needs to be re-edited is the aforementioned configuration difference of the production environment to be updated with respect to the existing production environment. The following edits may be made in embodiments of the invention:
[jdbc.properties]
maxIdleTime=2400
the parameter item maxIdleTime 2400 that represents that jdbc.
The software package is then updated according to the configuration profile content. And directly replacing all the new version configuration files which are not in the configuration comparison file with the corresponding old version configuration files. For the configuration file name in the configuration comparison file, if the configuration file name has the configuration parameter item information, the configuration parameter item is replaced to the configuration parameter item corresponding to the new version, and the rest configuration parameter items in the configuration file are replaced to the new version from the old version; if the configuration parameter item information is not contained in the configuration file, all the configuration items in the configuration file are directly replaced from the old version to the new version. The configuration file is not directly replaced, so that a new configuration parameter item is prevented from being added to the configuration file in the new version.
The alternative content in the embodiment of the invention is as follows:
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://10.10.1.1:3306/vrvuseSSL=false
username=v/mPUZal
password=v/mPUZal
maxIdleTime=2400
then, version backup and starting are carried out. And after the configuration file is replaced, closing the process of the old version software, storing the process to a specified path, starting the new version software, and finishing the gradual upgrade of the software version. In addition, the above process may include parameter identification algorithm configuration, filtering algorithm configuration, old version backup directory configuration, new version start command configuration, etc., and these configurations may be changed according to the software itself and the operating environment.
It can be seen from the foregoing embodiments that, in the software version updating method provided in the embodiments of the present invention, by obtaining the configuration files and configuration parameter items of the new version and the old version, filtering the configuration files and configuration parameter items, storing the configuration files and configuration parameter items that belong to the new version and are different from the old version into the configuration comparison file, deleting the configuration files that need to be retained, modifying and storing the configuration files and configuration parameter items that need to be modified, using the configuration files of the new version that are not in the configuration comparison file, and using the overlay new version in the configuration comparison file, configuration updating can be performed on different types of software or different types of software, so as to improve the software version updating speed, ensure the correctness of the software configuration environment, and improve the operation and maintenance efficiency.
It should be particularly noted that, the steps in the embodiments of the software version updating method described above can be mutually intersected, replaced, added, or deleted, so that these reasonable permutation and combination transformations also belong to the scope of the present invention for the software version updating method, and should not limit the scope of the present invention to the described embodiments.
In view of the above-mentioned objects, a second aspect of the embodiments of the present invention provides an embodiment of an apparatus capable of performing configuration update for different software or different types of software. Fig. 2 is a schematic structural diagram of an embodiment of a software version updating apparatus provided in the present invention.
As shown in fig. 3, the software version updating apparatus includes:
the configuration identification module 31 is configured to acquire configuration files and configuration parameter items of a new version and an old version, and filter the configuration files and the configuration parameter items participating in comparison by using a filtering algorithm;
a configuration comparison module 32, configured to compare the configuration files and configuration parameter items of the new version and the old version involved in comparison, and store the configuration files and configuration parameter items involved in comparison, belonging to the new version and different from the old version into the configuration comparison file;
the configuration updating module 33 is configured to delete the configuration file and the configuration parameters corresponding to the configuration file and the configuration parameters of the old version that need to be retained in the configuration comparison file, and modify and store the configuration file and the configuration parameters that need to be modified in the configuration comparison file;
a software updating module 34, configured to replace the configuration file of the new version with the configuration file of the old version that is not in the configuration comparison file, and overwrite the configuration file and the configuration parameters of the new version with the configuration file and the configuration parameters in the configuration comparison file;
and a backup and start module 35 for deactivating and backing up the old version of software and then activating the new version of software.
The software version updating apparatus uses the above-described method.
According to the software version updating device provided by the embodiment of the invention, the technical scheme that the configuration files and the configuration parameter items of the new version and the old version are acquired for filtering, the configuration files which belong to the new version and are different from the old version are stored in the configuration comparison file, the configuration files which need to be reserved and need to be modified are deleted, the configuration files of the new version which are not in the configuration comparison file are used, and the new version which is covered in the configuration comparison file is used is deleted and stored, so that the configuration updating can be carried out on different software or different types of software, the software version updating speed is increased, the correctness of a software configuration environment is ensured, and the operation and maintenance efficiency is improved.
It should be particularly noted that the above-mentioned embodiment of the software version updating apparatus employs the embodiment of the software version updating method to specifically describe the working process of each module, and those skilled in the art can easily think that these modules are applied to other embodiments of the software version updating method. Of course, since the steps in the embodiment of the software version updating method can be mutually intersected, replaced, added, and deleted, these reasonable permutation and combination transformations of the software version updating apparatus should also belong to the scope of the present invention, and should not limit the scope of the present invention to the embodiment.
In view of the above object, a third aspect of the embodiments of the present invention proposes an embodiment of a computer device executing the software version updating method.
The computer device for executing the software version updating method comprises a memory, at least one processor and a computer program stored on the memory and capable of running on the processor, wherein the processor executes the computer program to execute any one of the methods.
Fig. 4 is a schematic hardware structure diagram of an embodiment of a computer device for executing the software version updating method according to the present invention.
Taking the computer device shown in fig. 4 as an example, the computer device includes a processor 401 and a memory 402, and may further include: an input device 403 and an output device 404.
The processor 401, the memory 402, the input device 403 and the output device 404 may be connected by a bus or other means, and fig. 4 illustrates an example of a connection by a bus.
The memory 402, which is a non-volatile computer-readable storage medium, can be used for storing non-volatile software programs, non-volatile computer-executable programs, and modules, such as program instructions/modules corresponding to the software version updating method in the embodiments of the present application. The processor 401 executes various functional applications of the server and data processing by running nonvolatile software programs, instructions, and modules stored in the memory 402, that is, implements the software version updating method of the above-described method embodiment.
The memory 402 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required for at least one function; the storage data area may store data created according to the use of the software version-updating apparatus, and the like. Further, the memory 402 may include high speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other non-volatile solid state storage device. In some embodiments, memory 402 may optionally include memory located remotely from processor 401, which may be connected to local modules via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The input device 403 may receive input numeric or character information and generate key signal inputs related to user settings and function control of the software version-updating device. The output device 404 may include a display device such as a display screen.
Program instructions/modules corresponding to the one or more software version-up methods are stored in the memory 402 and, when executed by the processor 401, perform the software version-up method in any of the above-described method embodiments.
Any embodiment of the computer device executing the software version updating method can achieve the same or similar effects as any corresponding method embodiment.
In view of the above object, a fourth aspect of the embodiments of the present invention provides a computer-readable storage medium, where computer-executable instructions are stored, where the computer-executable instructions can execute the software version updating method in any of the above method embodiments and implement the software version updating apparatus/system in any of the above apparatus/system embodiments. Embodiments of the computer-readable storage medium may achieve the same or similar effects as any of the aforementioned method and apparatus/system embodiments corresponding thereto.
In view of the above object, a fifth aspect of the embodiments of the present invention proposes a computer program product, which includes a computer program stored on a computer-readable storage medium, the computer program including instructions that, when executed by a computer, cause the computer to execute the software version updating method in any of the above method embodiments and the software version updating apparatus/system implementing any of the above apparatus/system embodiments. Embodiments of the computer program product may achieve the same or similar effects as any of the aforementioned method and apparatus/system embodiments corresponding thereto.
Finally, it should be noted that, as will be understood by those skilled in the art, all or part of the processes of the methods of the above embodiments may be implemented by a computer program, which may be stored in a computer-readable storage medium, and when executed, may include the processes of the embodiments of the methods described above. The storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), a Random Access Memory (RAM), or the like. Embodiments of the computer program may achieve the same or similar effects as any of the preceding method embodiments to which it corresponds.
In addition, the apparatuses, devices and the like disclosed in the embodiments of the present invention may be various electronic terminal devices, such as a mobile phone, a Personal Digital Assistant (PDA), a tablet computer (PAD), a smart television and the like, or may be a large terminal device, such as a server and the like, and therefore the scope of protection disclosed in the embodiments of the present invention should not be limited to a specific type of apparatus, device. The client disclosed in the embodiment of the present invention may be applied to any one of the above electronic terminal devices in the form of electronic hardware, computer software, or a combination of both.
Furthermore, the method disclosed according to an embodiment of the present invention may also be implemented as a computer program executed by a CPU, and the computer program may be stored in a computer-readable storage medium. The computer program, when executed by the CPU, performs the above-described functions defined in the method disclosed in the embodiments of the present invention.
Further, the above method steps and system elements may also be implemented using a controller and a computer readable storage medium for storing a computer program for causing the controller to implement the functions of the above steps or elements.
Further, it should be appreciated that the computer-readable storage media (e.g., memory) described herein can be either volatile memory or nonvolatile memory, or can include both volatile and nonvolatile memory. By way of example, and not limitation, nonvolatile memory can include Read Only Memory (ROM), Programmable ROM (PROM), Electrically Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), or flash memory. Volatile memory can include Random Access Memory (RAM), which can act as external cache memory. By way of example and not limitation, RAM is available in a variety of forms such as synchronous RAM (DRAM), Dynamic RAM (DRAM), Synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), Enhanced SDRAM (ESDRAM), Synchronous Link DRAM (SLDRAM), and Direct Rambus RAM (DRRAM). The storage devices of the disclosed aspects are intended to comprise, without being limited to, these and other suitable types of memory.
Those of skill would further appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the disclosure herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as software or hardware depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the disclosed embodiments of the present invention.
The various illustrative logical blocks, modules, and circuits described in connection with the disclosure herein may be implemented or performed with the following components designed to perform the functions described herein: a general purpose processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination of these components. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP, and/or any other such configuration.
The steps of a method or algorithm described in connection with the disclosure herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an ASIC. The ASIC may reside in a user terminal. In the alternative, the processor and the storage medium may reside as discrete components in a user terminal.
In one or more exemplary designs, the functions may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage media may be any available media that can be accessed by a general purpose or special purpose computer. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a general-purpose or special-purpose computer, or a general-purpose or special-purpose processor. Also, any connection is properly termed a computer-readable medium. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, Digital Subscriber Line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. Disk and disc, as used herein, includes Compact Disc (CD), laser disc, optical disc, Digital Versatile Disc (DVD), floppy disk, blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.
The foregoing is an exemplary embodiment of the present disclosure, but it should be noted that various changes and modifications could be made herein without departing from the scope of the present disclosure as defined by the appended claims. The functions, steps and/or actions of the method claims in accordance with the disclosed embodiments described herein need not be performed in any particular order. Furthermore, although elements of the disclosed embodiments of the invention may be described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated.
It should be understood that, as used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly supports the exception. It should also be understood that "and/or" as used herein is meant to include any and all possible combinations of one or more of the associated listed items.
The numbers of the embodiments disclosed in the embodiments of the present invention are merely for description, and do not represent the merits of the embodiments.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, where the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
Those of ordinary skill in the art will understand that: the discussion of any embodiment above is meant to be exemplary only, and is not intended to intimate that the scope of the disclosure, including the claims, of embodiments of the invention is limited to these examples; within the idea of an embodiment of the invention, also technical features in the above embodiment or in different embodiments may be combined and there are many other variations of the different aspects of an embodiment of the invention as described above, which are not provided in detail for the sake of brevity. Therefore, any omissions, modifications, substitutions, improvements, and the like that may be made without departing from the spirit and principles of the embodiments of the present invention are intended to be included within the scope of the embodiments of the present invention.

Claims (9)

1. A software version updating method is applied to a server and comprises the following steps:
acquiring configuration files and configuration parameter items of a new version and an old version, and filtering the configuration files and the configuration parameter items participating in comparison by using a filtering algorithm, wherein the configuration files and the configuration parameter items of the new version are the configuration files and the configuration parameter items used in a test environment, and the configuration files and the configuration parameter items of the old version are the configuration files and the configuration parameter items used in an existing production environment;
comparing the configuration files and the configuration parameter items of the new version and the old version which participate in comparison, and storing the configuration files and the configuration parameter items which participate in comparison, belong to the new version and are different from the old version into a configuration comparison file;
deleting the configuration files and the configuration parameters corresponding to the old version of the configuration files and the configuration parameters which need to be reserved in the configuration comparison files, and modifying and saving the configuration files and the configuration parameters which need to be modified in the configuration comparison files;
replacing the configuration file of the new version with the old version of the configuration file that is not in the configuration contrast file and overwriting the configuration file and the configuration parameters of the new version with the configuration file and the configuration parameters in the configuration contrast file;
the old version of software is deactivated and backed up and then the new version of software is activated.
2. The method of claim 1, wherein the filtering algorithm comprises a list of the configuration files and the configuration parameter items that do not participate in comparison; and removing the configuration files and the configuration parameter items which do not participate in comparison by using a filtering algorithm, and reserving the configuration files and the configuration parameter items which participate in comparison.
3. The method of claim 1, wherein the configuration files and the configuration parameters corresponding to the old version of the configuration files and the configuration parameters that need to be preserved are the configuration files and the configuration parameters that are applicable only to the test environment and not applicable to the production environment; the configuration files and the configuration parameters to be modified in the configuration comparison file are the configuration files and the configuration parameters suitable for the production environment to be updated.
4. The method of claim 1, wherein when overwriting the configuration files and the configuration parameters of the new version with the configuration files and the configuration parameters in the configuration comparison file, overwriting the configuration parameters in the configuration files of the new version with the configuration parameters in the configuration files in the configuration comparison file instead of overwriting the configuration files of the new version with the configuration files in the configuration comparison file.
5. The method of claim 1, further comprising configuring an update procedure of a software version update method using at least one of: identifying algorithm configuration, filtering algorithm configuration, old version backup catalog configuration and new version start command configuration.
6. A software version updating apparatus, comprising:
the configuration identification module is used for acquiring configuration files and configuration parameter items of a new version and an old version, and filtering the configuration files and the configuration parameter items participating in comparison by using a filtering algorithm, wherein the configuration files and the configuration parameter items of the new version are the configuration files and the configuration parameter items used in a test environment, and the configuration files and the configuration parameter items of the old version are the configuration files and the configuration parameter items used in an existing production environment;
a configuration comparison module, configured to compare the configuration files and the configuration parameter items of the new version and the old version participating in comparison, and store the configuration files and the configuration parameter items which are involved in comparison, belong to the new version, and are different from the old version into a configuration comparison file;
a configuration updating module, configured to delete the configuration file and the configuration parameters corresponding to the old version of the configuration file and the configuration parameters that need to be retained in the configuration comparison file, and modify and store the configuration file and the configuration parameters that need to be modified in the configuration comparison file;
a software update module for replacing the configuration file of the new version with the old version of the configuration file that is not in the configuration comparison file and overwriting the configuration file and the configuration parameters of the new version with the configuration file and the configuration parameters in the configuration comparison file;
the backup and starting module is used for stopping and backing up the old version software and then starting the new version software;
wherein the device uses the method of any one of claims 1-5.
7. A computer device comprising a memory, at least one processor and a computer program stored on the memory and executable on the processor, characterized in that the processor performs the method according to any of claims 1-5 when executing the program.
8. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, is adapted to carry out the method of any one of claims 1 to 5.
9. A computer program product, characterized in that the computer program product comprises a computer program stored on a computer-readable storage medium, the computer program comprising instructions which, when executed by a computer, cause the computer to carry out the method of any one of claims 1-5.
CN201810973602.3A 2018-08-24 2018-08-24 Software version updating method and device Active CN108717360B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810973602.3A CN108717360B (en) 2018-08-24 2018-08-24 Software version updating method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810973602.3A CN108717360B (en) 2018-08-24 2018-08-24 Software version updating method and device

Publications (2)

Publication Number Publication Date
CN108717360A CN108717360A (en) 2018-10-30
CN108717360B true CN108717360B (en) 2022-01-07

Family

ID=63914465

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810973602.3A Active CN108717360B (en) 2018-08-24 2018-08-24 Software version updating method and device

Country Status (1)

Country Link
CN (1) CN108717360B (en)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109491701A (en) * 2018-11-01 2019-03-19 郑州云海信息技术有限公司 A kind of configuration information recovery method, system, equipment and computer storage medium
CN109634682B (en) * 2018-11-29 2022-02-15 恒生电子股份有限公司 Configuration file updating method and device for application program
CN110362335B (en) * 2019-07-22 2020-10-30 珠海格力电器股份有限公司 Method, server and system for processing configuration items
CN110896333B (en) * 2019-09-23 2022-01-21 惠州高盛达科技有限公司 WiFi module testing method and system and storage medium
CN112955866A (en) * 2020-01-13 2021-06-11 深圳市大疆创新科技有限公司 Parameter updating method, device, system and computer readable storage medium
CN111506341B (en) * 2020-04-21 2023-11-03 北京同邦卓益科技有限公司 Software configuration information detection method, device and system
CN111522579A (en) * 2020-06-22 2020-08-11 上海通联金融服务有限公司 Version environment process detection method, device and storage medium
CN112015463B (en) * 2020-08-24 2023-08-18 中国银行股份有限公司 Configuration version management device and working method thereof
CN112445542A (en) * 2020-11-25 2021-03-05 平安普惠企业管理有限公司 System environment configuration comparison method, device, equipment and storage medium
CN112711540A (en) * 2021-01-11 2021-04-27 杭州萤石软件有限公司 Method, device, equipment and storage medium for synchronizing configuration items of application
CN112799738B (en) * 2021-01-29 2023-11-24 深圳市美科星通信技术有限公司 Configuration file importing method, device and equipment
CN113342562A (en) * 2021-06-22 2021-09-03 平安普惠企业管理有限公司 System configuration checking method, device, equipment and storage medium
CN113722052B (en) * 2021-08-23 2024-02-20 华中科技大学 Nonvolatile memory updating method based on data double versions
CN113687852A (en) * 2021-09-09 2021-11-23 中国银行股份有限公司 Automatic generation method and device for log collection configuration file
CN113923119A (en) * 2021-10-09 2022-01-11 中国银行股份有限公司 Method and device for checking configuration parameters constructed by Maven project
CN116069676B (en) * 2023-04-07 2023-06-09 中国空气动力研究与发展中心计算空气动力研究所 Version comparison method, device, terminal equipment and storage medium

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102148714A (en) * 2011-05-13 2011-08-10 大唐移动通信设备有限公司 Method and device for upgrading software
CN102567053A (en) * 2011-12-20 2012-07-11 云海创想信息技术(无锡)有限公司 Method and device for downgrading software version
CN102567050A (en) * 2011-12-13 2012-07-11 中国电子科技集团公司第十五研究所 Method and device for remote deployment of project of B/S (browser/server) system
CN103064712A (en) * 2012-12-28 2013-04-24 深圳市共进电子股份有限公司 Method, device and terminal device for updating configuration parameter
CN103186391A (en) * 2011-12-29 2013-07-03 腾讯科技(深圳)有限公司 Browser upgrading method and system and upgrading server
CN103257852A (en) * 2012-02-17 2013-08-21 阿里巴巴集团控股有限公司 Method and device for building development environment of distributed application system
CN105354065A (en) * 2015-11-28 2016-02-24 东莞酷派软件技术有限公司 Multi-product software upgrading method and terminal
US9294482B2 (en) * 2013-07-25 2016-03-22 Oracle International Corporation External platform extensions in a multi-tenant environment

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101183444A (en) * 2007-12-13 2008-05-21 浪潮通信信息系统有限公司 Software disposition monitoring management method
CN101739278B (en) * 2009-12-17 2013-08-07 中国电力科学研究院 Enterprise-level application software updating method and system
JP2013130923A (en) * 2011-12-20 2013-07-04 Canon Inc Image processor, server device, information processing method, and program

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102148714A (en) * 2011-05-13 2011-08-10 大唐移动通信设备有限公司 Method and device for upgrading software
CN102567050A (en) * 2011-12-13 2012-07-11 中国电子科技集团公司第十五研究所 Method and device for remote deployment of project of B/S (browser/server) system
CN102567053A (en) * 2011-12-20 2012-07-11 云海创想信息技术(无锡)有限公司 Method and device for downgrading software version
CN103186391A (en) * 2011-12-29 2013-07-03 腾讯科技(深圳)有限公司 Browser upgrading method and system and upgrading server
CN103257852A (en) * 2012-02-17 2013-08-21 阿里巴巴集团控股有限公司 Method and device for building development environment of distributed application system
CN103064712A (en) * 2012-12-28 2013-04-24 深圳市共进电子股份有限公司 Method, device and terminal device for updating configuration parameter
US9294482B2 (en) * 2013-07-25 2016-03-22 Oracle International Corporation External platform extensions in a multi-tenant environment
CN105354065A (en) * 2015-11-28 2016-02-24 东莞酷派软件技术有限公司 Multi-product software upgrading method and terminal

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
A Rule based static configuration validation technique in an Autonomous Distributed Environment;Rajesh Kalyanaraman;《institute of electrical and electronic engineers》;20070507;全文 *
Spring.profile实现开发、测试和生产环境的配置和切换;Strugglion;《https://www.cnblogs.com/strugglion/p/7091021.html》;20170628;全文 *
应用软件版本控制管理技术研究;张志霞等;《信息化研究》;20160620;全文 *

Also Published As

Publication number Publication date
CN108717360A (en) 2018-10-30

Similar Documents

Publication Publication Date Title
CN108717360B (en) Software version updating method and device
CN107329741B (en) Software distributed upgrading method and device based on fingerprint identification
CN107463369B (en) Access device control method and device for virtual desktop
CN112019369A (en) Dynamic configuration management method and system under micro-service framework
US20090259993A1 (en) Sandbox Support for Metadata in Running Applications
WO2013168224A1 (en) Programmable logic controller, programming tool, and program and parameter editing system
CN108255542B (en) Serial port and parallel port control method and device of virtual machine
CN107391478A (en) A kind of online document edit methods and device
WO2017113611A1 (en) Method and system for optimizing operation system
EP3330870A1 (en) Data migration
CN111367560A (en) Method, system, equipment and medium for expanding server function
CN107391178B (en) Terminal installation package deployment and implementation method and device
CN111813507B (en) Method, system, equipment and medium for high availability of virtual machine based on sanlock
CN110784353B (en) Network element equipment configuration data migration method and device
US8892499B2 (en) Life cycle management of rule sets
US9047159B2 (en) Software installation
CN110427199B (en) Method, equipment and readable medium for upgrading BMC and BIOS in matching manner
CN111008037A (en) Code migration method, equipment and storage medium
JP2015022511A (en) Programmable controller system, and support device and program thereof
CN111813784B (en) Method, system, equipment and medium for dynamically updating chart
JP7418494B2 (en) Update management system and update management method
CN113254029B (en) Peripheral interface setting method and device of terminal equipment and electronic equipment
CN111722801B (en) Label-based storage volume attribute management method, device, equipment and medium
CN111581288B (en) Object cloning method, system, device and medium
JP3104586B2 (en) Design support method

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
CB02 Change of applicant information

Address after: Room 2298, Yingying building, 99 Tuanjie Road, yanchuangyuan, Jiangbei new district, Nanjing, Jiangsu Province, 211800

Applicant after: Beixinyuan system integration Co., Ltd

Address before: No.3 Ruiyun Road, Jiangpu street, Pukou District, Nanjing, Jiangsu Province, 211899

Applicant before: JIANGSU SHENZHOU XINYUAN SYSTEM ENGINEERING Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant