Basic software version maintenance method and device, electronic equipment and storage medium

By comparing and adjusting the basic information of the production environment and R&D environment server versions, the application function abnormality caused by inconsistent versions of the basic software is solved, and the basic software version consistency between the environments and the normal operation of the application is achieved.

CN119536797APending Publication Date: 2025-02-28AGRICULTURAL BANK OF CHINA
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202411697378.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-25
Publication Date
2025-02-28

AI Technical Summary

Technical Problem

In the prior art, the production environment and the basic software version of the R&D environment are inconsistent, resulting in the problem that the application is operating normally in the R&D environment but has abnormal functions in the production environment.

Method used

By determining the basic information of the production environment and R&D environment server, including the basic software version, system module and external request processing interface list, perform version comparison, formulate adjustment rules and adjust the basic software version to ensure that the production environment is consistent with the basic software version of the R&D environment.

Benefits of technology

It realizes that the production environment is consistent with the basic software version of the R&D environment server, ensuring that applications that run normally in the R&D environment can also run normally in the production environment, and improving the stability and reliability of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119536797A_ABST
    Figure CN119536797A_ABST
Patent Text Reader

Abstract

The invention discloses a basic software version maintenance method and device, electronic equipment and a storage medium. The method comprises the following steps: determining basic information of a first server and basic information of a second server; determining a version comparison result of the basic software according to the basic information of the first server and the basic information of the second server; and formulating a basic software adjustment rule of the first server and the second server according to a version comparison result, and adjusting a basic software version of the first server or the second server according to the basic software adjustment rule so as to enable the versions of the basic software of the first server and the second server to be consistent. According to the scheme, the basic software versions of the running servers in the production environment and the research and development environment associated with the same system module or the same application program can be kept consistent.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer technology, and in particular to a method, device, electronic equipment and storage medium for maintaining a basic software version. Background Art

[0002] In recent years, during the software development process, applications need to be verified in R&D environments such as development environment, integration test environment, functional test environment, and performance test environment before they can be deployed to the production environment to provide external services.

[0003] Maintaining consistency between the basic software versions of the production environment and the R&D environment servers is a guarantee that the application has the same functions in the production environment and the R&D environment, and is also an important prerequisite for ensuring the smooth operation of the bank's information technology system. The existing basic software version management method requires manual collection and management of the basic software versions of the server. The data maintainability and timeliness are poor, there is a lack of a unified data processing method, and the data regularity is poor, resulting in inaccurate data comparison results, which increases the difficulty of maintaining the consistency of the basic software version. Furthermore, if the basic software versions of the R&D environment and the production environment are inconsistent, the application will function normally in the R&D environment, but when the application is deployed to the production environment, it will have problems such as functional anomalies. Summary of the invention

[0004] The present invention provides a basic software version maintenance method, device, electronic device and storage medium to solve the problem of inconsistent basic software versions of servers running in a research and development environment and a production environment during software development.

[0005] According to one aspect of the present invention, a method for maintaining a basic software version is provided, the method comprising:

[0006] Determine the basic information of the first server and the basic information of the second server. The first server is a server running in a production environment for formally providing external services, and the second server is a server running in a research and development environment for development and testing. The basic information includes: basic software version information of the server, system module information to which the server belongs, and a list of external request processing interfaces of server-associated applications. The system module is a module included in the business system that formally provides external services. The list of external request processing interfaces records the interfaces of the associated servers when the application is running;

[0007] Determine a basic software version comparison result based on the basic information of the first server and the basic information of the second server, the version comparison result including at least one of the following: a basic software version comparison result of the first server and the second server belonging to the same system module, and a basic software version comparison result of the first server and the second server associated with the same application;

[0008] According to the version comparison result, a basic software adjustment rule for the first server and the second server is formulated, and the basic software version of the first server or the second server is adjusted according to the basic software adjustment rule so that the basic software versions of the first server and the second server are consistent.

[0009] According to another aspect of the present invention, a basic software version maintenance device is provided, the device comprising:

[0010] A first determination module is used to determine basic information of a first server and basic information of a second server. The first server is a server running in a production environment for formally providing external services, and the second server is a server running in a research and development environment for development and testing. The basic information includes: basic software version information of the server, system module information to which the server belongs, and a list of external request processing interfaces of server-associated applications. The system module is a module included in a business system that formally provides external services, and the list of external request processing interfaces records interfaces of associated servers when the application is running;

[0011] A second determination module is used to determine a version comparison result of the basic software according to the basic information of the first server and the basic information of the second server, wherein the version comparison result includes at least one of the following: a basic software version comparison result of the first server and the second server belonging to the same system module, and a basic software version comparison result of the first server and the second server associated with the same application program;

[0012] The version adjustment module is used to formulate basic software adjustment rules for the first server and the second server according to the version comparison result, and adjust the basic software version of the first server or the second server according to the basic software adjustment rule to make the basic software versions of the first server and the second server consistent.

[0013] According to another aspect of the present invention, there is provided an electronic device, the electronic device comprising:

[0014] at least one processor; and

[0015] a memory communicatively connected to at least one processor; wherein,

[0016] The memory stores a computer program that can be executed by at least one processor. The computer program is executed by at least one processor so that the at least one processor can execute the basic software version maintenance method of any embodiment of the present invention.

