Disclosure of Invention
The embodiment of the application provides a description file generation method and a computer program product, which at least can solve the problem that the generation modes and specification formats of different software resources are difficult to unify in the continuous delivery process.
In order to achieve the above purpose, the embodiment of the present application adopts the following technical scheme:
The method comprises the steps of displaying an information input interface, wherein the information input interface is used for inputting description information of software resources to be deployed, responding to operation of the information input interface to obtain the description information of the software to be deployed, generating the description file based on the description information of the software resources to be deployed, and indicating configuration information of the software resources to be deployed and supporting automatic deployment of the software resources to be deployed.
According to the method for generating the description file, provided by the embodiment of the application, the user can input the description information of the software resource to be deployed according to the indication of the interface by providing the information input interface. And furthermore, a description file is generated based on the description information, so that automatic deployment of the software resource to be deployed based on the description file is facilitated. It can be seen that, in the embodiment of the application, through the mode of interface display, the user is limited to configure description information in the process of deploying software resources, so that software resources with different sources and different developers can all configure the software resources according to the content specified by the information input interface to generate description files with uniform formats, the generation mode and the unification of standard formats of different software resources in the continuous delivery process are ensured, and the continuous delivery efficiency is further improved.
In combination with the first aspect, in one implementation manner, the information input interface comprises at least one of an interface for inputting basic information of the software resource to be deployed, the basic information being used for indicating a system module to which the software resource to be deployed belongs, an interface for inputting upgrade related information of the software resource to be deployed, and an interface for inputting initialization related information of the software resource to be deployed.
In combination with the first aspect, in one implementation, the input parameters included in the interface of the basic information correspond to at least one field in the description file, including a system name, a module name, whether health checking is required, whether synchronous deployment is required, a software version, a Central Processing Unit (CPU) use restriction, a memory use restriction, and Docker mirror image information.
In combination with the first aspect, in one embodiment, the input parameters included in the interface of the upgrade-related information correspond to at least one field in the description file that describes specific information that depends on the resource during the upgrade process and describes the type of the resource that depends on the upgrade process.
In combination with the first aspect, in one embodiment, the input parameters included in the interface of the related information for initializing correspond to at least one field in the description file, which describes specific information of the dependent resource in the initializing process and describes the type of the dependent resource in the initializing process.
With reference to the first aspect, in one implementation, the content of the specific information dependent on the resource and the value of the type dependent on the resource are generated according to a content format specified by the resource management software package.
With reference to the first aspect, in one implementation manner, the information input interface is further used for uploading a file of the software resource to be deployed, and the description file is further used for indexing the file of the software resource to be deployed.
With reference to the first aspect, in an implementation manner, the method further comprises uploading the description file to a code base of the target system, so that a server where the target system is located runs software resources to be deployed based on the description file, and the software resources to be deployed are used for adding functions to the target system or updating existing functions.
With reference to the first aspect, in one embodiment, the format of the description file is YAML format or extensible markup language XML format.
The second aspect provides a description file generation device, which comprises a display module, an acquisition module, a generation module and a description file generation module, wherein the display module is used for displaying an information input interface, the information input interface is used for inputting description information of software resources to be deployed, the acquisition module is used for responding to operation of the information input interface to acquire the description information of the software resources to be deployed, the generation module is used for generating the description file based on the description information of the software resources to be deployed, and the description file is used for indicating configuration information of the software resources to be deployed and supporting automatic deployment of the software resources to be deployed.
In some embodiments, the information input interface comprises at least one of an interface for inputting basic information of the software resource to be deployed, the basic information being used for indicating a system module to which the software resource to be deployed belongs, an interface for inputting upgrade related information of the software resource to be deployed, and an interface for inputting initialization related information of the software resource to be deployed.
In some embodiments, the input parameters included in the interface of the basic information correspond to at least one field in the description file, including a system name, a module name, whether health checking is required, whether synchronous deployment is required, a software version, a CPU usage limit, a memory usage limit, and Docker mirror information.
In some embodiments, the input parameters included in the interface of the upgrade-related information correspond to at least one field in the description file that describes specific information of the dependent resource in the upgrade process and describes the type of the dependent resource in the upgrade process.
In some embodiments, the input parameters included in the interface of the initialization related information correspond to at least one field in the description file describing specific information of the dependent resource in the initialization process and describing the type of the dependent resource in the initialization process.
In some embodiments, the content of the specific information of the dependent resource and the value of the type of the dependent resource are generated according to a content format specified by the resource management software package.
In some embodiments, the information input interface is further configured to upload a file of the software resource to be deployed, and the description file is further configured to index the file of the software resource to be deployed.
In some embodiments, the apparatus further comprises an upload module. And uploading the description file to a code base of a target system so that a server where the target system is located runs the software resources to be deployed based on the description file, wherein the software resources to be deployed are used for adding functions to the target system or updating existing functions.
In a third aspect, there is provided an electronic device comprising a processor and a memory for storing computer-executable instructions that, when the electronic device is in operation, are executed by the processor to cause the electronic device to perform the method as described in the first aspect above.
In a fourth aspect, there is provided an electronic device comprising a processor, the processor being arranged to perform the method according to the first aspect described above in dependence on instructions in a memory after being coupled to the memory and reading the instructions in the memory.
In a fifth aspect, a computer readable storage medium is provided, having instructions stored therein, which when run on a computer, cause the computer to perform the method of the first aspect described above.
In a sixth aspect, there is provided a computer program product containing instructions which, when run on a computer, enable the computer to perform the method of the first aspect described above.
The technical effects of any one of the design manners of the second aspect to the sixth aspect may be referred to the technical effects of the different design manners of the first aspect, and will not be repeated here.
Detailed Description
In the description of embodiments of the present application, the terminology used in the embodiments below is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. As used in the specification of the present application and the appended claims, the singular forms "a," "an," "the," and "the" are intended to include, for example, "one or more" such forms of expression, unless the context clearly indicates to the contrary. It should also be understood that in the following embodiments of the present application, "at least one", "one or more" means one or more than two (including two). The term "and/or" is used to describe an associative relationship of associative objects, and indicates that three relationships may exist, for example, a and/or B may indicate that a exists alone, while a and B exist together, and B exists alone, where A, B may be singular or plural. The character "/" generally indicates that the context-dependent object is an "or" relationship.
Reference in the specification to "one embodiment" or "some embodiments" or the like means that a particular feature, structure, or characteristic described in connection with the embodiment is included in one or more embodiments of the application. Thus, appearances of the phrases "in one embodiment," "in some embodiments," "in other embodiments," and the like in the specification are not necessarily all referring to the same embodiment, but mean "one or more but not all embodiments" unless expressly specified otherwise. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless expressly specified otherwise. The term "coupled" includes both direct and indirect connections, unless stated otherwise. The terms "first," "second," and the like are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or implicitly indicating the number of technical features indicated.
In embodiments of the application, words such as "exemplary" or "such as" are used to mean serving as an example, instance, or illustration. Any embodiment or design described herein as "exemplary" or "e.g." in an embodiment should not be taken as preferred or advantageous over other embodiments or designs. Rather, the use of words such as "exemplary" or "such as" is intended to present related concepts in a concrete fashion.
Technical terms designed according to the embodiment of the present application are explained below.
1. Sustained delivery refers to the automatic deployment of source code into a pre-production environment, ensuring that new changes are quickly released to users in a sustainable manner.
2. Software resources, which may also be referred to as software resource dependencies, software peripheral matches, and the like. What is meant in embodiments of the present application is libraries, frameworks, services, data, etc., that are required for the development and operation of a software system/project.
As described in the background, development and operation of the system is accompanied by support of various software resources during the continuous delivery process. However, because the sources of different software resources are different, developers are different, and therefore, the problem that the generation mode and the standard format are difficult to unify is faced with various software resources in the continuous delivery process, which affects the development efficiency of the system.
Based on the description file generation method provided by the embodiment of the application, by providing the information input interface, a user can input the description information of the software resource to be deployed according to the indication of the interface. And furthermore, a description file is generated based on the description information, so that automatic deployment of the software resource to be deployed based on the description file is facilitated. It can be seen that, in the embodiment of the application, through the mode of interface display, the user is limited to configure description information in the process of deploying software resources, so that software resources with different sources and different developers can all configure the software resources according to the content specified by the information input interface to generate description files with uniform formats, the generation mode and the unification of standard formats of different software resources in the continuous delivery process are ensured, and the continuous delivery efficiency is further improved.
The description file generation method provided by the application can be applied to an application environment shown in fig. 1. As shown in fig. 1, the application environment may include an electronic device 101 and a deployment server 102. The personal computer 101 and the deployment server 102 are connected to each other.
The electronic device 101 may be a terminal device such as a personal computer, a mobile phone, or a notebook computer, and has a display interface, so that a user can develop software on the electronic device 101. Fig. 1 illustrates a personal computer.
Wherein, the deployment server 102 may be a server cluster formed by a plurality of servers, or a single server, or a computer. The embodiment of the application does not limit the specific equipment form of the server. A single server is illustrated in fig. 1.
In some embodiments, the electronic device 101 may display an information input interface for inputting descriptive information of the software resource to be deployed. Further, the electronic device 101 obtains description information in response to a user operation on the information input interface, and generates a description file based on the description information. Finally, the electronic device 101 may complete the automated deployment of the software to be deployed on the deployment server 102 based on the description file.
Fig. 2 is a flow chart of a method for generating a description file according to an embodiment of the present application. As shown in fig. 2, the method for generating a description file provided by the present application may be implemented by the electronic device 101, and specifically includes the following steps:
s201, displaying an information input interface.
The information input interface is used for inputting description information of the software resources to be deployed.
In some embodiments, when a developer has a need to deploy software resources, the electronic device may be operated to cause the electronic device to display an information input interface. Such as a user entering an instruction to open an information input interface, etc.
For example, an information input interface may be provided for a developer according to the platform provided by the intellj idea development tool, and the user obtains the description information of the software resource to be deployed. intellj idea is a widely used integrated development environment, specially designed for improving the productivity and code quality of developers, and provides powerful debugging tools, version control integration and rich plug-in ecosystems, so that the developers can expand and customize the functions according to the needs.
In some embodiments, the information input interface includes at least one of:
And the interface is used for inputting basic information of the software resources to be deployed, wherein the basic information is used for indicating a system module to which the software resources to be deployed belong.
And the interface is used for inputting the upgrade related information of the software resource to be deployed.
And the interface is used for inputting the initialization related information of the software resources to be deployed.
The upgrade related information is used for describing deployment information of upgrade aspects, such as deployment information configured when a certain function of the target system is upgraded in version. The initialization related information is used for describing the deployment information in the initialization aspect, such as the deployment information configured when a certain function is added to the target system.
In some embodiments, the input parameters included in the interface of the base information correspond to at least one of the following fields in the description file:
A system name (systemname);
A module name (modulename);
whether a health check is required;
Whether synchronous deployment is required;
Software version (version);
a central processing unit (central processing unit, CPU) use limit (limitCPU);
memory usage limitations (limitMemory);
docker mirror information (dockerImage).
Wherein the system name may be the name of the software system. A module name may be the name of a certain module in a software system (a system may comprise a plurality of modules, e.g. corresponding to different functions). Health inspection refers to the regular or real-time monitoring and evaluation of the running state of a software resource after the software resource is deployed in a production environment, so as to ensure that the software resource can run normally and meet business requirements. Synchronous deployment refers to synchronizing the latest version or updated content of a software resource into a specified deployment environment during a continuous delivery process. Software version at least the current development version of the software resource. The CPU usage limit and the memory usage limit indicate the maximum computer resources that the software resource can occupy when running. The Docker image includes various content required to run the software resource, and Docker image information is used to describe the relevant content.
In some embodiments, the input parameters included in the interface of the upgrade-related information correspond to at least one of the following fields in the description file:
Specific information (peripheral specific information) which is dependent on resources in the upgrading process is described;
The type of the dependent resource (type of the perimeter) in the upgrade process is described.
In some embodiments, the input parameters included in the interface for initializing the related information correspond to at least one of the following fields in the description file:
specific information of depending resources in the initialization process is described;
The type of dependent resource in the initialization process is described.
Among other types of dependent resources, as referred to herein, may include database configuration, network configuration, routing configuration, and the like.
In some embodiments, the values of the specific information that depends on the resource and the values of the type that depends on the resource are generated according to a content format specified by the resource management software package.
It should be noted that the resource management software package is essentially a jar package, in which multiple resource models are maintained, and each resource model has its specific data structure and behavior pattern. The specific information of the dependent resources and the types of the dependent resources are generated according to the regulations of the resource management software package, so that the content which needs to be input by the dependent resources can be effectively normalized, and the unification of the specifications of the follow-up generated description files is ensured.
By way of example, each resource model in the resource management software package may include at least one field that is a name for representing the name of the resource model. expose to indicate whether the resource model is disclosed or exposed to external use. type, which indicates the type of data or class of objects in the resource model. markettagld for uniquely identifying the resource model as being in a market tag or class. formclass for representing class names associated with the forms. Form classes are commonly used to encapsulate form data, including validation rules, data transformation logic, and the like.
As an example, the dependent resources in the initialization process and the upgrade process described above may include polarDB, nacos configurations, fizz routing, application authentication, menu data, event data, rocketMQ, websocket, and the like. PolarDB is a relational database service, which adopts a distributed architecture and a storage and calculation separation technology, and has the characteristics of high performance, high availability, high elasticity, easy expansion and the like. Nacos is a dynamic service discovery, configuration management, and service management platform that makes it easier to build cloud-native applications. Fizz routing is a lightweight, high-performance application programming interface (application programinterface, API) gateway that provides powerful routing functions. Through the Fizz routing, a user can flexibly configure and manage the access path and forwarding rule of the API, and the decoupling of the service and the flexible scheduling of the traffic are realized. Application authentication refers to the process of authenticating and authorizing an application to ensure that the application has rights to access a particular resource or service. Menu data refers to data used in an application or web site to present and manipulate menu items. Event data refers to data generated by events occurring in an application or system. RocketMQ is a distributed messaging middleware for providing high performance, low latency messaging services. WebSocket is a protocol that enables full duplex communication over a single transmission control protocol (transmission control protocol, TCP) connection, making the exchange of data between a client and a server simpler and more efficient, without requiring continuous connection establishment and closure as in conventional hypertext transfer protocol (hypertext transfer protocol, HTTP) requests.
S202, responding to the operation of the information input interface, and obtaining the description information of the software to be deployed.
In some embodiments, when a developer has a need to deploy software resources, the electronic device may be operated to cause the electronic device to display an information input interface. The developer can operate on the information input interface, and sequentially input the description information of the software resources to be deployed according to the content specified by the information input interface.
S203, generating a description file based on the description information of the software resource to be deployed.
The description file is used for indicating configuration information of the software resources to be deployed and supporting automatic deployment of the software resources to be deployed.
In some embodiments, after the developer finishes inputting the information input interface, the electronic device may obtain the description information of the software to be deployed, and convert the description information into the description file to store the source code level.
In some embodiments, the description file may be in YAML format or extensible markup language (extensible markup language, XML) format.
The YAML format can represent various data structures, such as common values (numbers, character strings, boolean values, dates and the like), arrays, lists, sets and the like, so that the YAML can meet various complex configuration requirements, and the flexibility and the expandability of configuration are improved. In addition, YAML supports representing sequences (lists) and mappings in a language-independent manner, which allows YAML files to be easily migrated between multiple programming languages.
XML can store and transfer data in a structured form, and the hierarchy and the relation of the data are specified clearly through labels, so that the data are clearer and more understandable. The structure of the XML file can be customized according to the needs, has high flexibility and expansibility, and can realize high-efficiency sharing and exchange of data between different operating systems through XML.
Optionally, the description file may also be in a text format such as word, txt, etc.
In some embodiments, the information input interface is further configured to upload a file of the software resource to be deployed, and the description file is further configured to index the file of the software resource to be deployed.
That is, the information input interface may further upload the attachment, after the developer uploads the attachment and generates the description file, the electronic device may save the attachment in the designated storage location, and record the address of the storage location in the description file, so that in the subsequent software resource deployment process based on the description file, the attachment may be accessed based on the address, so as to complete deployment depending on the attachment.
For example, fig. 3 is a schematic diagram of an information input interface according to an embodiment of the present application. As shown in fig. 3, an information input interface is displayed for a developer to construct resource dependencies, i.e., to configure description information of the software resources to be deployed. The interface for inputting basic information is included in fig. 3, and a developer can sequentially input information such as a system name, a module name, a version, synchronous deployment, health check, CPU limitation, memory limitation and the like according to the requirement of the interface. In addition, when the function related to the initialization of the configuration is required, the left initialization control in fig. 3 can be clicked to configure various parameters subordinate to the left initialization control. When the upgrade related function is required to be configured, the upgrade control on the left side in fig. 3 can be clicked to configure various parameters subordinate to the upgrade control. After the configuration is completed, the developer can click on the ok control at the lower right corner in fig. 3, and then the electronic device converts the information input by the developer into a description file for storing the source code level. Meanwhile, in the case that the form contains the attachment, the electronic device also saves the attachment at the designated storage location and records the location in the description file.
It can be understood that the information input interface specifies what content is required, when different developers can sequentially input related information according to the same information input interface when deploying the software resources, and the electronic device can generate description files with uniform formats for the software resources from different sources according to the input content so as to ensure the uniformity of the generation mode and the standard format of the software resources in the continuous delivery process.
In some embodiments, as shown in fig. 4, the method for generating a description file provided in the embodiment of the present application further includes:
S204, uploading the description file to a code base of the target system, so that a server where the target system is located runs the software resource to be deployed based on the description file.
The software resource to be deployed is used for adding functions to the target system or updating existing functions.
It should be noted that, the target system is generally deployed in a separate server independently, so as to continuously provide services to the user. In a continuous delivery scenario, when a developer needs to update a function of a target system (such as adding a new function or performing a version upgrade on an original function), a description file may be generated on a personal computer and uploaded to a code base of the target system through the personal computer. Furthermore, the server (deployment server in fig. 1) where the target system is located may parse the description file, obtain related information (such as an attachment storage location, a network configuration, and a database configuration) of the software resource to be deployed, and perform deployment of the running software resource to generate a resource object and perform initialization of a corresponding model, so as to achieve that various contents required by the software resource to be deployed are ready and initialized to an expected state.
For example, a developer needs to newly deploy a web application (to-be-deployed software resource) on a target system, and a database and a storage space are needed to store files uploaded by a user. The server of the target system creates a new database instance based on the description file corresponding to the network element application program, configures a user name and a password, and creates a database table. Then, a new storage space is created, access rights are configured, and lifecycle rules are set. Based on the description file, the dependency libraries required for the web application are downloaded and installed, and the environment variables are configured to point to the database and storage space. Finally, it is detected that the database and the storage space are properly configured and accessible through the application. And the initialization state of the corresponding model is finished, and the software resources to be deployed are deployed.
Through continuous delivery, the quick online of the software resources to be deployed can be realized, and the steps of manual participation are saved. The developer only needs to configure and generate the description file, the subsequent server can automatically complete downloading, installing and configuring of related contents according to the description file, and the online deployment is performed after the test is correct, so that the efficiency of software development is improved.
According to the method for generating the description file, provided by the embodiment of the application, the user can input the description information of the software resource to be deployed according to the indication of the interface by providing the information input interface. And furthermore, a description file is generated based on the description information, so that automatic deployment of the software resource to be deployed based on the description file is facilitated. It can be seen that, in the embodiment of the application, through the mode of interface display, the user is limited to configure description information in the process of deploying software resources, so that software resources with different sources and different developers can all configure the software resources according to the content specified by the information input interface to generate description files with uniform formats, the generation mode and the unification of standard formats of different software resources in the continuous delivery process are ensured, and the continuous delivery efficiency is further improved.
It may be understood that, in order to implement the above-mentioned functions, the electronic device provided in the embodiment of the present application includes corresponding hardware structures and/or software modules for executing each function. Those of skill in the art will readily appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as hardware or combinations of hardware and computer software. Whether a function is implemented as hardware or computer software driven hardware depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the embodiments of the present application.
The embodiment of the application can divide the functional modules of the electronic device according to the method example, for example, each functional module can be divided corresponding to each function, or two or more functions can be integrated in one processing module. The integrated modules may be implemented in hardware or in software functional modules. It should be noted that, in the embodiment of the present application, the division of the modules is schematic, which is merely a logic function division, and other division manners may be implemented in actual implementation.
In an exemplary embodiment, the embodiment of the application further provides a device for generating the description file. The description file generating device may include one or more functional modules, configured to implement the description file generating method of the above method embodiment.
For example, fig. 5 is a schematic diagram of a description file generating device according to the present application. As shown in fig. 5, the description file generating apparatus includes a display module 501, an acquisition module 502, and a generation module 503.
The display module 501 is used for displaying an information input interface, wherein the information input interface is used for inputting description information of software resources to be deployed;
The obtaining module 502 is configured to obtain description information of software to be deployed in response to an operation on the information input interface;
The generating module 503 is configured to generate a description file based on the description information of the software resource to be deployed, where the description file is used to indicate configuration information of the software resource to be deployed and is used to support automatic deployment of the software resource to be deployed.
In some embodiments, the information input interface comprises at least one of an interface for inputting basic information of the software resource to be deployed, the basic information being used for indicating a system module to which the software resource to be deployed belongs, an interface for inputting upgrade related information of the software resource to be deployed, and an interface for inputting initialization related information of the software resource to be deployed.
In some embodiments, the input parameters included in the interface of the base information correspond to at least one field in the description file that includes a system name, a module name, whether a health check is required, whether synchronous deployment is required, a software version, a CPU usage limit, a memory usage limit, and Docker mirror information.
In some embodiments, the input parameters included in the interface of the upgrade-related information correspond to at least one field in the description file describing specific information that is dependent on the resource during the upgrade process and describing the type of the resource that is dependent on the upgrade process.
In some embodiments, the input parameters included in the interface for initializing the related information correspond to at least one field in the description file describing specific information that depends on the resource during the initialization process and describing the type of the resource that depends on the initialization process.
In some embodiments, the content of the specific information that depends on the resource and the value of the type of the dependent resource are generated according to a content format specified by the resource management software package.
In some embodiments, the information input interface is further configured to upload a file of the software resource to be deployed, and the description file is further configured to index the file of the software resource to be deployed.
In some embodiments, the apparatus further comprises an upload module 504. Uploading the description file to a code base of the target system, so that a server where the target system is located runs software resources to be deployed based on the description file, wherein the software resources to be deployed are used for adding functions to the target system or updating existing functions.
In one example, please refer to fig. 6, which shows a possible structural schematic diagram of the electronic device involved in the above embodiment. The electronic device 600 comprises a processing unit 610 and a storage unit 620.
The processing unit 610 is configured to control and manage an action of the electronic device 600. The storage unit 620 is used for storing program codes and data of the electronic device 600, and the processing unit 610 calls the program codes stored in the storage unit 620 to perform the steps in the above method embodiments.
Of course, the unit modules in the electronic device 600 include, but are not limited to, the processing unit 610 and the storage unit 620. For example, the electronic device 600 may further include a display unit, a communication unit, a power supply unit, and the like. The display unit is used to display a user interface of the electronic device 600, for example, display application icons, display application interfaces, and the like. The communication unit is used for the electronic device 600 to communicate with other electronic devices, and the power supply unit is used for supplying power to the electronic device 600.
The processing unit 610 may be a processor or controller, such as a central processing unit (central processing unit, CPU), a graphics processor (graphics processing unit, GPU), a digital signal processor (DIGITAL SIGNAL processor, DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (field programmable GATE ARRAY, FPGA) or other programmable logic device, transistor logic device, hardware components, or any combination thereof. The storage unit 620 may be a memory. The display unit may be a display screen or the like.
For example, the processing unit 610 may be a processor, the storage unit 620 may be a memory, and the display unit may be a display screen. Wherein the processors, memory, display screen, etc. may be coupled together, for example, via a bus. The processor invokes the memory-stored program code to perform the steps in the method embodiments above.
Embodiments of the present application also provide a computer-readable storage medium including computer instructions which, when executed on an electronic device as described above, cause the electronic device to perform the functions or steps of the method embodiments described above.
Embodiments of the present application also provide a computer program product which, when run on a computer, causes the computer to perform the functions or steps of the method embodiments described above.
It will be apparent to those skilled in the art from this description that, for convenience and brevity of description, only the above-described division of the functional modules is illustrated, and in practical application, the above-described functional allocation may be performed by different functional modules according to needs, i.e. the internal structure of the apparatus is divided into different functional modules to perform all or part of the functions described above.
In the several embodiments provided by the present application, it should be understood that the disclosed apparatus and method may be implemented in other manners. For example, the apparatus embodiments described above are merely illustrative, e.g., the division of the modules or units is merely a logical functional division, and there may be additional divisions when actually implemented, e.g., multiple units or components may be combined or integrated into another apparatus, or some features may be omitted, or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or units, which may be in electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and the parts displayed as units may be one physical unit or a plurality of physical units, may be located in one place, or may be distributed in a plurality of different places. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in the embodiments of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a readable storage medium. Based on such understanding, the technical solution of the embodiments of the present application may be essentially or a part contributing to the prior art or all or part of the technical solution may be embodied in the form of a software product stored in a storage medium, including several instructions for causing a device (may be a single-chip microcomputer, a chip or the like) or a processor (processor) to perform all or part of the steps of the method described in the embodiments of the present application. The storage medium includes a U disk, a removable hard disk, a Read Only Memory (ROM), a random access memory (random access memory, RAM), a magnetic disk, an optical disk, or other various media capable of storing program codes.
The foregoing is merely illustrative of specific embodiments of the present application, but the scope of the present application is not limited thereto, and any changes or substitutions within the technical scope of the present application should be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.