Software deployment method and system based on double-layer containerization and dynamic decoupling
By adopting a software deployment method based on two-layer containerization and dynamic decoupling, the problem of full update of model training applications in the existing technology is solved, and the automatic update and permission separation of the main program and dynamic script resources are realized, thereby improving the stability and security of the system.
Patent Information
- Application Number
- CN202511161745.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-08-19
- Publication Date
- 2025-11-04
- Estimated Expiration
- 2045-08-19
AI Technical Summary
In existing technologies, the Ubuntu desktop deployment scheme for model training applications couples the business application with the model training application, which means that updating the business application or the model training application requires a full update of the entire installation package, wasting bandwidth and repeatedly installing the framework content.
A software deployment method based on two-layer containerization and dynamic decoupling is adopted. The main program executable file is generated by Electron compilation, packaged into a DEB installation package, and a compressed package of dynamic script resources is nested within it to achieve two-layer containerization of the main program and dynamic script resources. The sandbox isolation mechanism is disabled for the main program, while the sandbox isolation mechanism is enabled for the dynamic script resources. A heartbeat adaptive liveness detection mechanism is used to detect the process startup of the dynamic script resources.
It achieves automatic updates and permission separation for main program and dynamic script resources, avoiding bandwidth waste and system crash risks caused by full updates, and ensuring system stability and security.
Smart Images

Figure CN120653270B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of computers, in particular to a software deployment method and system based on double-layer containerization and dynamic decoupling. BACKGROUND
[0002] In order to effectively utilize resources and cope with increasingly stringent data privacy regulations, model training services are gradually migrating from the cloud to local edge devices. The current Ubuntu desktop deployment of model training applications generally uses a single packaging scheme, which couples business programs and model training programs together, i.e., sharing all resources and permissions.
[0003] However, this scheme has the following defects: when only the business program or the model training program needs to be updated, the entire installation package needs to be updated, which wastes bandwidth and repeatedly installs framework content. SUMMARY
[0004] To solve the above technical problems, the present application provides a software deployment method and system based on double-layer containerization and dynamic decoupling.
[0005] According to a first aspect of the present application, a software deployment method based on double-layer containerization and dynamic decoupling is provided, comprising:
[0006] Compiling a main program executable file through Electron, and packaging the executable file into a DEB installation package based on third-party libraries of Electron in an Ubuntu system;
[0007] Obtaining dynamic script resources and compressing them into a compressed package, and embedding the compressed package into the DEB installation package;
[0008] Sending a first Ubuntu system command to install the DEB installation package, completing the main program deployment;
[0009] Sending a second Ubuntu system command to start the main program, and installing the dynamic script resources to a specified directory by decompressing the compressed package;
[0010] The main program sends a third Ubuntu system command to start the dynamic script resources, and establishes a websocket connection after successful startup.
[0011] Preferably, the method further comprises:
[0012] Creating a decompression script in the DEB installation package;
[0013] The dynamic script resources are installed to a specified directory by decompressing the compressed package, comprising:
[0014] Decompress and install the dynamic script resource in the compressed package to the specified directory by executing the decompression script.
[0015] Preferably, the method further comprises:
[0016] Creating a verification script in the DEB installation package;
[0017] Detecting whether the dynamic script resource is successfully installed to the specified directory by executing the verification script, and if the detection fails, executing the decompression script.
[0018] Preferably, the method further comprises:
[0019] Obtaining the dynamic script resource and creating a metadata file, generating a SHA256 digest of the dynamic script resource and saving it to the metadata file, and compressing the dynamic script resource and the metadata file into a compressed package;
[0020] The method of detecting whether the dynamic script resource is successfully installed to the specified directory by executing the verification script, and if the detection fails, executing the decompression script, comprises the following steps:
[0021] Step a): detecting whether the metadata file exists in the specified directory, if not, the detection fails, and the decompression script is executed; if yes, step b) is executed;
[0022] Step b): generating a SHA256 digest of the dynamic script resource in the specified directory again, and comparing it with the SHA256 digest in the metadata file, if the comparison is consistent, the detection passes; if the comparison is inconsistent, the detection fails, and the installation is terminated.
[0023] Preferably, the method further comprises:
[0024] Configuring the parameter of the dynamic script resource installation directory in the development configuration file;
[0025] Packing the compressed package into the DEB installation package in the form of an extended resource according to the development configuration file.
[0026] Preferably, the second Ubuntu system command carries a parameter to close the sandbox isolation mechanism of the main program, and the main program closes the sandbox isolation mechanism after starting;
[0027] The decompression script further comprises, before decompressing the dynamic script resource:
[0028] Creating a sandbox to isolate the specified directory;
[0029] The dynamic script resource is deployed with the ACL anti-tampering strategy.
[0030] Preferably, the main program sends a third Ubuntu system command to start the dynamic script resource, and establishes a websocket connection after successful startup, including:
[0031] The main program sends an http request to the dynamic script resource according to a preset heartbeat interval sequence to detect whether the dynamic script resource is started;
[0032] In response to a successful request, the main program establishes a websocket connection with the dynamic script resource.
[0033] Preferably, the preset heartbeat interval sequence is generated by using an exponential backoff algorithm.
[0034] Preferably, the dynamic script resource further includes websocket connections with a plurality of programs other than the main program, and the generation process of the preset heartbeat interval sequence includes:
[0035] Generating a first heartbeat interval sequence based on an exponential backoff algorithm;
[0036] Adding a random number to the first heartbeat interval sequence to obtain the preset heartbeat interval sequence.
[0037] According to a second aspect of the present application, a software deployment system based on double-layer containerization and dynamic decoupling is provided, including:
[0038] A file packaging module configured to generate a main program executable file through Electron compilation, and package the executable file into a DEB installation package based on third-party libraries of Electron under an Ubuntu system;
[0039] A double-layer container nesting module configured to obtain a dynamic script resource and compress it into a compressed package, and nest and package the compressed package into the DEB installation package;
[0040] A main program installation module configured to send a first Ubuntu system command to install the DEB installation package, and complete the main program deployment;
[0041] A script installation module configured to send a second Ubuntu system command to start the main program, and install the dynamic script resource to a specified directory by decompressing the compressed package;
[0042] A communication module configured for the main program to send a third Ubuntu system command to start the dynamic script resource, and establish a websocket connection after successful startup.
[0043] According to a third aspect of the present application, an electronic device is provided, comprising: one or more processors; a memory for storing one or more programs, which when executed by the one or more processors, cause the electronic device to implement the method for software deployment based on double-layer containerization and dynamic decoupling according to any of the embodiments of the first aspect.
[0044] According to a fourth aspect of the present application, a computer readable storage medium is provided, which stores a computer program, which when executed by a processor, implements the method for software deployment based on double-layer containerization and dynamic decoupling according to any of the embodiments of the first aspect.
[0045] The present application provides a method and system for software deployment based on double-layer containerization and dynamic decoupling. By adopting the nested packaging mode of DEB installation package + compressed package, double-layer containerization is achieved. The main program can be automatically updated based on the third-party library configuration of Electron, while the dynamic script resource can be directly updated by replacing the file in the specified directory. When the main program or the dynamic script resource is updated, the entire program file does not need to be updated, avoiding the duplication of bandwidth and repeated installation of framework content. The main program closes the sandbox isolation mechanism, while the dynamic script resource opens the sandbox isolation mechanism, realizing permission separation and deploying ACL tamper-proofing and verification strategies for the dynamic script resource to avoid tampering by attackers. The main program adopts a heartbeat adaptive alive detection mechanism to detect the process startup of the dynamic script resource, avoiding the occupation of critical computing resources and causing program collapse and system crash. BRIEF DESCRIPTION OF DRAWINGS
[0046] The accompanying drawings are included to provide a further understanding of embodiments and are incorporated in and constitute a part of this specification. The drawings illustrate embodiments and, together with the description, serve to explain the principles of the application. Other embodiments and many of the intended advantages of the present application will be readily appreciated as the same becomes better understood by reference to the following detailed description. The elements of the drawings are not necessarily to scale relative to each other. Like reference numerals designate corresponding similar parts.
[0047] Figure 1 is a flowchart of a method for software deployment based on double-layer containerization and dynamic decoupling according to an embodiment of the present application;
[0048] Figure 2 is a flowchart of verification and decompression installation of dynamic script resource according to an embodiment of the present application;
[0049] Figure 3 is a schematic diagram of a system for software deployment based on double-layer containerization and dynamic decoupling according to an embodiment of the present application;
[0050] Figure 4is a schematic diagram of an electronic device according to an embodiment of the present application. DETAILED DESCRIPTION
[0051] The features and exemplary embodiments of the various aspects of the present application will be described in detail below with reference to the drawings. The following detailed description is merely intended to teach a person skilled in the art how to make and use the best mode of the present application and is not intended to limit the scope of the application. The present application can be practiced with some of or all of the specific details described below. The following description is provided with reference to the accompanying drawings.
[0052] It should be noted that the terms such as first and second, etc., are merely used to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. In addition, the terms "include", "contain" or any other variants thereof are intended to cover non-exclusive inclusion, so that the process, method, article or device including a series of elements not only includes those elements, but also includes other elements not explicitly listed or inherent to such process, method, article or device. Without more limitations, the elements defined by the statement "include" do not exclude the presence of other identical elements in the process, method, article or device including the elements.
[0053] The present application proposes a software deployment method based on double-layer containerization and dynamic decoupling. Figure 1 A flow chart of a software deployment method based on double-layer containerization and dynamic decoupling according to an embodiment of the present application is shown, as shown in Figure 1 The method includes the above steps:
[0054] Step S101: Generate the main program executable file by compiling with Electron, and package the executable file into a DEB installation package based on the third-party library of Electron under the Ubuntu system.
[0055] In one specific embodiment, the main program executable file is generated by compiling with the Electron framework, and then the main program is packaged into a DEB installation package executable for the Ubuntu system based on the third-party library of Electron under the Ubuntu system. The DEB installation package serves as the outer container.
[0056] In this embodiment, the third-party library of Electron used is electron-forge / maker-deb.
[0057] Step S102: Obtain dynamic script resources and compress them into a compressed package, then nest the compressed package into the DEB installation package.
[0058] In one specific embodiment, the dynamic script resource is an AI model training program compiled using Python. While acquiring the dynamic script resource, a metadata file named manifest.json is created. The SHA256 hash of the dynamic script resource is generated using the SHA256 encryption algorithm and saved as its digital signature in the manifest.json file. The dynamic script resource and the metadata file are then compressed together into a ZIP archive. Next, the parameter packagerConfig.extraResource is configured in the development configuration file forge.config.ts to specify the directory where the dynamic script resource will be installed. Based on the development configuration file, the entire ZIP archive is packaged as an extended resource into the DEB installer. The ZIP archive serves as the inner container, thus forming a two-layer containerized nested packaging pattern between the main program and the dynamic script resource.
[0059] In one specific embodiment, a verification script `postinst` and a decompression script `preinst` are created within the DEB installation package. The verification script `postinst` verifies the digital signature of the dynamic script resources to check whether they have been successfully installed to the specified directory. The decompression script `preinst` decompresses the ZIP archive according to the development configuration file `forge.config.ts`, thereby installing the dynamic script resources to the specified directory.
[0060] In a specific embodiment, in order to achieve dynamic decoupling and isolation between the main program and dynamic script resources during installation, the core content of the decompression script preinst includes:
[0061] 1. Create a sandbox to isolate the specified directory where dynamic script resources are installed, thereby achieving permission separation and preventing script intrusion;
[0062] 2. Deploy ACL (Access Control List) anti-tampering policies for dynamic script resources to explicitly prohibit specific users / processes from writing to specified directories;
[0063] 3. Securely decompress dynamic script resources.
[0064] Step S103: Install the DEB installation package using the first Ubuntu system command to complete the main program deployment.
[0065] In one specific embodiment, the first Ubuntu system command sudo dpkg-i xxx.deb is executed in the terminal of the Ubuntu system to install the DEB installation package.
[0066] Step S104: Start the main program and install the dynamic script resource into the specified directory by decompressing the compressed package.
[0067] In one specific embodiment, the main program is started by sending the second Ubuntu system command xxx --no-sandbox, and the second Ubuntu system command xxx --no-sandbox carries the parameter no-sandbox for closing the sandbox isolation mechanism of the main program, and the main program is closed after being started.
[0068] In one specific embodiment, the dynamic script resource is installed into the specified directory by decompressing the compressed package, including:
[0069] The installation of the dynamic script resource into the specified directory is detected by executing the verification script, if the detection is passed, the next step is executed normally, if the detection is not passed, the decompression script is executed.
[0070] The dynamic script resource in the compressed package is installed into the specified directory by executing the decompression script.
[0071] The detection of the verification script specifically includes:
[0072] Step a): whether the metadata file exists in the specified directory is detected, if not, the detection is not passed, and the decompression script is executed, if yes, step b) is executed.
[0073] Step b): the SHA256 digest of the dynamic script resource in the specified directory is generated again, and is compared with the SHA256 digest in the metadata file, if the comparison is consistent, the detection is passed, if the comparison is not consistent, the detection is not passed, and the installation is terminated.
[0074] Figure 2 A verification and decompression installation flowchart of the dynamic script resource according to one specific embodiment of the application is shown, as shown in Figure 2 The complete flow of the verification and decompression installation of the dynamic script resource is as follows:
[0075] 1) Start the main program;
[0076] 2) Execute the verification script;
[0077] 2-1) whether the metadata file exists in the specified directory is detected, if yes, step 2-2) is executed, if not, step 3) is executed.
[0078] 2-2) Again generate SHA256 digest of dynamic script resource under the specified directory, and compare with the SHA256 digest in the metadata file, if consistent, execute step 2-3); if inconsistent, execute step 2-4);
[0079] 2-3) The detection is passed, and the next step is executed normally;
[0080] 2-4) The detection is failed, and the installation is terminated.
[0081] 3) Execute the decompression script;
[0082] 3-1) Create a sandbox isolated dynamic script resource installed in the specified directory;
[0083] 3-2) Deploy the ACL tamper-proofing policy for the dynamic script resource;
[0084] 3-3) Safely decompress the dynamic script resource, and continue to execute step 2).
[0085] Through the above method, the main program closes the sandbox isolation mechanism, and the dynamic script resource starts the sandbox isolation mechanism, realizes the separation of permissions, and prevents script intrusion. Further, the dynamic script resource is deployed with a verification policy and an ACL tamper-proofing policy, which can avoid tampering of the dynamic script resource.
[0086] Step S105: The main program sends a third Ubuntu system command to start the dynamic script resource, and establishes a websocket connection after successful startup.
[0087] Specifically, after the dynamic script resource decompression installation verification is completed, the dynamic script resource is started by the main program, and the dynamic script resource is started with reduced authority. However, after the third Ubuntu system command is sent, the time when the dynamic script resource is actually started is uncertain, and there is a delay, so the websocket connection needs to be established after the dynamic script resource is successfully started.
[0088] Therefore, in one specific embodiment, the main program sends an http request to the dynamic script resource according to a preset heartbeat interval sequence to explore whether the dynamic script resource is started, and when the request is successful, the main program establishes a websocket connection with the dynamic script resource. In this embodiment, the preset heartbeat interval sequence can adopt a fixed counting interval.
[0089] In another specific embodiment, the preset heartbeat interval sequence is generated by an exponential backoff algorithm, which can be a binary exponential backoff algorithm. By generating the heartbeat interval sequence by the exponential backoff algorithm, the number of invalid retries of the main program sending the http request can be reduced, and the critical computing resources can be avoided from being preempted, thereby preventing program collapse and system crash.
[0090] In yet another specific embodiment, the dynamic script resource can also include websocket connections with multiple programs other than the main program, if the dynamic script resource needs to feed information to multiple programs that establish communication connections at the same time, it can cause periodic congestion of information. Therefore, the generation process of the preset heartbeat interval sequence can include:
[0091] generating a first heartbeat interval sequence based on an exponential backoff algorithm;
[0092] adding a random number to the first heartbeat interval sequence to obtain a preset heartbeat interval sequence.
[0093] By increasing the random phase jitter on the basis of the exponential backoff algorithm, dynamic load adjustment, adaptive probing, and avoiding dynamic script resource collapse and system crash are achieved.
[0094] In summary, the software deployment method based on double-layer containerization and dynamic decoupling provided by the present application achieves the following beneficial effects:
[0095] By adopting the nested packaging mode of DEB installation package + compressed package, double-layer containerization is achieved. The main program can be automatically updated based on the third-party library configuration of Electron, and the dynamic script resource can be directly updated by replacing the file in the specified directory. When the main program or the dynamic script resource is updated, the entire program file does not need to be updated, avoiding bandwidth duplication and repeated installation of framework content. The main program closes the sandbox isolation mechanism, and the dynamic script resource opens the sandbox isolation mechanism, realizing permission separation, and deploying ACL tamper-proofing strategy and verification strategy for the dynamic script resource to avoid tampering by attackers. The main program uses a heartbeat adaptive probing mechanism to detect the process startup of the dynamic script resource, avoiding the occupation of critical computing resources and causing program collapse and system crash.
[0096] Based on the same inventive concept as the software deployment method based on double-layer containerization and dynamic decoupling described above, the present application also provides a software deployment system based on double-layer containerization and dynamic decoupling, Figure 3 a schematic diagram of a software deployment system based on double-layer containerization and dynamic decoupling according to an embodiment of the present application is shown, as Figure 3 shown, the system includes:
[0097] The file packaging module 201 is configured to generate a main program executable file by Electron compilation, and package the executable file into a DEB installation package based on the third-party library of Electron in the Ubuntu system.
[0098] The double-layer container nesting module 202 is configured to obtain dynamic script resources and compress them into a compressed package, and nest the compressed package into the DEB installation package.
[0099] The main program installs module 203, which is configured to send the first Ubuntu system command to install the DEB installation package and complete the main program deployment.
[0100] Script installation module 204 is configured to send a second Ubuntu system command to start the main program and install dynamic script resources to the specified directory by decompressing the compressed package;
[0101] The communication module 205 is configured to send commands from the third Ubuntu system to start dynamic script resources and establish a websocket connection after successful startup.
[0102] Based on the aforementioned software deployment method based on two-layer containerization and dynamic decoupling, and based on the same inventive concept, this application also proposes an electronic device.
[0103] Figure 4 A schematic diagram of an electronic device according to a specific embodiment of this application is shown, such as... Figure 4 As shown, the electronic device includes one or more processors 301, a memory 302, a bus 303, and a communication interface 304. The one or more processors 301, memory 302, and communication interface 304 are connected via the bus 303. The memory 302 stores one or more programs, which, when executed by one or more processors 301, enable the electronic device to implement the software deployment method based on two-layer containerization and dynamic decoupling provided in any of the above embodiments.
[0104] Based on the above-described software deployment method based on two-layer containerization and dynamic decoupling, and based on the same inventive concept, this application also proposes a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the software deployment method based on two-layer containerization and dynamic decoupling provided in any of the above embodiments.
[0105] In the embodiments of this application, it should be understood that the disclosed technical content can be implemented in other ways. The device / system / method embodiments described above are merely illustrative. For example, the division of units can be a logical functional division, and in actual implementation, there may be other division methods. For instance, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual coupling or direct coupling or communication connection may be through some interfaces; the indirect coupling or communication connection between units or modules may be electrical or other forms.
[0106] The units described as separate components may or may not be physically separate, and the components displayed as units may or may not be physical units, i.e. may be located in one place, or may be distributed to multiple units. Part or all of the units can be selected according to actual needs to achieve the purpose of the embodiment scheme.
[0107] In addition, each functional unit in various embodiments of the application can be integrated in one processing unit, or each unit can exist physically, or two or more units can be integrated in one unit. The integrated unit can be realized in the form of hardware or in the form of a software functional unit.
[0108] The integrated unit, if realized in the form of a software functional unit and sold or used as an independent product, can be stored in a computer readable storage medium. Based on this understanding, the technical solutions of the application essentially or the part of the prior art that contributes or the whole or part of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes a plurality of instructions for causing a computer device (which can be a personal computer, a server or a network device, etc.) to execute all or part of the steps of the method described in various embodiments of the application. The foregoing storage medium includes a U disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), a mobile hard disk, a magnetic disk or an optical disk, and various program code storage media.
[0109] Obviously, those skilled in the art can make various modifications and changes to the embodiments of the application without departing from the spirit and scope of the application. In this way, if these modifications and changes are within the scope of the claims of the application and their equivalents, the application also intends to cover these modifications and changes. The word "comprising" does not exclude the presence of other elements or steps not listed in the claims. The simple fact that certain measures are described in mutually different dependent claims does not mean that combinations of these measures cannot be used to advantage. Any reference signs in the claims should not be considered limiting the scope.
Claims
1. A software deployment method based on double-layer containerization and dynamic decoupling, characterized in that, The method comprises the following steps: generating an executable file of a main program through Electron compilation, and packaging the executable file into a DEB installation package based on third-party libraries of Electron under an Ubuntu system; obtaining dynamic script resources and compressing the dynamic script resources into a compressed package, and embedding the compressed package into the DEB installation package, and creating a decompression script in the DEB installation package; sending a first Ubuntu system command to install the DEB installation package, and completing deployment of the main program; sending a second Ubuntu system command to start the main program, and installing the dynamic script resources into a specified directory by decompressing the compressed package, comprising: decompressing and installing the dynamic script resources in the compressed package into the specified directory by executing the decompression script; the main program sends a third Ubuntu system command to start the dynamic script resources, and establishes a websocket connection after successful startup, comprising: the main program sends an http request to the dynamic script resources according to a preset heartbeat interval sequence to detect whether the dynamic script resources are started; in response to a successful request, the main program establishes a websocket connection with the dynamic script resources; wherein the second Ubuntu system command has a parameter to close a sandbox isolation mechanism of the main program, and the main program closes the sandbox isolation mechanism after startup; before decompressing the dynamic script resources, the decompression script further comprises: creating a sandbox to isolate the specified directory; deploying an ACL tamper-proofing policy for the dynamic script resources.
2. The method of claim 1, wherein, The method further comprises: creating a verification script in the DEB installation package; detecting whether the dynamic script resources are successfully installed into the specified directory by executing the verification script, and executing the decompression script if the detection fails.
3. The method of claim 2, wherein, The method of obtaining dynamic script resources and compressing the dynamic script resources into a compressed package comprises: obtaining dynamic script resources and creating a metadata file, generating a SHA256 digest of the dynamic script resources and saving the SHA256 digest into the metadata file, and compressing the dynamic script resources and the metadata file into a compressed package; the method of detecting whether the dynamic script resources are successfully installed into the specified directory by executing the verification script, and executing the decompression script if the detection fails, comprises the following steps: step a): detecting whether the metadata file exists in the specified directory, and executing the decompression script if the detection fails; if yes, executing step b); step b): generating a SHA256 digest of the dynamic script resources in the specified directory again, and comparing the SHA256 digest with the SHA256 digest in the metadata file, and passing the detection if the comparison is consistent; if the comparison is inconsistent, failing the detection and terminating the installation.
4. The method of claim 1, wherein, The method of embedding the compressed package into the DEB installation package comprises: configuring a parameter of a dynamic script resource installation directory in a development configuration file; packaging the compressed package into the DEB installation package in the form of an extended resource according to the development configuration file.
5. The method of claim 1, wherein, The preset heartbeat interval sequence is generated by using an exponential backoff algorithm.
6. The method of claim 5, wherein, The dynamic script resource further comprises websocket connections with a plurality of programs other than the main program, and the generation process of the preset heartbeat interval sequence comprises: generating a first heartbeat interval sequence based on an exponential backoff algorithm; adding a random number to the first heartbeat interval sequence to obtain the preset heartbeat interval sequence.
7. A software deployment system based on dual-layer containerization and dynamic decoupling, characterized in that, Comprise: a file packaging module configured to generate a main program executable file through Electron compilation, and package the executable file into a DEB installation package based on a third-party library of Electron under an Ubuntu system; a double-layer container nesting module configured to obtain a dynamic script resource and compress the dynamic script resource into a compressed package, and nest and package the compressed package into the DEB installation package, and create a decompression script in the DEB installation package; a main program installation module configured to send a first Ubuntu system command to install the DEB installation package, and complete main program deployment; a script installation module configured to send a second Ubuntu system command to start the main program, and install the dynamic script resource to a specified directory by decompressing the compressed package, comprising: decompressing and installing the dynamic script resource in the compressed package to the specified directory by executing the decompression script; wherein the second Ubuntu system command has a parameter to close a sandbox isolation mechanism of the main program, and the main program closes the sandbox isolation mechanism after being started, and the decompression script further comprises: creating a sandbox to isolate the specified directory before decompressing the dynamic script resource; and deploying an ACL tamper-proofing strategy for the dynamic script resource; a communication module configured to send a third Ubuntu system command by the main program to start the dynamic script resource, and establish a websocket connection after successful startup, comprising: the main program sends an http request to the dynamic script resource according to a preset heartbeat interval sequence to probe whether the dynamic script resource is started; in response to a successful request, the main program establishes a websocket connection with the dynamic script resource.
8. An electronic device, comprising: Comprise: one or more processors; a memory for storing one or more programs, which, when executed by the one or more processors, cause the electronic device to implement the method of any one of claims 1 to 6.
9. A computer readable storage medium having stored thereon a computer program, characterized in that, The program is executed by the processor to implement the method of any one of claims 1 to 6.
Citation Information
Patent Citations
Manufacture and application method of software client side
CN104133695A
Software edition updating system in distributed service system and its method
CN1758607A