[0017] According to another aspect of the present invention, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the basic software version maintenance method of any embodiment of the present invention when executed.

[0018] The technical solution of the embodiment of the present invention determines the basic information of the first server and the basic information of the second server, the first server is a server running in a production environment for formally providing external services, and the second server is a server running in a research and development environment for development and testing, the basic information includes: the basic software version information of the server, the system module information to which the server belongs, and the external request processing interface list of the server-associated application program, the system module is a module included in the business system that formally provides external services, and the external request processing interface list records the interface of the associated server when the application is running, thereby realizing real-time collection of the basic software version information of the servers running in the production environment and the research and development environment, and providing actual data support for subsequent version comparison; the version comparison result of the basic software is determined according to the basic information of the first server and the basic information of the second server, and the version comparison result includes at least one of the following: belonging to the same The basic software version comparison results of the first server and the second server with the same system module and the basic software version comparison results of the first server and the second server associated with the same application program establish the association relationship between the servers running in the production environment and the R&D environment based on the system module information and the external request processing interface information of the application program, thereby improving the accuracy of the basic software version comparison results; basic software adjustment rules for the first server and the second server are formulated based on the version comparison results, and the basic software version of the first server or the second server is adjusted according to the basic software adjustment rules to make the basic software versions of the first server and the second server consistent, thereby formulating basic software adjustment rules based on the version comparison results, ensuring that the basic software versions of the servers running in the production environment and the R&D environment can be consistent, so that applications that run normally in the R&D environment can also run normally in the production environment.

[0019] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present invention, nor are they intended to limit the scope of the present invention. Other features of the present invention will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0021] Figure 1 A flowchart of a method for maintaining a basic software version provided in Embodiment 1 of the present invention;

[0022] Figure 2A flowchart of a method for maintaining a basic software version provided in Embodiment 2 of the present invention;

[0023] Figure 3 A schematic diagram of the structure of a basic software version maintenance device provided in Embodiment 3 of the present invention;

[0024] Figure 4 A structural diagram of an electronic device for implementing a basic software version maintenance method provided in Embodiment 4 of the present invention. DETAILED DESCRIPTION

[0025] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.

[0026] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0027] It is understandable that the data involved in this technical solution (including but not limited to the data itself, the acquisition or use of the data) shall comply with the requirements of relevant laws, regulations and relevant provisions.

[0028] Embodiment 1

[0029] Figure 1 The flowchart of a basic software version maintenance method provided in the first embodiment of the present invention. The embodiment of the present invention is applicable to the situation where the basic software version of the server running in the production environment and the R&D environment is consistent. The method can be executed by a basic software version maintenance device, which can be implemented in the form of hardware and / or software and can be configured in an electronic device that implements the basic software version maintenance method. Figure 1 As shown, the method includes:

[0030] S101. Determine basic information of the first server and basic information of the second server. The first server is a server running in a production environment for formally providing external services, and the second server is a server running in a research and development environment for development and testing. The basic information includes: basic software version information of the server, system module information to which the server belongs, and a list of external request processing interfaces of server-associated applications. The system module is a module included in a business system that formally provides external services. The list of external request processing interfaces records interfaces of the associated servers when the application is running.

[0031] In an embodiment of the present invention, the production environment may refer to a system environment that formally provides external services during the software development process. The research and development environment may refer to a system environment used for development and testing during the software development process. Both the production environment and the research and development environment include: a computer hardware platform, an operating system, a database, middleware, and an application program. The first server may refer to some or all servers running in the production environment. The second server may refer to some or all servers running in the research and development environment. The basic software of the server may include: an operating system, middleware, and a database. Exemplarily, the operating system is SUSE or CENTOS, etc., the middleware is Nginx or RabbitMQ, etc., and the database is MySQL, Oracle Database, or Redis, etc.

[0032] The basic information of the server may refer to the basic software version information of the server, the system module information to which the server belongs, and the external request processing interface list of the server-associated application. The basic software version information may refer to the specific version information corresponding to different basic software of the server, for example, the server's operating system is SUSE and the corresponding version is 12.3. The system module may refer to the module included in the business system that provides external services, such as the financial management module in mobile banking and the user management module of the bank counter system. The application may refer to the various functions included in the system module, such as the transfer function in the financial management module, the user addition function or the user deletion function in the user management module. The application relies on the processing interface provided by the basic software of the server at run time. The processing interface that the application relies on can be summarized to form the external request processing interface list of the application. If the interface recorded in the external request processing interface list of the application corresponds to the interface provided by the server, it indicates that the application and the server are related to each other.

[0033] Specifically, the basic software version information, system module information, and external request processing interface list of associated applications of all servers running in the production environment can be collected in real time as the basic information of the first server. The basic software version information, system module information, and external request processing interface list of associated applications of all servers running in the R&D environment can be collected in real time as the basic information of the second server.

[0034] As an option, before determining the basic information of the first server and the basic information of the second server, the basic software version maintenance method includes the following steps A1-A2:

[0035] Step A1: When the first server or the second server applies for use, the system module information to which the first server or the second server belongs is recorded.

