CN111049909B - Software release method - Google Patents
Software release method Download PDFInfo
- Publication number
- CN111049909B CN111049909B CN201911297939.8A CN201911297939A CN111049909B CN 111049909 B CN111049909 B CN 111049909B CN 201911297939 A CN201911297939 A CN 201911297939A CN 111049909 B CN111049909 B CN 111049909B
- Authority
- CN
- China
- Prior art keywords
- client
- release
- file
- server
- software
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 230000005540 biological transmission Effects 0.000 claims abstract description 6
- 230000008569 process Effects 0.000 claims description 13
- 230000004048 modification Effects 0.000 claims description 7
- 238000012986 modification Methods 0.000 claims description 7
- 230000003993 interaction Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 241000700605 Viruses Species 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 208000015181 infectious disease Diseases 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/128—Restricting unauthorised execution of programs involving web programs, i.e. using technology especially used in internet, generally interacting with a web browser, e.g. hypertext markup language [HTML], applets, java
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/51—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0442—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5683—Storage of data provided by user terminals, i.e. reverse caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
- H04L69/162—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Information Transfer Between Computers (AREA)
Abstract
The invention relates to the technical field of automatic software installation, deployment and release, in particular to an automatic software release method. The method comprises the following steps: the client initiates a release connection request to the server; the server receives the connection request of the client and performs security authentication; the security authentication passes, and the client initiates a request for acquiring the version information of the server-side file; the server receives a client request instruction and transmits all file version information in the target folder to the client; the client receives version information transmitted by the server and compares file information; and updating the published file information at the server according to the comparison result. By adopting the invention, the safety problem of file information transmission is solved, and the automatic backup of software release can be solved.
Description
Technical Field
The invention relates to a method for automatically installing, deploying and publishing software, belonging to the technical field of automatic upgrading of software versions.
Background
The software installation and deployment of the software company with smaller scale is manually released, the software is developed to a certain scale, and the timeliness and the correctness of the system release update cannot be met by pure manual operation. Software installation and deployment gradually goes to automation. The manual labor mode is replaced by automatic tools, and the working efficiency is improved.
At present, relatively automated release software generally opens a network file sharing 445 port, determines which files change in a file comparison manner, and then performs file synchronization. The requirements for the network ports are quite specific and the 445 ports must be opened. 445 port general enterprises do not suggest to open, and currently popular lux viruses all perform file infection in a local area network through 445 ports, and worm viruses can be transmitted through the 445 ports of network file sharing. Introducing a risk to corporate network security.
Disclosure of Invention
The invention aims to provide a software release method, which realizes the safety management of the intelligent release process of software in a network environment through Windows Socket communication technology and RSA encryption technology, not only solves the transmission problem, but also can solve the automatic backup of the software release. .
In order to achieve the above object, the present invention provides a software release method, which includes the steps of:
(1) The user clicks and releases, and the client initiates a release connection request to the server;
(2) The server receives the connection request of the client and performs security authentication;
(3) The security authentication passes, and the client initiates a request for acquiring the version information of the server-side file;
(4) The server receives a client request instruction and transmits all file version information in the target folder to the client;
(5) The client receives version information transmitted by the server, compares the file information in the source folder with the file information in the target file one by one according to a preset rule, and decides whether to update the release file version according to the comparison result;
(6) If the update release is needed, the client initiates a file package transmission request;
(7) The server receives a file release package transmitted by the client and releases the content of the release package to a target folder;
(8) The server feeds back the current release result to the client, and the client submits the current release record to the unified release platform.
The invention is further perfected that before the user clicks and issues, the following operations are performed: the user logs in the client, the client displays all online server lists, and the user selects a target server of the secondary release software in the client; and configuring software file information in a source folder and a target folder of the software release, and storing the software file information.
The invention is further perfected that the preset rule of file information comparison can adopt any one of the following two modes:
comparing the last modification dates of the files in the first mode, and if the last modification dates of the file information of the server side and the file information of the client side are different, considering that the files are different, and needing to be updated and released;
and (3) comparing the file contents in the second mode, and calculating the HASH value of the file contents to perform comparison. If the HASH values of the client side file and the server side file are different, the files are considered to be different, and update release is needed.
The invention further perfects that the file information comparison process is cached in the client.
The invention further perfects that the client side and the server side adopt a Socket mode to carry out information interaction.
The invention is further perfected that the security authentication account number and the password are transmitted through RAS asymmetric encryption.
According to the invention, the server program receives the instruction of the client, and the server program automatically executes the operations of file version comparison, file backup and file release, so that a manager does not need to log in a remote server, remote installation and deployment are realized, and the high efficiency and safety of problem processing are improved. Each release process is automatically recorded to the platform, so that the release process can be tracked, and the manageability is improved. And the safety of the software release process is improved through the encryption of the communication between the client and the server.
Drawings
The above and other features, properties and advantages of the present invention will become more apparent from the following description of embodiments taken in conjunction with the accompanying drawings in which like reference characters designate like features throughout the drawings, and in which:
fig. 1 is a flowchart of a method for automatically publishing software according to an embodiment of the present invention.
Detailed Description
The present invention will be described in further detail with reference to the drawings and examples, in order to make the objects, technical solutions and advantages of the present invention more apparent. It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the scope of the invention.
The invention aims to overcome the defects in the prior art and provides an automatic release system and method for application software, which not only can realize the safety management of the intelligent release process of the software, but also can solve the automatic backup of the release of the software.
According to the scheme provided by the invention, the software release method comprises the following steps:
(1) The user clicks and releases, and the client initiates a release connection request to the server;
(2) The server receives the connection request of the client and performs security authentication;
(3) The security authentication passes, and the client initiates a request for acquiring the version information of the server-side file;
(4) After the server receives the instruction of the client to request to acquire the version information of the server file, the server traverses the target
Returning version information of the files to all files in the folder, and transmitting the version information in the target folder to the client;
(5) After receiving the version information transmitted by the server, the client compares the file information in the source folder with the file information in the target file one by one according to a preset rule, and decides whether to update the release file version according to the comparison result;
(6) If the update release is needed, the client performs zip compression on the release package, reduces network traffic through compression, and initiates a file transfer request;
(7) The server receives the release package, performs zip decompression processing, performs unified backup processing on files of the target folder according to the file list in the release package, and releases the content of the release package to the target folder after the backup is completed;
(8) The server feeds back the current release result to the client, and the client submits the current release record to the unified release platform and manages all release records through the unified release platform.
(9) The client ends the publication.
Further, the security authentication account number and the password are transmitted through RAS asymmetric encryption, so that the transmission content is prevented from being revealed;
further, before the user clicks to issue, the following operations are further performed: the user logs in the client, the client displays all online server lists, and the user selects a target server of the secondary release software in the client; configuring software file information in a source folder and a target folder of software release, and storing the software file information; and then performing software release.
Further, the file information comparison mode adopts two modes:
comparing the last modification dates of the files in the first mode, and if the last modification dates of the server-side file and the client-side file are different, considering that the files are different, and needing to be updated and released;
and (3) comparing the file contents in the second mode, and calculating the HASH value of the file contents to perform comparison. If it is
And if the HASH values of the client side file and the server side file are different, the files are considered to be different, and update and release are needed.
Furthermore, in order to speed up the comparison process, the comparison process is designed to be cached in the client, and the file version information of the server can be directly obtained from the local cache in the next comparison process, so that the situation that the version information is obtained from a remote server every time is avoided.
Further, a Socket mode is adopted between the client and the server for information interaction.
The target server is provided with server software, the server software is used for receiving the release files of the client, the client is provided with client software, and the client software is used for releasing the files on the client local computer to the remote server.
According to the invention, the server program receives the instruction of the client, and the server program automatically executes the operations of file version comparison, file backup and file release, so that a manager does not need to log in a remote server, remote installation and deployment are realized, and the high efficiency and safety of problem processing are improved. Each release process is automatically recorded to the platform, so that the release process can be tracked, and the manageability is improved. And the safety of the software release process is improved through the encryption of the communication between the client and the server.
The embodiments described above are intended to provide those skilled in the art with a full range of modifications and variations to the embodiments described above without departing from the inventive concept thereof, and therefore the scope of the invention is not limited by the embodiments described above, but is to be accorded the broadest scope consistent with the innovative features recited in the claims.
Claims (5)
1. A method of software release, the method comprising the steps of:
(1) The user clicks and releases, and the client initiates a release connection request to the server;
(2) The server receives the connection request of the client and performs security authentication;
(3) The security authentication passes, and the client initiates a request for acquiring the version information of the server-side file;
(4) The server receives a client request instruction and transmits all file version information in the target folder to the client;
(5) The client receives version information transmitted by the server, compares file information in a source folder with file information in a target file one by one according to a preset rule, and decides whether to update the release file version according to a comparison result, wherein the preset rule comprises two modes:
comparing the last modification dates of the files in the first mode, and if the last modification dates of the file information of the server side and the file information of the client side are different, considering that the files are different, and needing to be updated and released;
the second mode is to compare the file contents, the HASH values of the file contents are calculated to compare, if the HASH values of the client side file and the server side file are different, the files are considered to be different, and update release is needed;
(6) If the update release is needed, the client initiates a file package transmission request;
(7) The server receives a file release package transmitted by the client and releases the content of the release package to a target folder;
(8) The server feeds back the current release result to the client, and the client submits the current release record to the unified release platform.
2. The software release method according to claim 1, wherein before the user clicks release, the following operations are further performed: the user logs in the client, the client displays all online server lists, and the user selects a target server of the secondary release software in the client; and configuring software file information in a source folder and a target folder of the software release, and storing the software file information.
3. The software release method according to claim 1, wherein the file information comparison process is cached at the client.
4. The software release method according to claim 1, wherein information interaction is performed between the client and the server in a Socket manner.
5. The software release method according to claim 1, wherein the server receives a connection request of the client and performs security authentication, including: and carrying out RAS asymmetric encryption transmission on the security authentication account number and the password which are needed for carrying out security authentication.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911297939.8A CN111049909B (en) | 2019-12-17 | 2019-12-17 | Software release method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911297939.8A CN111049909B (en) | 2019-12-17 | 2019-12-17 | Software release method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111049909A CN111049909A (en) | 2020-04-21 |
CN111049909B true CN111049909B (en) | 2024-04-02 |
Family
ID=70236942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911297939.8A Active CN111049909B (en) | 2019-12-17 | 2019-12-17 | Software release method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111049909B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113946359A (en) * | 2021-11-02 | 2022-01-18 | 中国银行股份有限公司 | Version updating method, device and system |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7076496B1 (en) * | 2001-02-23 | 2006-07-11 | 3Com Corporation | Method and system for server based software product release version tracking |
CN101944170A (en) * | 2010-09-20 | 2011-01-12 | 中兴通讯股份有限公司 | Method, system and device for issuing software version |
CN108874409A (en) * | 2017-05-09 | 2018-11-23 | 腾讯科技(深圳)有限公司 | A kind of information updating method, device, server and system |
CN109040069A (en) * | 2018-08-06 | 2018-12-18 | 江苏易安联网络技术有限公司 | A kind of dissemination method, delivery system and the access method of cloud application program |
CN109617694A (en) * | 2018-12-21 | 2019-04-12 | 网易(杭州)网络有限公司 | A kind of application issued method and apparatus |
CN110336695A (en) * | 2019-06-21 | 2019-10-15 | 威富通科技有限公司 | A kind of method and server of deployment and maintenance application |
-
2019
- 2019-12-17 CN CN201911297939.8A patent/CN111049909B/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7076496B1 (en) * | 2001-02-23 | 2006-07-11 | 3Com Corporation | Method and system for server based software product release version tracking |
CN101944170A (en) * | 2010-09-20 | 2011-01-12 | 中兴通讯股份有限公司 | Method, system and device for issuing software version |
CN108874409A (en) * | 2017-05-09 | 2018-11-23 | 腾讯科技(深圳)有限公司 | A kind of information updating method, device, server and system |
CN109040069A (en) * | 2018-08-06 | 2018-12-18 | 江苏易安联网络技术有限公司 | A kind of dissemination method, delivery system and the access method of cloud application program |
CN109617694A (en) * | 2018-12-21 | 2019-04-12 | 网易(杭州)网络有限公司 | A kind of application issued method and apparatus |
CN110336695A (en) * | 2019-06-21 | 2019-10-15 | 威富通科技有限公司 | A kind of method and server of deployment and maintenance application |
Also Published As
Publication number | Publication date |
---|---|
CN111049909A (en) | 2020-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7021324B2 (en) | Methods and equipment for delivering loadable aircraft software parts (LSAP) | |
US11216445B2 (en) | Monitoring alignment of computer file states across a group of users | |
CN107924411B (en) | Method and system for recovering UI state in transaction system | |
US10776159B2 (en) | Distributed storage-based filed delivery system and method using calculated dependencies between tasks to ensure consistancy of files | |
CN102369713B (en) | Automatic removing method and device of system configuration items | |
US9311326B2 (en) | Virtual file system for automated data replication and review | |
CN102437938B (en) | Large-scale network monitoring oriented virtual deployment system and method | |
US8549327B2 (en) | Background service process for local collection of data in an electronic discovery system | |
US9158785B1 (en) | Managing and synchronizing content between a document sharing platform and an enterprise social platform | |
US20040162900A1 (en) | Distributed content management system | |
US20140359282A1 (en) | Systems and methods for enabling searchable encryption | |
US10140121B2 (en) | Sending a command with client information to allow any remote server to communicate directly with client | |
US10541961B2 (en) | System and method for automating actions in distributed computing | |
US20140181940A1 (en) | File management method and system and storage mediums | |
CN106708859B (en) | Resource access behavior auditing method and device | |
US20180316747A1 (en) | Managing content downloads | |
CN110912754A (en) | Method and management system for batch operation and maintenance remote hosts | |
CN111049909B (en) | Software release method | |
CN110958293B (en) | File transmission method, system, server and storage medium based on cloud server | |
CN112468511A (en) | File transmission method and device | |
US20100293148A1 (en) | Network attached storage backup | |
CN105607606A (en) | Data acquisition device and data acquisition method based on double-mainboard framework | |
US20150365439A1 (en) | Synchronization of security-related data | |
US11570183B2 (en) | Tenant grouping for secure transport of content | |
US11709801B2 (en) | File-based sharing using content distributions network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |