Software package obtaining method, electronic device, and readable storage medium
By obtaining the scenario files corresponding to the user's software package requirements and obtaining the corresponding part of the component package from the full component package, the problem of excessive storage resource occupation and excessive download time caused by users when installing the software is solved, and the effect of reducing storage resource occupation and download time is achieved.
Patent Information
- Application Number
- PCT/CN2024/107659
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-11-24
- Filing Date
- 2024-07-25
- Publication Date
- 2025-05-30
AI Technical Summary
In the prior art, users need to download a full amount of software packages when installing software, resulting in too large server storage resources and too long download time.
By obtaining the scenario files corresponding to the user's software package requirements, obtain the corresponding part of the component package from the full component package and assemble it into a software package that meets the user's needs for users to download.
Reduces the use of server storage resources and software package download time, and improves installation efficiency and user experience.
Smart Images

Figure CN2024107659_30052025_PF_FP_ABST
Abstract
Description
Software package obtaining method, electronic device and readable storage medium
[0001] Related applications
[0002] This application claims priority to Chinese patent application No. 202311603281.5 filed on November 24, 2023, the entire contents of which are incorporated by reference into this application. Technical Field
[0003] The present application relates to the field of computer technology, and in particular to a method for obtaining a software package, an electronic device, and a readable storage medium. Background Art
[0004] With the development and evolution of Internet technology, users' demands are increasing, and various software are becoming larger and larger. These software are composed of several components.
[0005] Software packages are made up of several components. When installing software, users need to download the complete package containing all components. However, since the complete package is very large, it unnecessarily consumes storage resources on the server used to install the software, and downloading the complete package also takes a long time.
[0006] Therefore, in practical applications, a solution is needed that can save the storage resource overhead of the server and reduce the download time of the software package.
[0007] Summary of the Invention
[0008] The main purpose of this application is to provide a method for obtaining a software package, an electronic device, and a readable storage medium.
[0009] To achieve the above-mentioned purpose, the present application provides a method for obtaining a software package, which includes the following steps: obtaining a scenario file corresponding to the user's requirements for the software package; obtaining a partial component package corresponding to the scenario file from the full component package; and obtaining the software package based on the partial component package for the user to download.
[0010] Illustratively, to achieve the above-mentioned purpose, the present application also provides an electronic device, comprising: a memory, a processor, and a software package acquisition program stored in the memory and executable on the processor, wherein the software package acquisition program is configured to implement the steps of the software package acquisition method described above.
[0011] Illustratively, to achieve the above-mentioned purpose, the present application further provides a computer-readable storage medium, on which a software package obtaining program is stored. When the software package obtaining program is executed by a processor, the steps of the software package obtaining method described above are implemented. BRIEF DESCRIPTION OF THE DRAWINGS
[0012] FIG1 is a flow chart of an embodiment of a method for obtaining a software package of the present application;
[0013] FIG2 is a schematic diagram illustrating an example of a component package constituting software in an embodiment of the method for obtaining a software package of the present application;
[0014] FIG3 is a schematic diagram of a scenario file corresponding to a full component package of operation and maintenance software in an embodiment of the method for obtaining a software package of the present application;
[0015] FIG4 is a schematic diagram of an improved scene file in an embodiment of the method for obtaining a software package of the present application;
[0016] FIG5 is a schematic diagram of a main selection interface in an embodiment of a method for obtaining a software package of the present application;
[0017] FIG6 is a schematic diagram of a scenario file in an embodiment of the method for obtaining a software package of the present application;
[0018] FIG7 is a schematic diagram of another main selection interface in an embodiment of the method for obtaining a software package of the present application;
[0019] FIG8 is a schematic diagram of a sub-selection interface in an embodiment of the method for obtaining a software package of the present application;
[0020] FIG9 is a schematic diagram of a resource file in an embodiment of a method for obtaining a software package of the present application;
[0021] FIG10 is a schematic diagram of a resource file in an embodiment of a method for obtaining a software package of the present application;
[0022] FIG11 is a schematic diagram showing a method for displaying resources required in an embodiment of a method for obtaining a software package of the present application;
[0023] FIG12 is a schematic diagram of functional modules of a preferred embodiment of the software package obtaining device of the present application;
[0024] FIG13 is a schematic diagram of the structure of the hardware operating environment involved in the embodiment of the present application.
[0025] The realization of the objectives, functional features and advantages of this application will be further explained in conjunction with embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION
[0026] The specific embodiments described herein are merely used to explain the present application and are not intended to limit the present application.
[0027] The software involved in the embodiments of this application includes but is not limited to engineering software and operation and maintenance software.
[0028] For ease of understanding, the following briefly describes the embodiments of the present application:
[0029] For example, operations and maintenance software (also known as operations and maintenance platform software) is a five-in-one network management system consisting of multiple products (professional networks). Each product is composed of multiple components with different functions, forming a complete software version package. During software installation, components configured in the scenario file are retrieved and installed from the full software package (including all component packages). Each component package contains several components.
[0030] Among them, components are important elements that make up the software, occupying more than 90% of the size of the entire full software package. The component is placed in a subfolder named "sources" under the folder of the full software package.
[0031] Usually the "sources" subfolder contains the complete set of software components. When installing the software, after reading the scene file, the corresponding components are selected from the "sources" subfolder according to the scene file for installation.
[0032] In the related art, a user downloads a full software package to a local computer (server), and then installs the software according to corresponding needs, which results in the need to provide a relatively large storage resource (eg, 20G) locally for storing the full software package.
[0033] In order to avoid unnecessary occupation of the server's storage resources, the embodiment of the present application proposes to first consider user needs, obtain component packages that meet the user's needs from the full component package based on the user's needs, and assemble the component packages to obtain a software package that meets the user's needs, rather than a full software package, for the user to download. In this way, the software package downloaded by the user is not the full software package assembled from the full component packages, but a software package corresponding to the user's needs, thereby reducing the size of the software package, thereby saving the server's storage resource overhead and shortening the download time.
[0034] In the process of obtaining component packages from the full component package and assembling the software package that meets the user's needs, the customized component package that meets the user's needs can be obtained directly, or the full component package can be obtained first, assembled to obtain the full software package, and then the customized component package that meets the user's needs is obtained from the full software package according to the user's needs, thereby obtaining the software package that meets the user's needs.
[0035] The present application provides a method for obtaining a software package. FIG1 is a flow chart of an embodiment of the method for obtaining a software package of the present application.
[0036] The present application provides an embodiment of a method for obtaining a software package. Although the flowchart shows a logical order, in some cases, the steps shown or described may be performed in a different order. As shown in Figure 1, the software package obtaining method includes: Step S110, obtaining a scenario file corresponding to the user's requirements for the software package.
[0037] Software is built by combining several components like building blocks. The list of components used to build the software is called a component list. To meet different user needs, the software is used in different scenarios. Therefore, this component list is also called a scenario file.
[0038] The aforementioned operations and maintenance software is based on a microservices architecture. Each microservice is relatively independent, yet also has dependencies. For example, the software includes a "Platform" component package, an "Application A" component package, and a "Basic Business" component package. The "Application A" component package depends on the "Basic Business" component package, which in turn depends on the "Platform" component package. The "Basic Business" and "Platform" component packages are considered foundational, while the "Application A" component package is considered optional.
[0039] The components in the "Platform" component package are foundational components without business logic. They implement basic functions such as connecting to a database, providing a data bus, caching, and security authentication. These microservices are usually required to be installed, and most other microservices need to rely on them. The components in the "Basic Business" component package are used to provide basic software services or contain common business logic. These microservices are also usually required to be installed and will be relied upon by other microservices. The applications at the next higher level (such as Application A, Application B, Application C, etc.) are relatively independent, providing independent functions, and there are no dependencies between applications.
[0040] According to this feature, the scenario files are shown in Table 1 below, where each box represents a scenario file (the same below):
[0041] Table 1
[0042] Table 1 above shows three scenarios, among which platform components and basic business components are mandatory components that provide basic functions, while applications can be configured according to business needs and can be regarded as optional components. Optional components are optional.
[0043] In some embodiments, for complex scenarios, basic business components can be reclassified by category. According to the category, some basic business components are also optional, and the upper-level applications can also be divided into several categories according to the category. Figure 2 is an example diagram of the component packages that make up the software. As shown in Figure 2, the platform components and basic business public components provide basic functions and are required to be installed. Other component packages are optional.
[0044] Scenario files can be nested, that is, each component package consists of 1 to N different microservice components, as shown in Table 2:
[0045] Table 2
[0046] The platform component package includes Component 1 and Component 2, which are microservice components. Different microservice components in the platform component package are used to implement different platform functions. In other words, different components are constructed based on the required functions. Accordingly, the microservice components in the Basic Business Common Component Package, Basic Business Optional Component Package 1, and Optional Component Package 1 are essentially the same as those in the platform component package and will not be further described here.
[0047] The scene files corresponding to Figure 2 are shown in Table 3 below, where the corresponding relationship is that the component package in Figure 2 can be obtained by cutting the component library through the scene files in Table 3. The component package in Figure 2 is a full component package:
[0048] Table 3
[0049] For Table 3, the scenario file is used to cut and obtain multiple component packages (i.e., platform component package, basic business common component package, basic business optional component package 1, basic business optional component package 2, basic business optional component package 3, optional component package 1, optional component package 2, optional component package 3, and optional component package 4). Among them, the specific components contained in each component package can be determined by the user after cutting. For example, the full platform component package contains component 1 and component 2. If the user cuts component 1, the platform component package will only include component 2 but not component 1. In one embodiment, each component package contains all components by default. If the user does not cut, the component package that constitutes the software package contains all components of the component package.
[0050] For example, according to user needs, Table 3 can be tailored to Table 4:
[0051] Table 4
[0052] For Table 4, based on the above full component package, the full component package can be tailored according to user needs through the scenario file to obtain partial component packages that meet user needs, and finally obtain a software package that meets user needs.
[0053] Scenario 1 and Scenario 2 in Table 4 each meet a user requirement. The scenario file corresponding to Scenario 1 allows the full component package to be tailored to obtain Partial Component Package 1, which includes the Platform Component Package, the Basic Business Common Component Package, the Basic Business Optional Component Package 1, and the Basic Business Optional Component Package 2. The scenario file corresponding to Scenario 2 allows the full component package to be tailored to obtain Partial Component Package 2, which includes the Platform Component Package, the Basic Business Common Component Package, the Basic Business Optional Component Package 1, the Basic Business Optional Component Package 2, the Optional Component Package 1, and the Optional Component Package 2.
[0054] Taking the operation and maintenance software for various types of operation and maintenance personnel as an example, this operation and maintenance software can provide unified management capabilities for multiple products, such as wireless, core network, bearer network, fixed network, and cloud management (corresponding to the aforementioned optional component package for basic services). Different users may require one or more of these multiple products. For example, user A requires wireless and core network management functions, while user B requires bearer and fixed network management functions. Accordingly, the scenario files corresponding to user A include scenario files corresponding to wireless and core network, while the scenario files corresponding to user B include scenario files corresponding to bearer network and fixed network.
[0055] Figure 3 is a schematic diagram of the scenario files corresponding to the full component package of the operation and maintenance software. Referring to Figure 3, each box represents a scenario file. For example, "Platform", "Southbound" and "Public" each represent a scenario file. "Southbound" and "Public" correspond to the above-mentioned basic business public component packages, and the remaining extension packages and "intelligent component packages" correspond to the above-mentioned applications. The corresponding component package can be obtained through the scenario file. For example, if the scenario file is "Platform", the component package corresponding to the "Platform" is obtained. Accordingly, in the process of assembling component packages to obtain software packages, the operation and maintenance software is composed of multiple mandatory component packages + one or more optional component packages. Among them, mandatory component packages must be installed, and mandatory component packages include platform component packages and basic business public component packages; optional component packages are optional, that is, they do not have to be installed, and they can be selected according to user needs. Optional component packages include basic business optional component packages and applications.
[0056] Due to the diverse needs of users, this operation and maintenance software provides nearly 50 scenario files, even with a strict access control mechanism. This makes software installation using scenario files complex. Users need to specify multiple scenario files based on their specific needs, making it difficult to use.
[0057] To address this issue of poor usability, the present application proposes a solution to simplify scenario files, thereby improving their usability. Specifically, the fields corresponding to the user parameters in the user requirements are partially identical to the fields corresponding to the name identifiers of the component packages. The name identifiers identify the names of the component packages. For example, the field corresponding to the name identifier of the "Platform" component package is "Platform."
[0058] User parameters are used to specify the component packages they need.
[0059] For example, if the user needs to enter the installation command, and the installation command is "nohup oki-cli install--scene platform.scene...", then the field corresponding to the user parameter includes "platform", that is, "nohup oki-cli install--scene", ".scene" is the non-user parameter part, and "platform" is the user parameter part. It can be understood that there is a field corresponding to the name identifier of the component package is "platform". If the field corresponding to the user parameter in the installation command only contains "platform", then it can be considered that the user parameter is the same as the name identifier of the component package. For another example, if the installation command is "nohup oki-cli install--scene platform+wireless.scene, wireless enhanced extension package.scene", then the fields corresponding to the user parameter are "platform+wireless" and "wireless enhanced extension package". There is a component package whose name identifier corresponds to the field "wireless enhanced extension package", but there is no component package whose name identifier corresponds to the field "platform+wireless". In this case, it can be considered that the field corresponding to the user parameter is partially the same as the field corresponding to the name identifier, but not completely the same.
[0060] In an exemplary embodiment, the scenario file includes a combined component package scenario file; one of the combined component package scenario files corresponds to multiple component packages in the partial component package; the combined component package scenario file is determined based on the user parameters. Figure 4 is a schematic diagram of an improved scenario file. Referring to Figure 4, "two-in-one", "three-in-one" and "five-in-one" respectively represent a scenario file. It can be understood that the scenario file represented by "two-in-one" is a combination of the original five scenario files of "platform", "southbound", "public", "wireless" and "core network". Among them, since "platform", "southbound" and "public" are mandatory component packages, they are installed by default when installing the software. Therefore, whether the user installs through the installation command or through the visual interface, there is no need to specify the installation of any mandatory component package. The user can specify the optional component package.
[0061] The scene file is a combined component package scene file; or the scene file also includes a single component package scene file, and the scene file is assembled by combining the combined component package scene file and the single component package scene file. Wherein, a single component package scene file corresponds to a component package in the above-mentioned partial component packages.
[0062] Exemplarily, the user requirement is obtained from the installation command input by the user.
[0063] For example, if the installation command is: nohup oki-cli install --scene Wireless+Core+Bearer.scene, Wireless Enhanced Extension Package.scene, Wireless Northbound Extension Package.scene, Core Network Enhanced Extension Package.scene, Core Network Northbound Extension Package.scene, the user needs to install the following component packages: Wireless, Core Network, Bearer, Wireless Enhanced Extension Package, Wireless Northbound Extension Package, Core Network Enhanced Extension Package, and Core Network Northbound Extension Package.
[0064] Since the installation command requires user input and there are many scene files, the installation command is relatively complex. Therefore, users are prone to make mistakes when entering the installation command, which can easily lead to the installation of the wrong component package. However, since the scene files in the embodiment of the present application are simplified, the accuracy of the installation command can be greatly improved.
[0065] Exemplarily, obtaining the user's demand for the software package includes: displaying a main selection interface and obtaining a first operation instruction for the user to perform a selection operation on the main selection interface; displaying a sub-selection interface corresponding to the first operation instruction and obtaining a second operation instruction for the user to perform a selection operation on the sub-selection interface; and using a first option corresponding to the first operation instruction and a second option corresponding to the second operation instruction as the user's demand for the software package.
[0066] Refer to Figure 5, which is a schematic diagram of a main selection interface. In this embodiment, the main selection interface is used to select the combined component package scenario file, and the sub-selection interface is used to select the single component package scenario file. In Figure 5, the user selects "Wireless and Core Network" in the main selection interface. After that, the user needs to select "Enhanced Extension Package", "Northbound Extension Package", etc. in the sub-selection interface, and further select the corresponding component package from the "Wireless Enhanced Extension Package" component package, "Core Network Enhanced Extension Package" component package, and "Bearer Enhanced Extension Package" component package corresponding to the "Enhanced Extension Package". It should be noted that, in addition to the main selection interface shown in Figure 5, in other embodiments of the main selection interface, each optional component package can also be selected by the user separately. For example, when the user needs to select "two-in-one", that is, when the user needs to select "wireless and core network", he can select "wireless" and "core network" respectively.
[0067] Due to the large number of scene files, the sub-selection interface is more complicated, and the user selection process is more complicated. Therefore, the user is prone to errors when entering the second operation instruction, which easily leads to the installation of the wrong component package. However, since the scene files in the embodiment of the present application have been simplified, the accuracy of the component package selected by the user can be greatly improved.
[0068] In another exemplary embodiment, the component package includes a mandatory component package and an optional component package, the optional component package includes a basic business optional component package and an application, a dependency relationship is established between the basic business optional component package and the application, and obtaining the scenario file corresponding to the user requirements of the user for the software package includes: determining the basic business optional component package based on the user requirements of the software package; obtaining dependency parameters from the user requirements; obtaining a scenario file with a dependency declaration corresponding to the dependency parameters and a scenario file corresponding to the determined basic business optional component package; the dependency declaration is used to declare the dependency relationship.
[0069] In the embodiment of the present application, dependency relationships are utilized. Figure 6 is a schematic diagram of the form of a scenario file. Referring to Figure 6, 601 is the overall scenario file, 602 is the "Wireless" component package, 603 is the "Enhanced Extension Package" component package, and 604 is the "Wireless Enhanced Extension Package" component package. Unlike the existing system where each component package corresponds to a scenario file, in the embodiment of the present application, there is a overall scenario file. When a scenario file is needed, the overall scenario file is selected by entering selection parameters. The selection parameters can be entered through the installation command or through the corresponding operation instructions of the visual interface (including the main selection interface and the sub-selection interface). In addition, there is a dependency declaration in the scenario file corresponding to the "Wireless Enhanced Extension Package" component package 604. The statement "Dependency: Wireless" in the scenario file indicates that there is a dependency relationship between the "Wireless Enhanced Extension Package" component package and the "Wireless" component package. The dependency parameter is the field corresponding to the combination parameter of the field corresponding to the name identifier of the required component package and the field corresponding to the name identifier of the optional component package. Among them, the dependency relationship will affect the display content in the sub-selection interface.
[0070] Exemplarily, the user requirement is obtained from the installation command input by the user.
[0071] For example, the installation command is: nohup oki-cli install --scene total scenario file.scene wireless + core network + enhanced extension package + northbound extension package. This installation command involves only one scenario file, the "total scenario file." The other "wireless," "core network," "enhanced extension package," and "northbound extension package" are fields corresponding to user parameters. The fields corresponding to the dependent parameters include "wireless," "enhanced extension package," "wireless," "northbound extension package," "core network," "enhanced extension package," and "core network," "northbound extension package." This indicates that the user needs to install the required component packages, "wireless," "wireless enhanced extension package," "wireless northbound extension package," "core network," "core network enhanced extension package," and "core network northbound extension package" in the software.
[0072] Since the installation command requires user input and there are many scene files, the installation command is relatively complex. Therefore, users are prone to make mistakes when entering the installation command, which can easily lead to the installation of the wrong component package. However, since the scene files in the embodiment of the present application are simplified, the accuracy of the installation command can be greatly improved.
[0073] Exemplarily, obtaining the user's demand for the software package includes: displaying a main selection interface and obtaining a first operation instruction for the user to perform a selection operation on the main selection interface; displaying a sub-selection interface corresponding to the first operation instruction and obtaining a second operation instruction for the user to perform a selection operation on the sub-selection interface; and using a first option corresponding to the first operation instruction and a second option corresponding to the second operation instruction as the user's demand for the software package.
[0074] Refer to Figure 7, which is a schematic diagram of another main selection interface. After the user selects "Wireless" and "Core Network" on the main selection interface, a sub-selection interface is displayed. This sub-selection interface is shown in Figure 8. After the user selects "Enhanced Extension Package" and "Northbound Extension Package" on the sub-selection interface, the user's requirements are confirmed as follows: the mandatory component package, the "Wireless" component package, the "Wireless Enhanced Extension Package" component package, the "Wireless Northbound Extension Package" component package, the "Core Network" component package, the "Core Network Enhanced Extension Package" component package, and the "Core Network Northbound Extension Package" component package are installed in the software.
[0075] Due to the large number of scene files, the sub-selection interface is more complicated, and the user selection process is more complicated. Therefore, the user is prone to errors when entering the second operation instruction, which easily leads to the installation of the wrong component package. However, since the scene files in the embodiment of the present application have been simplified, the accuracy of the component package selected by the user can be greatly improved.
[0076] Step S120: Obtain a partial component package corresponding to the scene file from the full component package.
[0077] In this embodiment, the full component package is trimmed using the scene file to obtain a partial component package.
[0078] Step S130: obtaining the software package based on the partial component package for downloading by the user.
[0079] In addition to component packages, the software package also includes configuration files, tools, etc.
[0080] Exemplarily, the method further includes: obtaining a resource file corresponding to the user demand; determining the hardware resources required for each target component package in the software package based on the resource file; after the software package is installed, each of the hardware resources is consumed by the target component corresponding to the corresponding target component package during operation; the target component package includes a mandatory component package and an optional component package for basic business.
[0081] Taking the software as operation and maintenance software as an example, different management scales will be distinguished according to the number of devices managed by the operation and maintenance platform software (operation and maintenance software). For example, management scale 1 manages up to 10 devices, and management scale 2 manages up to 30 devices. At present, in response to different needs, the operation and maintenance platform software mainly implements the deployment of various management scales by specifying different resource files (used to set different CPUs, memories, disks, number of instances, etc.). The resource file defines the hardware resources required for the software to run after installation. See Figure 9, which is a schematic diagram of the resource file. Similar to the scenario file, a box in Figure 9 corresponds to a resource file, for example, "Platform Scale 1" is a resource file, and "Public Scale 1" is also a resource file. The resource file can also be determined by installing a command or displaying the corresponding interface.
[0082] For example, if you specify resource files using the installation command and use a scenario file with multiple component packages, the installation command might be: nohup oki-cli install --scene wireless+core+bearing.scene, wireless enhancement package.scene, wireless northbound package.scene, core network enhancement package.scene, core network northbound package.scene --resource platform component 1_scale 1.resource, platform component 2_scale 1.resource, southbound component_scale 1.resource, public component_scale 1.resource, wireless component_scale 1.resource, core network component_scale 1.resource&. Resource files, like scenario files, have similar usability and error-proneness issues.
[0083] To address the above issues, the embodiment of the present application defines resource lists of different sizes in the scene file: Resources:
[0084] Scale 1: Platform scale 1; Southbound scale 1; Public scale 1; Wireless scale 1; Core network scale 1; Bearer scale 1; Fixed network scale 1; Cloud management scale 1.
[0085] Scale 2: Platform scale 2; Southbound scale 2; Public scale 2; Wireless scale 2; Core network scale 2; Bearer scale 2; Fixed network scale 2; Cloud management scale 2.
[0086] Scale 3: Platform scale 3; Southbound scale 3; Public scale 3; Wireless scale 3; Core network scale 3; Bearer scale 3; Fixed network scale 3; Cloud management scale 3.
[0087] Figure 10 is a schematic diagram of the form of a resource file. Referring to Figure 10, 1001 is the overall scenario file, and 1002 is the "Wireless Scale 1" resource file. The "Wireless Scale 1" resource file can also add a dependency description, that is, the "Wireless Scale 1" resource file declares that it depends on the "Wireless" component package. Only when the "Wireless" component package is selected, the "Wireless Scale 1" resource file will take effect and automatically take effect. In addition, in the "Wireless Scale 1" resource file, there is also a resource definition of this scale, that is, how many hardware resources can be allocated under this "Wireless Scale 1". For example, 50 vCPUs (virtual central processing units), 20G memory and 10T hard disk are defined in the "Wireless Scale 1" resource file.
[0088] Therefore, you only need to specify one resource file, namely "Scale 1", "Scale 2" or "Scale 3", etc., to complete the selection of resources corresponding to all component packages through dependency declarations.
[0089] For example, the installation command can be: nohup oki-cli install --scene total scene file.scene wireless+core network+bearing+fixed network+cloud management --resource scale 1&. This installation command sets the resource scale of the "wireless" component package to wireless scale 1, the resource scale of the "core network" component package to core network scale 1, the resource scale of the "bearing" component package to bearer scale 1, the resource scale of the "fixed network" component package to fixed network scale 1, and the resource scale of the "cloud management" component package to cloud management scale 1.
[0090] Exemplarily, after determining the hardware resources required by each target component package in the software package based on the one resource file, the method further includes: displaying the quantity of the hardware resources to the user.
[0091] FIG11 is a schematic diagram showing how required resources are displayed. Referring to FIG11 , after the user determines the hardware resources, the specific amount of the required hardware resources can be displayed visually. The specific amount is a numerical range, i.e., the amount of hardware resources consumed by the software during operation falls within the numerical range. This allows the user to easily determine whether the maximum hardware resources of the server used to run the software meet the required hardware resource requirements.
[0092] In addition, Figure 12 is a functional module diagram of a preferred embodiment of the software package acquisition device of the present application. Referring to Figure 12, the present application also provides a software package acquisition device, which includes: a first acquisition module 1210, used to obtain the scene file corresponding to the user's demand for the software package; a second acquisition module 1211, used to obtain the partial component package corresponding to the scene file from the full component package; an acquisition module 1212, used to obtain the software package based on the partial component package for the user to download.
[0093] Exemplarily, the fields corresponding to the user parameters in the user requirements are partially identical to the fields corresponding to the name identifier of the component package.
[0094] Exemplarily, the scenario file includes a combined component package scenario file; one combined component package scenario file corresponds to multiple component packages in the partial component package; and the combined component package scenario file is determined based on the user parameters.
[0095] Exemplarily, the component package includes a mandatory component package and an optional component package, the optional component package includes a basic business optional component package and an application, and a dependency relationship is established between the basic business optional component package and the application.
[0096] The first acquisition module 1210 is specifically used to: determine the basic business optional component package based on the user's requirements for the software package; obtain dependency parameters from the user requirements; obtain a scenario file with a dependency declaration corresponding to the dependency parameters and a scenario file corresponding to the determined basic business optional component package; the dependency declaration is used to declare the dependency relationship.
[0097] Exemplarily, the user requirement is obtained from the installation command input by the user.
[0098] Exemplarily, the first acquisition module 1210 is specifically used to: display the main selection interface, and obtain the first operation instruction for the user to perform a selection operation on the main selection interface; display the sub-selection interface corresponding to the first operation instruction, and obtain the second operation instruction for the user to perform a selection operation on the sub-selection interface; use the first option corresponding to the first operation instruction and the second option corresponding to the second operation instruction as the user's user requirements for the software package; and obtain the scenario file corresponding to the user requirements.
[0099] Exemplarily, the device also includes: a third acquisition module, used to obtain a resource file corresponding to the user demand; a determination module, used to determine the hardware resources required for each target component package in the software package based on the resource file; after the software package is installed, each of the hardware resources is consumed by the target component corresponding to the corresponding target component package during operation; the target component package includes a mandatory component package and a basic business optional component package.
[0100] Exemplarily, the apparatus further includes: a display module, configured to display the quantity of the hardware resources to a user.
[0101] The specific implementation of the software package obtaining device of the present application is basically the same as the embodiments of the software package obtaining method described above, and will not be repeated here.
[0102] In addition, the present application also provides an electronic device. As shown in FIG13 , FIG13 is a schematic diagram of the structure of the hardware operating environment involved in the embodiment of the present application.
[0103] For example, FIG13 is a schematic diagram of the structure of the hardware operating environment of the electronic device.
[0104] As shown in FIG13 , the electronic device may include a processor 1301, a communication interface 1302, a memory 1303, and a communication bus 1304. The processor 1301, the communication interface 1302, and the memory 1303 communicate with each other via the communication bus 1304. The memory 1303 is used to store computer programs. The processor 1301 is used to implement the steps of the software package obtaining method when executing the program stored in the memory 1303.
[0105] The communication bus 1304 mentioned in the electronic device can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus. The communication bus 1304 can be divided into an address bus, a data bus, and a control bus. For ease of illustration, the figure shows only one thick line, but this does not mean that there is only one bus or only one type of bus.
[0106] The communication interface 1302 is used for communication between the electronic device and other devices.
[0107] The memory 1303 may include random access memory (RAM) or non-volatile memory (NVM), such as at least one disk storage device. In one embodiment, the memory 1303 may also be at least one storage device located remotely from the processor 1301.
[0108] The above-mentioned processor 1301 can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
[0109] The specific implementation of the electronic device of the present application is basically the same as the embodiments of the above-mentioned software package obtaining method, and will not be repeated here.
[0110] In addition, an embodiment of the present application further provides a computer-readable storage medium, on which a software package obtaining program is stored. When the software package obtaining program is executed by a processor, the steps of the software package obtaining method described above are implemented.
[0111] The specific implementation of the computer-readable storage medium of the present application is basically the same as the embodiments of the software package obtaining method described above, and will not be repeated here.
[0112] As used herein, the terms "comprises," "comprising," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, article, or system that includes a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or system. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not preclude the presence of additional identical elements in the process, method, article, or system that includes the element.
[0113] The serial numbers of the above embodiments of the present application are for description only and do not represent the advantages or disadvantages of the embodiments.
[0114] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus the necessary general hardware platform, and of course can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) as described above, and includes a number of instructions for enabling a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods described in each embodiment of the present application.
[0115] The above are merely optional embodiments of the present application and do not limit the patent scope of the present application. Any equivalent structure or equivalent process transformation made using the contents of the present application specification and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present application.
Claims
1. A method for obtaining a software package, wherein: The software package obtaining method comprises the following steps: Obtain scenario files corresponding to user requirements for the software package; Obtaining a partial component package corresponding to the scene file from the full component package; The software package is obtained based on the partial component packages for downloading by the user.
2. The method for obtaining a software package according to claim 1, wherein: The fields corresponding to the user parameters in the user requirements are partially identical to the fields corresponding to the name identifier of the component package.
3. The method for obtaining a software package according to claim 2, wherein: The scene file at least includes a combined component package scene file; one combined component package scene file corresponds to multiple component packages in the partial component package; and the combined component package scene file is determined based on the user parameters.
4. The method for obtaining a software package according to claim 2, wherein: The component package includes a mandatory component package and an optional component package, the optional component package includes a basic business optional component package and an application, a dependency relationship is established between the basic business optional component package and the application, and the acquiring of a scenario file corresponding to a user demand for a software package includes: Determining the basic service optional component package based on the user's demand for the software package; Obtaining dependency parameters from the user requirements; A scenario file having a dependency declaration corresponding to the dependency parameter and a scenario file corresponding to the determined basic business optional component package are obtained; the dependency declaration is used to declare the dependency relationship.
5. The method for obtaining a software package according to any one of claims 2 to 4, wherein: The user requirement is obtained from the installation command input by the user.
6. The method for obtaining a software package according to any one of claims 2 to 4, wherein: The obtaining of user requirements for the software package includes: Displaying a main selection interface, and obtaining a first operation instruction of the user to perform a selection operation on the main selection interface; Displaying a sub-selection interface corresponding to the first operation instruction, and obtaining a second operation instruction for the user to perform a selection operation in the sub-selection interface; The first option corresponding to the first operation instruction and the second option corresponding to the second operation instruction are used as user requirements for the software package.
7. The method for obtaining a software package according to claim 5 or 6, wherein: The method further comprises: Obtain a resource file corresponding to the user requirement; Determining the hardware resources required for each target component package in the software package based on the one resource file; After the software package is installed, each of the hardware resources is consumed by the target component corresponding to the corresponding target component package during operation; the target component package includes a mandatory component package and a basic business optional component package.
8. The method for obtaining a software package according to claim 7, wherein: After determining the hardware resources required by each target component package in the software package based on the one resource file, the method includes: The quantity of the hardware resources is displayed to the user.
9. An electronic device, wherein: The electronic device comprises: a memory, a processor, and a software package obtaining program stored in the memory and executable on the processor, wherein the software package obtaining program is configured to implement the steps of the software package obtaining method according to any one of claims 1 to 8.
10. A computer-readable storage medium, wherein: The computer-readable storage medium stores a software package acquisition program, which, when executed by a processor, implements the steps of the software package acquisition method according to any one of claims 1 to 8.
Citation Information
Patent Citations
Service system development method and device, electronic equipment and storage medium
CN110851114A
Internet-of-things system determination method and device, electronic equipment and storage medium
CN112040014A
Software product distribution method and device in multi-cloud scene, equipment and storage medium
CN112463181A
Component packaging method and device, equipment and storage medium
CN115729572A
Functional software package assembling method and device, electronic equipment and storage medium
CN116521186A