[0036] Step A2: When the application associated with the first server or the second server is compiled, the external request processing interface list of the application is recorded, and the external request processing interface list is stored in the server associated with the application.

[0037] Specifically, when applying to use the first server in a production environment or applying to use the second server in a research and development environment, it is necessary to fill in and record the system module information to which the first server or the second server belongs, so that the first server and the second server can be associated based on the system module information. When the application associated with the first server or the second server is compiled, the external request processing interface used when the application is compiled is recorded to form a list of external request processing interfaces for the application. Exemplarily, the external request processing interface list of the application can be generated by a compiler plug-in during the code compilation stage of the application, and the external request processing interface list can be saved to the specified path of the associated server during the application deployment stage.

[0038] S102. Determine a basic software version comparison result based on basic information of the first server and basic information of the second server, wherein the version comparison result includes at least one of the following: a basic software version comparison result of the first server and the second server belonging to the same system module, and a basic software version comparison result of the first server and the second server associated with the same application.

[0039] In an embodiment of the present invention, an association relationship may be established between a first server and a second server that belong to the same system module or the same application program, and then the basic software versions of the first server and the second server that have the association relationship may be compared to obtain a version comparison result. The version comparison result may be classified into completely consistent, partially consistent, inconsistent, not involved in production, and no corresponding production server according to the type of basic software.

[0040] Complete consistency means that the versions of the same basic software of the first server and the second server that are in an associated relationship are the same. Exemplarily, taking the operating system SUSE as an example, the versions of the first server SUSE and the second server SUSE are both only 12.3, which is completely consistent. Partial consistency means that the versions of the same basic software of the first server and the second server that are in an associated relationship are partially the same. Exemplarily, taking the operating system SUSE as an example, the version of the second server SUSE is 12.3, and the versions of the first server SUSE are 12.1, 12.3 and 12.5, which is partially consistent.

[0041] Inconsistency means that the versions of the same basic software of the first server and the second server that are associated with each other are completely different. For example, taking the operating system SUSE as an example, the version of SUSE on the second server is 12.3, and the version of SUSE on the first server is 12.1 and 12.5, which is inconsistent. Not involved in production means that the basic software installed on the second server is not installed on the first server. For example, the second server is installed with the SUSE operating system and the first server is installed with the CENTOS operating system, which means it is not involved in production. No corresponding server in production means that the first server does not have the same functions as the second server.

[0042] Specifically, an association relationship can be established between the first server and the second server belonging to the same system module according to the system module information of the first server contained in the basic information of the first server and the system module information of the second server contained in the basic information of the second server. Then, the basic software of the first server and the second server belonging to the same system module are compared to obtain a version comparison result, so as to improve the efficiency of version comparison and save time cost.

[0043] Specifically, an association relationship can be established between the first server and the second server associated with the same application, based on the external request processing interface list of the first server-associated application contained in the basic information of the first server and the external request processing interface list of the second server-associated application contained in the basic information of the second server. Then, the basic software of the first server and the second server associated with the same application are compared to obtain a version comparison result, so as to improve the accuracy of the version comparison and meet the actual needs of users.

[0044] As an option, determining the version comparison result of the basic software according to the basic information of the first server and the basic information of the second server includes the following steps B1-B4:

[0045] Step B1: determine the third server included in the first server and determine the fourth server included in the second server, the third server belongs to the same system module, the fourth server belongs to the same system module, and the system modules to which the third server and the fourth server belong are also the same.

[0046] Step B2: Compare the basic software version information of the third server and the fourth server.

[0047] Step B3: If the basic software versions of the third server and the fourth server are inconsistent, the fifth server included in the third server is determined according to the external request processing interface list, and the sixth server included in the fourth server is determined according to the external request processing interface list. The fifth server is associated with the same application, the sixth server is associated with the same application, and the applications associated with the fifth server and the sixth server are also the same.

[0048] Step B4: Compare the basic software version information of the fifth server and the sixth server.

[0049] Specifically, the third server included in the first server is determined according to the basic information of the first server and the basic information of the second server, and the fourth server included in the second server is determined, wherein the third server and the fourth server belong to the same system module and can establish an association relationship. Compare the basic software version information of the third server and the fourth server, and obtain the basic software version comparison result of the third server and the fourth server. If the basic software versions of the third server and the fourth server are consistent, it can be considered that the basic software versions of the servers associated with the application programs under the system modules to which the third server and the fourth server belong are also consistent. If the basic software versions of the third server and the fourth server are inconsistent, the fifth server included in the third server and the sixth server included in the fourth server are determined according to the external request processing interface list, wherein the fifth server and the sixth server are associated with the same application program and can further establish an association relationship. Furthermore, compare the basic software version information of the fifth server and the sixth server, and obtain the basic software version comparison result of the fifth server and the sixth server, so as to improve the efficiency and accuracy of the basic software version comparison at the same time, and better meet user needs.

[0050] S103: Formulate basic software adjustment rules for the first server and the second server according to the version comparison result, and adjust the basic software version of the first server or the second server according to the basic software adjustment rule so that the basic software versions of the first server and the second server are consistent.

[0051] In an embodiment of the present invention, the basic software adjustment rule may refer to a rule for adjusting the basic software version of the first server or the second server. The basic software version of the second server running in the development environment may be adjusted to be consistent with the basic software version of the first server running in the production environment and belonging to the same system module or the same application program associated with the second server.

[0052] Specifically, the basic software adjustment rules for the first server and the second server can be formulated according to the version comparison results of the basic software of the first server and the second server. Exemplarily, if the basic software versions are consistent, there is no need to adjust the basic software version; if the basic software versions are inconsistent, the lower version of the basic software can be upgraded to make the versions consistent. Furthermore, the basic software version of the first server or the second server can be adjusted according to the basic software adjustment rules so that the versions of the basic software of the first server and the second server belonging to the same system module or the same application are consistent. At the same time, users can provide feedback based on the basic software adjustment rules and actual needs to determine whether the basic software version needs to be adjusted.

[0053] As an option, formulating basic software adjustment rules for the first server and the second server according to the version comparison result includes the following steps C1-C2:

[0054] Step C1: Determine the dependency relationship between the basic software of the first server and the second server and the maintainable period of the basic software.

[0055] Step C2: formulating basic software adjustment rules based on the dependency relationship between basic software, the maintainable period of basic software and the software version comparison result.

[0056] In the embodiment of the present invention, the dependency relationship between basic software may refer to the version correspondence between basic software, for example, the version of database MySQL is 8.0.1 and the corresponding version of operating system SUSE is not less than 12.0. The maintainable period of basic software refers to the time when the basic software stops updating and maintenance.

[0057] Specifically, basic software adjustment rules for the first server and the second server can be formulated based on the dependency relationship between the basic software of the first server and the second server, the maintainable period of the basic software, and the software version comparison results, so as to reduce the risk of software incompatibility caused by upgrading a single basic software and realize the linkage upgrade between the basic software.

[0058] For example, if the maintainable period of the basic software of the first server is less than half a year, it is necessary to upgrade the basic software to a version with a maintainable period greater than one year, and determine whether there is dependent basic software that needs to be upgraded collaboratively based on the dependency relationship between the basic software. At the same time, it is also necessary to upgrade the basic software of the second server that belongs to the same system module or is associated with the same application as the first server to the same version. If there is no second server associated with the same system module or the same application as the first server, only the maintainable period of the basic software of the first server is checked, and whether to upgrade the basic software is determined based on the remaining time of the maintainable period.

[0059] The technical solution of the embodiment of the present invention determines the basic information of the first server and the basic information of the second server, the first server is a server running in a production environment for formally providing external services, and the second server is a server running in a research and development environment for development and testing, the basic information includes: the basic software version information of the server, the system module information to which the server belongs, and the external request processing interface list of the server-associated application program, the system module is a module included in the business system that formally provides external services, and the external request processing interface list records the interface of the associated server when the application is running, thereby realizing real-time collection of the basic software version information of the servers running in the production environment and the research and development environment, and providing actual data support for subsequent version comparison; the version comparison result of the basic software is determined according to the basic information of the first server and the basic information of the second server, and the version comparison result includes at least one of the following: belonging to the same The basic software version comparison results of the first server and the second server with the same system module and the basic software version comparison results of the first server and the second server associated with the same application program establish the association relationship between the servers running in the production environment and the R&D environment based on the system module information and the external request processing interface information of the application program, thereby improving the accuracy of the basic software version comparison results; basic software adjustment rules for the first server and the second server are formulated based on the version comparison results, and the basic software version of the first server or the second server is adjusted according to the basic software adjustment rules to make the basic software versions of the first server and the second server consistent, thereby formulating basic software adjustment rules based on the version comparison results, ensuring that the basic software versions of the servers running in the production environment and the R&D environment can be consistent, so that applications that run normally in the R&D environment can also run normally in the production environment.

[0060] Embodiment 2

[0061] Figure 2A flowchart of a basic software version maintenance method provided in the second embodiment of the present invention. The technical solution of this embodiment further optimizes the determination of the basic information of the first server and the basic information of the second server in the above embodiment. The solutions not described in detail in this embodiment can be found in the above embodiment. This embodiment can be combined with various optional solutions in one or more of the above embodiments. Figure 2 As shown, the method includes:

[0062] S201. Determine a first control center and a second control center. The first control center is a target server running in a production environment to which the first server belongs. The second control center is a target server running in a research and development environment to which the second server belongs. The first server, the second server and the target server are all deployed with intelligent agents. The intelligent agents are used to collect basic information or adjust the basic software version of the server. The target server collects basic information of the servers running in its environment during a low-load period through the configured intelligent agents.

[0063] In an embodiment of the present invention, all servers running in a production environment and a research and development environment may be deployed with intelligent agents. The intelligent agent deployed by the first server or the second server may be used to adjust the version of the basic software of the first server or the second server. Exemplarily, the intelligent agent may be an Agent. The target server may refer to any server in the environment, and the basic information of the servers running in the environment may be collected during a low-load period through the configured intelligent agent to reduce the impact of collecting basic information on the server.

[0064] Specifically, when deploying a server in a production environment or a development environment, an intelligent agent is pre-installed on the server. The intelligent agent is used to collect basic information about the server, receive and run basic software version adjustment scripts and patch packages. Then, a target server is selected in the production environment as the first control center, and a target server is selected in the development environment as the second control center.

[0065] S202. Collect basic information of the reference server through an intelligent agent configured by a reference control center. When the reference control center is a first control center, the reference server is a first server. When the reference control center is a second control center, the reference server is a second server.

[0066] In the embodiment of the present invention, the reference control center may refer to the first control center or the second control center, the reference server may refer to the first server or the second server, and when the reference control center is the first control center, the reference server can only be the first server, and when the reference control center is the second control center, the reference server can only be the second server. Accordingly, the basic information of the first server can be collected by the intelligent agent configured by the first control center, and the basic information of the second server can be collected by the intelligent agent configured by the second control center.

[0067] Specifically, when the basic software version information of the reference server is collected through the intelligent agent configured by the reference management and control center, the system module information of the reference server and the external request processing interface list of the reference server-related application need to be synchronized, summarized and saved to form the basic information of the reference server.

[0068] As an optional method, basic information of the reference server is collected through the intelligent agent configured in the reference control center, including the following steps D1-D2:

[0069] Step D1, the intelligent agent configured by the reference control center collects the basic software information of the reference server based on the data collection standard. The data collection standard includes: data interface, message format and collection method; the collection method is incremental mode or full mode.

[0070] Step D2, the intelligent agent configured by the reference control center performs data cleaning and data conversion on the basic software information of the reference server to obtain the basic software version information of the reference server. Data cleaning includes clearing incomplete, erroneous and duplicate data, and data conversion includes null value conversion, data standardization, data splitting, data verification, data replacement and data association processing.

[0071] Specifically, when the intelligent agent configured by the reference control center collects the basic software information of the reference server, it is necessary to specify the data interface and message format of the reference server feedback information so that the information of different basic software fed back by the server can be unified. At the same time, when collecting the basic software information of the reference server, the collection mode can be selected as incremental mode or full mode according to actual needs. The full mode means that the information of all basic software of the server needs to be collected, and the incremental mode means that the information of part of the basic software of the server is collected. After the intelligent agent configured by the reference control center collects the basic software information of the reference server, the basic software version information of the reference server can be obtained by data cleaning and data conversion of the basic software information. Among them, data cleaning includes clearing incomplete, erroneous and duplicate data, and data conversion includes null value conversion, data standardization, data splitting, data verification, data replacement and data association processing. Furthermore, the basic software version information of the reference server can be saved in the database of the reference control center, and if the collection mode is the full mode, the updated saving mode is used, and if the collection mode is the incremental mode, the merged saving mode is used.

[0072] For example, taking the operating system SUSE as an example, the basic information collected by the intelligent agent is "SUSE LinuxEnterprise Server 12 (x86_64) VERSION = 12PATCHLEVEL = 3", and the basic software version information obtained after data conversion is "SUSE|12.3". The basic software version information is converted into a code through a data dictionary so that the software type and version information can be stored in the database.

[0073] S203. Determine a basic software version comparison result based on the basic information of the first server and the basic information of the second server, wherein the version comparison result includes at least one of the following: a basic software version comparison result of the first server and the second server belonging to the same system module, and a basic software version comparison result of the first server and the second server associated with the same application.

[0074] S204: Formulate basic software adjustment rules for the first server and the second server according to the version comparison result, and adjust the basic software version of the first server or the second server according to the basic software adjustment rule so that the basic software versions of the first server and the second server are consistent.

[0075] As an option, adjusting the basic software version of the first server or the second server according to the basic software adjustment rule so that the basic software versions of the first server and the second server are consistent includes the following steps E1-E2:

[0076] Step E1. If the basic software adjustment rule includes a version adjustment of the basic software of the first server, the first control center needs to establish a grayscale environment. The version of the basic software of the server running in the grayscale environment is the same as the adjusted version of the basic software of the first server, and the grayscale environment is used to verify whether the adjusted version of the basic software of the first server will affect the application associated with the first server.

[0077] Step E2: After the grayscale environment verification is passed, the first control center adjusts the version of the basic software of the first server during the production change period.

[0078] Specifically, if the first server running in the production environment needs to change the basic software version, the first control center running in the production environment needs to establish a grayscale environment with the same version as the basic software of the first server after adjustment, to verify whether the version adjustment of the basic software of the first server will affect the associated applications. After the server in the grayscale environment has been running smoothly for a period of time, the first control center will provide relevant verification information, and after verification, the first control center will adjust the version of the basic software of the first server during the production change period, thereby reducing the risk caused by the adjustment of the basic software version of the server running in the production environment.

[0079] As an option, if the basic software adjustment rule includes the adjustment of the basic software version of the second server, the second control center can adjust the basic software version of the second server at night and remind the user to perform relevant operations for functional verification. If the verification affects the application associated with the second server, the second control center can restore the second server to the original basic software version.

[0080] The technical solution of the embodiment of the present invention determines a first control center and a second control center. The first control center is a target server running in a production environment to which the first server belongs, and the second control center is a target server running in a research and development environment to which the second server belongs. The first server, the second server and the target server are all deployed with intelligent agents. The intelligent agents are used to collect basic information or adjust the basic software version of the server. The target server collects basic information of the servers running in the environment during a low-load period through the configured intelligent agents; the basic information of the reference server is collected by the intelligent agent configured by the reference control center. When the reference control center is the first control center, the reference server is the first server, and when the reference control center is the second control center, the reference server is the second server. This realizes the collection and processing of basic information of the servers running in the environment based on the control center, improves the processing speed and data availability of the basic software version information of the server, and can realize automatic adjustment of the basic software version of the server through the control center; according to the first The basic information of the server and the basic information of the second server determine the version comparison result of the basic software, and the version comparison result includes at least one of the following: the basic software version comparison result of the first server and the second server belonging to the same system module, and the basic software version comparison result of the first server and the second server associated with the same application. It is realized that according to the system module information and the external request processing interface information of the application, the association relationship between the servers running in the production environment and the R&D environment is established, and the accuracy of the basic software version comparison result is improved; according to the version comparison result, the basic software adjustment rules for the first server and the second server are formulated, and the basic software version of the first server or the second server is adjusted according to the basic software adjustment rules so that the basic software versions of the first server and the second server are consistent, which realizes the formulation of basic software adjustment rules based on the version comparison result, ensures that the basic software versions of the servers running in the production environment and the R&D environment can be consistent, so that the application program running normally in the R&D environment can also run normally in the production environment.

[0081] Embodiment 3

[0082] Figure 3 This is a schematic diagram of the structure of a basic software version maintenance device provided in the third embodiment of the present invention. The embodiment of the present invention is applicable to the situation where the basic software version of the server running in the production environment and the R&D environment is consistent. The device can be implemented in the form of hardware and / or software, and can be configured in an electronic device that implements the basic software version maintenance method. Figure 3 As shown, the device comprises:

[0083] The first determination module 301 is used to determine the basic information of the first server and the basic information of the second server. The first server is a server running in a production environment for formally providing external services, and the second server is a server running in a research and development environment for development and testing. The basic information includes: basic software version information of the server, system module information to which the server belongs, and a list of external request processing interfaces of the application associated with the server. The system module is a module included in the business system that formally provides external services. The list of external request processing interfaces records the interfaces of the associated servers when the application is running;

[0084] A second determination module 302 is used to determine a basic software version comparison result based on the basic information of the first server and the basic information of the second server, wherein the version comparison result includes at least one of the following: a basic software version comparison result of the first server and the second server belonging to the same system module, and a basic software version comparison result of the first server and the second server associated with the same application program;

[0085] The version adjustment module 303 is used to formulate basic software adjustment rules for the first server and the second server according to the version comparison result, and adjust the basic software version of the first server or the second server according to the basic software adjustment rule to make the basic software versions of the first server and the second server consistent.

[0086] As an option, before determining the basic information of the first server and the basic information of the second server, the basic software version maintenance device is used to:

[0087] When the first server or the second server applies for use, the system module information to which the first server or the second server belongs is recorded;

[0088] When the application associated with the first server or the second server is compiled, the external request processing interface list of the application is recorded, and the external request processing interface list is stored in the server associated with the application.

[0089] As an option, determining the basic information of the first server and the basic information of the second server includes:

[0090] Determine a first control center and a second control center. The first control center is a target server running in a production environment to which the first server belongs, and the second control center is a target server running in a research and development environment to which the second server belongs. The first server, the second server, and the target server are all deployed with intelligent agents. The intelligent agents are used to collect basic information or adjust the basic software version of the server. The target server collects basic information of the servers running in its environment during a low-load period through the configured intelligent agents.

[0091] The basic information of the reference server is collected through the intelligent agent configured by the reference control center. When the reference control center is the first control center, the reference server is the first server; when the reference control center is the second control center, the reference server is the second server.

[0092] As an optional method, the intelligent agent configured in the reference control center collects basic information about the reference server, including:

[0093] The intelligent agent configured in the reference control center collects the basic software information of the reference server based on the data collection standards. The data collection standards include: data interface, message format and collection method; the collection method is incremental mode or full mode;

[0094] The intelligent agent configured in the reference management and control center performs data cleaning and data conversion on the basic software information of the reference server to obtain the basic software version information of the reference server. Data cleaning includes clearing incomplete, erroneous and duplicate data, and data conversion includes null value conversion, data standardization, data splitting, data verification, data replacement and data association processing.

[0095] As an option, determining the version comparison result of the basic software according to the basic information of the first server and the basic information of the second server includes:

[0096] Determine a third server included in the first server and determine a fourth server included in the second server, the third server belongs to the same system module, the fourth server belongs to the same system module, and the system modules to which the third server and the fourth server belong are also the same;

[0097] Compare basic software version information of the third server and the fourth server;

[0098] If the basic software versions of the third server and the fourth server are inconsistent, the fifth server included in the third server is determined according to the external request processing interface list, and the sixth server included in the fourth server is determined according to the external request processing interface list, the fifth server is associated with the same application, the sixth server is associated with the same application, and the application associated with the fifth server and the sixth server is also the same;

[0099] Compare the basic software version information of the fifth server and the sixth server.

[0100] As an option, a basic software adjustment rule for the first server and the second server is formulated according to the version comparison result, including:

[0101] Determine the dependency relationship between the basic software of the first server and the second server and the maintainable period of the basic software;

[0102] Formulate basic software adjustment rules based on the dependencies between basic software, the maintainable cycle of basic software and the results of software version comparison.

[0103] As an option, adjusting the basic software version of the first server or the second server according to the basic software adjustment rule so that the basic software versions of the first server and the second server are consistent includes:

[0104] If the basic software adjustment rule includes the version adjustment of the basic software of the first server, the first control center needs to establish a grayscale environment. The version of the basic software of the server running in the grayscale environment is the same as the adjusted version of the basic software of the first server, and the grayscale environment is used to verify whether the adjusted version of the basic software of the first server will have an impact on the application associated with the first server;

[0105] When the grayscale environment verification is passed, the first control center adjusts the version of the basic software of the first server during the production change period.

[0106] The technical solution of the embodiment of the present invention determines the basic information of the first server and the basic information of the second server, the first server is a server running in a production environment for formally providing external services, and the second server is a server running in a research and development environment for development and testing, the basic information includes: the basic software version information of the server, the system module information to which the server belongs, and the external request processing interface list of the server-associated application program, the system module is a module included in the business system that formally provides external services, and the external request processing interface list records the interface of the associated server when the application is running, thereby realizing real-time collection of the basic software version information of the servers running in the production environment and the research and development environment, and providing actual data support for subsequent version comparison; the version comparison result of the basic software is determined according to the basic information of the first server and the basic information of the second server, and the version comparison result includes at least one of the following: belonging to the same The basic software version comparison results of the first server and the second server with the same system module and the basic software version comparison results of the first server and the second server associated with the same application program establish the association relationship between the servers running in the production environment and the R&D environment based on the system module information and the external request processing interface information of the application program, thereby improving the accuracy of the basic software version comparison results; basic software adjustment rules for the first server and the second server are formulated based on the version comparison results, and the basic software version of the first server or the second server is adjusted according to the basic software adjustment rules to make the basic software versions of the first server and the second server consistent, thereby formulating basic software adjustment rules based on the version comparison results, ensuring that the basic software versions of the servers running in the production environment and the R&D environment can be consistent, so that applications that run normally in the R&D environment can also run normally in the production environment.

[0107] The basic software version maintenance device provided in the embodiment of the present invention can execute the basic software version maintenance method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.

[0108] Embodiment 4

[0109] Figure 4 A schematic diagram of the structure of an electronic device for implementing a maintenance method of a basic software version provided in Embodiment 4 of the present invention. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workbenches, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present invention described and / or required herein.

[0110] like Figure 4 As shown, the electronic device 10 includes at least one processor 11, and a memory connected to the at least one processor 11, such as a read-only memory (ROM) 12, a random access memory (RAM) 13, etc., wherein the memory stores a computer program that can be executed by at least one processor, and the processor 11 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 12 or the computer program loaded from the storage unit 18 to the random access memory (RAM) 13. In the RAM 13, various programs and data required for the operation of the electronic device 10 can also be stored. The processor 11, the ROM 12, and the RAM 13 are connected to each other through a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.

[0111] A number of components in the electronic device 10 are connected to the I / O interface 15, including: an input unit 16, such as a keyboard, a mouse, etc.; an output unit 17, such as various types of displays, speakers, etc.; a storage unit 18, such as a disk, an optical disk, etc.; and a communication unit 19, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 19 allows the electronic device 10 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.

[0112] The processor 11 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The processor 11 executes the various methods and processes described above, such as a maintenance method for a basic software version.

[0113] In some embodiments, the maintenance method of the basic software version can be implemented as a computer program, which is tangibly contained in a computer-readable storage medium, such as a storage unit 18. In some embodiments, part or all of the computer program can be loaded and / or installed on the electronic device 10 via the ROM 12 and / or the communication unit 19. When the computer program is loaded into the RAM 13 and executed by the processor 11, one or more steps of the maintenance method of the basic software version described above can be performed. Alternatively, in other embodiments, the processor 11 can be configured to execute the maintenance method of the basic software version by any other appropriate means (for example, by means of firmware).

[0114] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0115] Computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that when the computer program is executed by the processor, the functions / operations specified in the flow chart and / or block diagram are implemented. The computer program may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

[0116] In the context of the present invention, a computer-readable storage medium may be a tangible medium that may contain or store a computer program for use by or in combination with an instruction execution system, device or equipment. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices or equipment, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0117] To provide interaction with a user, the systems and techniques described herein may be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or trackball) through which the user can provide input to the electronic device. Other types of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, or tactile input).

[0118] The systems and techniques described herein may be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.

[0119] A computing system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The client and server relationship is generated by computer programs running on the corresponding computers and having a client-server relationship with each other. The server may be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and VPS services.

[0120] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in the present invention can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solution of the present invention can be achieved, and this document does not limit this.

[0121] The above specific implementations do not constitute a limitation on the protection scope of the present invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims

1. A method for maintaining a basic software version, characterized in that: The method comprises: Determine basic information of a first server and basic information of a second server, wherein the first server is a server running in a production environment for formally providing external services, and the second server is a server running in a research and development environment for development and testing, and the basic information includes: basic software version information of the server, system module information to which the server belongs, and a list of external request processing interfaces of server-associated applications, wherein the system modules are modules included in a business system that formally provides external services, and the list of external request processing interfaces records interfaces of associated servers when the application is running; Determine a version comparison result of the basic software according to the basic information of the first server and the basic information of the second server, wherein the version comparison result includes at least one of the following: a basic software version comparison result of the first server and the second server belonging to the same system module, and a basic software version comparison result of the first server and the second server associated with the same application program; A basic software adjustment rule for the first server and the second server is formulated according to the version comparison result, and a basic software version of the first server or the second server is adjusted according to the basic software adjustment rule so that the basic software versions of the first server and the second server are consistent.

2. The method according to claim 1, characterized in that: Before determining the basic information of the first server and the basic information of the second server, the method includes: When the first server or the second server applies for use, recording the system module information to which the first server or the second server belongs; When the application associated with the first server or the second server is compiled, the external request processing interface list of the application is recorded, and the external request processing interface list is stored in the server associated with the application.

3. The method according to claim 1, characterized in that: Determining basic information of the first server and basic information of the second server includes: Determine a first control center and a second control center, wherein the first control center is a target server running in a production environment to which the first server belongs, and the second control center is a target server running in a research and development environment to which the second server belongs, and the first server, the second server, and the target server are all deployed with intelligent agents, and the intelligent agents are used to collect the basic information or adjust the basic software version of the server, and the target server collects basic information of the servers running in the environment during a low-load period through the configured intelligent agents; The basic information of the reference server is collected by the intelligent agent configured by the reference control center. When the reference control center is the first control center, the reference server is the first server; when the reference control center is the second control center, the reference server is the second server.

4. The method according to claim 3, characterized in that The basic information of the reference server is collected by the intelligent agent configured by the reference control center, including: The intelligent agent configured by the reference control center collects basic software information of the reference server based on data collection standards, and the data collection standards include: data interface, message format and collection method; the collection method is incremental mode or full mode; The intelligent agent configured in the reference management and control center performs data cleaning and data conversion on the basic software information of the reference server to obtain the basic software version information of the reference server, wherein the data cleaning includes clearing incomplete, erroneous and duplicate data, and the data conversion includes null value conversion, data standardization, data splitting, data verification, data replacement and data association processing.

5. The method according to claim 1, characterized in that Determining a version comparison result of the basic software according to the basic information of the first server and the basic information of the second server includes: Determine a third server included in the first server and determine a fourth server included in the second server, wherein the third server belongs to the same system module, the fourth server belongs to the same system module, and the system modules to which the third server and the fourth server belong are also the same; Comparing basic software version information of the third server and the fourth server; If the basic software versions of the third server and the fourth server are inconsistent, the fifth server included in the third server is determined according to the external request processing interface list, and the sixth server included in the fourth server is determined according to the external request processing interface list, the fifth server is associated with the same application, the sixth server is associated with the same application, and the fifth server and the sixth server are also associated with the same application; Compare the basic software version information of the fifth server and the sixth server.

6. The method according to claim 1, characterized in that Formulating basic software adjustment rules for the first server and the second server according to the version comparison result includes: Determine the dependency relationship between the basic software of the first server and the second server and the maintainable period of the basic software; The basic software adjustment rules are formulated based on the dependency relationship between the basic software, the maintainable period of the basic software and the software version comparison result.

7. The method according to claim 3, characterized in that Adjusting the basic software version of the first server or the second server according to the basic software adjustment rule so that the basic software versions of the first server and the second server are consistent includes: If the basic software adjustment rule includes the version adjustment of the basic software of the first server, the first control center needs to establish a grayscale environment, the version of the basic software of the server running in the grayscale environment is the same as the adjusted version of the basic software of the first server, and the grayscale environment is used to verify whether the adjusted version of the basic software of the first server will have an impact on the application associated with the first server; When the grayscale environment verification is passed, the first control center adjusts the version of the basic software of the first server during the production change period.

8. A basic software version maintenance device, characterized in that: The device comprises: A first determination module is used to determine basic information of a first server and basic information of a second server, wherein the first server is a server running in a production environment for formally providing external services, and the second server is a server running in a research and development environment for development and testing, and the basic information includes: basic software version information of the server, system module information to which the server belongs, and a list of external request processing interfaces of server-associated applications, wherein the system module is a module included in a business system that formally provides external services, and the list of external request processing interfaces records interfaces of associated servers when the application is running; A second determination module is used to determine a version comparison result of the basic software according to the basic information of the first server and the basic information of the second server, wherein the version comparison result includes at least one of the following: a basic software version comparison result of the first server and the second server belonging to the same system module, and a basic software version comparison result of the first server and the second server associated with the same application program; A version adjustment module is used to formulate basic software adjustment rules for the first server and the second server according to the version comparison result, and adjust the basic software version of the first server or the second server according to the basic software adjustment rule so that the basic software versions of the first server and the second server are consistent.

9. An electronic device, characterized in that: The electronic device comprises: at least one processor; and a memory communicatively connected to the at least one processor; wherein, The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can perform the basic software version maintenance method according to any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the basic software version maintenance method according to any one of claims 1 to 7 when executed.

Citation Information

Cited By

  • Analog machine update synchronization method and device, electronic equipment and storage medium

    CN120196349A

  • Simulation Machine Update Synchronization Method, Device, Electronic Device and Storage Medium

    CN120196349B