Cloud application based plug-in management method and apparatus
By storing application and plugin files in storage units and mounting them via virtual machine instances, the complexity of adjusting cloud application plugins is solved, enabling dynamic updates and real-time adjustments of plugins and simplifying the operation process.
Patent Information
- Application Number
- CN202310130168.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-02-03
- Publication Date
- 2025-10-21
- Estimated Expiration
- 2043-02-03
AI Technical Summary
In existing technologies, adjusting cloud application plugins requires recreating image files, which complicates the process and makes it difficult to achieve dynamic updates and real-time adjustments to plugins.
By storing application and plugin files in storage units and mounting these files through virtual machine instances, and avoiding including them directly in the image file, adjustments can be made only by changing the mount relationships when necessary, reducing the need to download and recreate the image file.
It simplifies the adjustment process of cloud applications and their plugins, reduces management complexity, and enables dynamic updates and real-time adjustments of plugins without the need to recreate image files.
Smart Images

Figure CN116302174B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to computer technology, and in particular to a plug-in management method and device based on cloud applications. Background Art
[0002] Cloud applications transform the traditional software usage mode of "local installation and local calculation" into a "ready-to-use" service. It can connect to and control remote server clusters through the Internet or local area network to complete business logic or computing tasks.
[0003] Many applications provide services through basic software and plug-ins. Plugins can optimize application operations and improve efficiency, and cloud applications are no exception. Currently, when providing cloud applications to users, the basic software and plug-ins are typically downloaded and installed in a virtual machine in advance. The installed virtual machine is then created as an image file for users to use the cloud application.
[0004] However, the implementation method described above often requires re-making the image when the plug-in or application needs to be adjusted, which makes the operation of adjusting the plug-in and application more complicated. Summary of the Invention
[0005] The embodiments of the present application provide a plug-in management method and apparatus based on cloud applications to overcome the problem of complex plug-in adjustment and application operation in cloud applications.
[0006] In a first aspect, an embodiment of the present application provides a plug-in management method based on cloud applications, comprising:
[0007] Creating an application image file according to the image creation request, wherein the application image file includes an application identifier of at least one target application and a plug-in identifier of at least one target plug-in;
[0008] Creating a virtual machine instance according to a delivery request for the application image file, wherein the delivery request is used to request allocation of the target application and the target plug-in to at least one target object, and the virtual machine instance is used to run the target application and the target plug-in;
[0009] According to the application image file, the application file corresponding to the target application and the plug-in file corresponding to the target plug-in stored in the storage unit are mounted in the virtual machine instance.
[0010] In a second aspect, an embodiment of the present application provides a plug-in management device based on cloud applications, comprising:
[0011] A creation module, configured to create an application image file according to an image creation request, wherein the application image file includes an application identifier of at least one target application and a plug-in identifier of at least one target plug-in;
[0012] The creation module is further configured to create a virtual machine instance according to a delivery request for the application image file, wherein the delivery request is used to request allocation of the target application and the target plug-in to at least one target object, and the virtual machine instance is used to run the target application and the target plug-in;
[0013] The transceiver module is used to mount the application file corresponding to the target application and the plug-in file corresponding to the target plug-in stored in the storage unit in the virtual machine instance according to the application image file.
[0014] In a third aspect, an embodiment of the present application provides an electronic device, including:
[0015] Memory, used to store programs;
[0016] A processor is used to execute the program stored in the memory. When the program is executed, the processor is used to execute the method described in the first aspect and any one of the various possible designs of the first aspect.
[0017] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium comprising instructions, which, when executed on a computer, enables the computer to execute the method described in the first aspect and any one of the various possible designs of the first aspect.
[0018] In a fifth aspect, an embodiment of the present application provides a computer program product, including a computer program, which, when executed by a processor, implements the method described in the first aspect and any of the various possible designs of the first aspect.
[0019] An embodiment of the present application provides a plug-in management method and device based on cloud applications, the method comprising: creating an application image file according to an image creation request, wherein the application image file includes an application identifier of at least one target application and a plug-in identifier of at least one target plug-in. Creating a virtual machine instance according to a delivery request for the application image file, wherein the delivery request is used to request the allocation of a target application and a target plug-in to at least one target object, and the virtual machine instance is used to run the target application and the target plug-in. According to the application image file, the application file corresponding to the target application and the plug-in file corresponding to the target plug-in stored in the storage unit are mounted in the virtual machine instance. By only creating an application image file including an application identifier and a plug-in identifier upon receiving an image creation request, and then mounting the application file corresponding to the target application and the plug-in file corresponding to the target plug-in in the virtual machine instance according to the application image file, it is possible to achieve that when adjusting the basic software and plug-ins of the cloud application, the file mounting relationship can be simply changed without having to perform a series of complex operations such as downloading, installing, and remaking the image file, thereby effectively reducing the complexity of adjusting the cloud application and its plug-ins. BRIEF DESCRIPTION OF THE DRAWINGS
[0020] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, a brief introduction will be given below to the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.
[0021] Figure 1 A schematic diagram of a scenario of a cloud application and plug-in management method provided in an embodiment of the present application;
[0022] Figure 2 A schematic diagram of implementing the re-creation of an image file provided in an embodiment of the present application;
[0023] Figure 3 A flowchart of a plug-in management method based on cloud applications provided in an embodiment of the present application;
[0024] Figure 4 A schematic diagram of the configuration interface of the application and plug-in provided in the embodiment of the present application;
[0025] Figure 5 The process of the plug-in management method based on cloud application provided in the embodiment of this application Figure 2 ;
[0026] Figure 6 System diagram of the file cloud service platform provided for this application example;
[0027] Figure 7A processing sequence diagram of the configuration plug-in and application provided in an embodiment of the present application;
[0028] Figure 8 A processing sequence diagram of the adjustment plug-in and application provided in an embodiment of the present application;
[0029] Figure 9 The process of the plug-in management method based on cloud application provided in the embodiment of this application Figure 3 ;
[0030] Figure 10 A schematic diagram of the structure of a plug-in management device based on cloud applications provided in an embodiment of the present application;
[0031] Figure 11 A schematic diagram of the hardware structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0032] To make the purpose, technical solutions, and advantages of the embodiments of this application more clear, the technical solutions in the embodiments of this application will be clearly and completely described below in conjunction with the drawings in the embodiments of this application. Obviously, the described embodiments are part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0033] In order to better understand the technical solution of this application, the relevant concepts and terms involved in this application are first explained below.
[0034] Application image: refers to a logical image that contains a series of applications and plug-ins. It can be located in a VHD file on NAS (Network Attached Storage) storage based on the application and plug-in information.
[0035] Application instance: Specifically refers to making a certain software into a VHD file, mounting it on an instance in the cloud server, and running the software on the cloud to provide it to users.
[0036] Delivery Group: A logical grouping of cloud applications delivered to end users, including the underlying cloud application resources, the image containing the cloud application, resource management policies, and user allocation settings.
[0037] Application package: Each application package is an independent vhd format file, which contains application files, registry files and some auxiliary files. It will be directly mounted to the system when running.
[0038] In order to better understand the technical solution of this application, the relevant technologies involved in this application are further introduced in detail below.
[0039] Cloud applications transform the traditional software usage model, which requires "local installation and local computing," into a "ready-to-use" service. Cloud applications can connect to and control remote server clusters through the Internet or local area network to complete business logic or computing tasks, helping enterprises significantly reduce usage costs and improve work efficiency.
[0040] For example, you can combine Figure 1 Understand cloud applications, Figure 1 A schematic diagram of a scenario for the cloud application and plug-in management method provided in an embodiment of the present application.
[0041] like Figure 1 As shown, users can access the cloud through terminal devices, and the cloud can provide cloud application related services to the terminal devices, among which the desktop of the terminal device can be understood as the cloud desktop.
[0042] exist Figure 1 In the example shown, there are application A, application B, and application C on the desktop of the terminal device. For example, if these three applications are cloud applications, then the user does not need to install these applications on the terminal device. Instead, the user accesses the cloud through the network. The cloud provides the terminal device with corresponding processing of these applications to realize ready-to-use cloud application services in the terminal device.
[0043] Many popular applications currently use a combination of base software and plug-ins to provide services. The base software provides the application's basic services, while the plug-ins add additional services and operations on top of these basic services. A plug-in is a program written using a standardized application programming interface (API). It can only run on the system platform specified by the program (which may support multiple platforms simultaneously) and cannot run independently of the specified platform. Many software programs have plug-ins, and there are many different types of plug-ins.
[0044] Plug-ins can be understood as auxiliary software for applications, which are used to optimize the operation of applications and improve operational efficiency. If you only use the basic software of the application itself without installing plug-ins, the experience of many applications will be greatly reduced.
[0045] In the current related technology, when managing plug-ins, the required applications and plug-ins are usually downloaded and installed in advance in the virtual machine instance created in the cloud, and the virtual machine instance with the installed applications and plug-ins is made into an image file to provide users with cloud application services.
[0046] This section briefly explains virtual machine instances. These instances can be understood as cloud server instances, and each cloud server instance is equivalent to a virtual machine. An instance includes basic computer components such as a vCPU (virtual central processing unit), memory, an operating system, a network, and disks. A virtual machine instance can be thought of as a complete, functional computer (virtual), allowing for easy customization and configuration changes. A virtual machine instance is the smallest unit of computing server that can be used for business purposes. Different instance specifications provide varying computing capabilities.
[0047] The above-mentioned method of installing basic software and plug-ins in a virtual machine instance and making the installed virtual machine instance into an image file to provide cloud application processing is very difficult to add plug-ins or upgrade plug-ins. For example, Figure 2 To understand, Figure 2 A schematic diagram of the implementation of reproducing the image file provided in an embodiment of the present application.
[0048] like Figure 2 As shown in the example, suppose a user needs to use application A and version 1.0 of its corresponding plug-in α on a terminal device. For example, the cloud creates a cloud server instance to meet this requirement and installs application A and version 1.0 of plug-in α on the virtual machine instance. The cloud then creates an image file containing the instance of application A and version 1.0 of plug-in α and publishes the application to the terminal device, thereby providing the corresponding service to the terminal device.
[0049] However, later on, for example, if the user no longer needs version 1.0 of plug-in α, but instead needs version 2.0 of plug-in α, the cloud needs to install version 2.0 of plug-in α in the virtual machine instance, and re-create the virtual machine instance including application A and version 2.0 of plug-in α as an image file, and then publish the application to the terminal device to provide corresponding services to the terminal device.
[0050] Therefore, based on the above introduction, it can be determined that in the current implementation method, any update to the plug-in, such as updating the plug-in version or adding a new plug-in, requires re-making the image file and re-releasing the application, which makes the implementation process of adjusting the plug-in very complicated.
[0051] In response to the problems in the existing technology, this application proposes the following technical concept: The reason why the current adjustment of plug-ins and applications is complicated is that the plug-ins and applications are installed in the virtual machine instance and then the image file is created. In this way, the plug-ins and applications are included in the image file. Therefore, to adjust the plug-ins and applications, it is naturally necessary to re-create the image file. If the plug-in and application files can be placed in a storage unit, and then the relevant application files and plug-in files in the storage unit are mounted to provide the corresponding functions, it is possible to avoid directly including the application and plug-in in the image file. When the plug-in and application need to be adjusted, only the mounting relationship needs to be adjusted. Therefore, dynamic updates and real-time adjustments of the plug-in can be achieved without re-creating the image and publishing the cloud application, thereby effectively reducing the management complexity of the plug-in and application.
[0052] Based on the above introduction, the following detailed description of the cloud application-based plug-in management method provided by this application is provided in conjunction with specific embodiments. The various embodiments of this application can be applied to a cloud service platform, where the hardware execution entity corresponding to the cloud service platform can be, for example, a cloud server, processor, chip, or other device. This embodiment does not limit the specific execution entity, as long as it is a cloud device with data processing capabilities.
[0053] First, combine Figure 3 and Figure 4 Make an introduction, Figure 3 This is a flowchart of a plug-in management method based on cloud applications provided in an embodiment of the present application. Figure 4 This is a schematic diagram of the configuration interface of the application and plug-in provided in the embodiment of the present application. Figure 3 As shown, the method includes:
[0054] S301: Create an application image file according to an image creation request, where the application image file includes an application identifier of at least one target application and a plug-in identifier of at least one target plug-in.
[0055] For example, a cloud service platform can receive image creation requests from terminal devices. In one possible implementation, when the cloud service platform is required to provide cloud application services, for example, a tenant administrator can configure the cloud application through the terminal device and then push the configured cloud application data directly to the target user's cloud desktop. The tenant administrator can, for example, be a network administrator within an enterprise, and the target user to whom the cloud application is pushed can be an employee within the enterprise. Alternatively, the tenant administrator can be an individual user, and the target user to whom the cloud application is pushed can also be the individual user.
[0056] Therefore, the image creation request in this embodiment can be sent by any person who needs to configure a cloud application through any terminal device. Alternatively, in an alternative implementation, the method and source of generating the image creation request can be selected and set according to actual needs, as long as the image creation request is used to request the generation of an application image file. The image creation request can include the application identifier of the application to be configured and the plug-in identifier of the plug-in.
[0057] For example, you can refer to Figure 4 To understand, such as Figure 4 As shown in the figure, the configuration interface can display the currently configurable applications and configurable plug-ins. For example, Figure 4 In the example, it is shown that the currently configurable applications include application A and application B, and the configurable plug-ins include version 1.0 of application A's plug-in α, version 2.0 of application A's plug-in α, application A's plug-in β, and so on.
[0058] The configuration personnel can then, for example, select the target application and plug-in within the configuration interface. After making their selections, they can, for example, use the submit control within the configuration interface to generate an image creation request. For example, if the configuration personnel needs to configure application A and version 1.0 of application A's plug-in α for certain objects, they can use this interface to generate an image creation request. The image creation request can include the identifiers of application A and version 1.0 of plug-in α. In actual implementation, the specific implementation of the configuration interface can be selected and configured based on actual needs.
[0059] The cloud can then create an application image file based on the image creation request. The application image file can include the application identifier of at least one application and the plugin identifier of at least one target plugin described above. The image file described in this embodiment is a logical concept that exists in the database, not a physical file. Therefore, the application image file can also be directly referred to as an application image.
[0060] For example, continuing with the example described above, the cloud creates an application image file in response to the image creation request. The application image file may include the identifier of application A and the identifier of version 1.0 of plug-in α.
[0061] It should be noted that some applications have plug-ins, while some applications do not. For applications without plug-ins, the tenant administrator can only configure this single application, so the application image file can only include at least one application identifier of the target application. For applications with plug-ins, the tenant administrator can configure the application and plug-in according to the implementation method described above, or can only configure a single application (that is, the plug-in exists but is not configured), so the application image file can only include at least one application identifier of the target application.
[0062] Therefore, it is understandable that the application image file will necessarily include the application identifier of the target application, but whether it will also include the plugin identifier of the target plugin depends on the actual needs of the user. Therefore, there are two situations in which the application image file can include the following: the application image file can include the application identifier of at least one target application and the plugin identifier of at least one target plugin, or the application image file can only include the application identifier of at least one target application.
[0063] In the actual implementation process, the specific implementation of the application identifier and plug-in identifier included in the application image file can be selected and set according to actual needs, which depends on which cloud applications and their corresponding plug-ins the operation configuration personnel need to configure for the corresponding objects.
[0064] S302: Create a virtual machine instance according to a delivery request for the application image file, where the delivery request is used to request allocation of a target application and a target plug-in to at least one target object, and the virtual machine instance is used to run the target application and the target plug-in.
[0065] After the application image file is created in the cloud, the cloud can, for example, obtain a delivery request for the application image file, where the delivery request can be sent by the configuration personnel through the terminal device, and the delivery request is used to request the allocation of the target application and target plug-in introduced above to at least one target object.
[0066] In one possible implementation, the target object could be, for example, a user account. This means that when configuring a cloud application, the configuration personnel assign it to a user account. Subsequently, any terminal device logged into with that user account can run the corresponding application and plug-in. Alternatively, the target object could be a user device. This means that when configuring a cloud application, the configuration personnel assign it to a device. The assigned user device can then run the corresponding application and plug-in. In actual implementation, the specific implementation of the target object can be selected and configured based on actual needs, depending on the method used to deliver and configure the cloud application.
[0067] In one possible implementation, the operation of the target application and the target plug-in in the terminal device requires the help of a virtual machine instance in the cloud. Therefore, after receiving the delivery request, the cloud in this embodiment can create a virtual machine instance so that after assigning the target application and the target plug-in to the target object, the device corresponding to the target object can run the corresponding target application and target plug-in through the virtual machine instance.
[0068] S303: Mount the application file corresponding to the target application and the plug-in file corresponding to the target plug-in stored in the storage unit in the virtual machine instance according to the application image file.
[0069] Based on the above introduction, it can be determined that the application image file created above only includes the application identifier of the target application and the plug-in identifier of the target plug-in, and does not involve the actual application files and plug-in files. When running the target application and target plug-in through a virtual machine instance, the actual files are required as data support.
[0070] In one possible implementation, the storage unit in this embodiment stores application files of each configurable application and plug-in files of each configurable plug-in. The cloud can mount the application files corresponding to the target application and the plug-in files corresponding to the target plug-in stored in the storage unit in the virtual machine instance based on the application image file.
[0071] Mounting refers to the process by which an operating system makes computer files and directories on a storage unit accessible to users through the computer's file system. In this embodiment, mounting the application files corresponding to the target application in the virtual machine instance is equivalent to remotely accessing the application files in the storage unit, and similarly, the plugin files of the target plugin.
[0072] It can be understood that after mounting the application files corresponding to the target application and the plug-in files corresponding to the target plug-in in the virtual machine instance, the terminal device that needs to run the cloud application can access the application files corresponding to the target application and the plug-in files corresponding to the target plug-in through the virtual machine instance, thereby realizing the running of the target application and the target plug-in in the terminal device that needs to run the cloud application, and realizing the service provision of the basic software and plug-in of the cloud application.
[0073] However, at the same time, because the image file in this embodiment only includes application identifiers and plug-in identifiers, the data support for specific applications and plug-ins is provided by files mounted by the virtual machine instance. Therefore, when the plug-in or application needs to be updated, it is only necessary to update the mounting relationship between the virtual machine instance and the corresponding files in the storage unit, without the need to re-download and install, and then re-create the image file.
[0074] The plug-in management method based on cloud applications provided in an embodiment of the present application includes creating an application image file according to an image creation request sent by a first terminal device, wherein the application image file includes an application identifier of at least one target application and a plug-in identifier of at least one target plug-in. Creating a virtual machine instance according to a delivery request for the application image file, wherein the delivery request is used to request the allocation of a target application and a target plug-in to at least one target object, and the virtual machine instance is used to run the target application and the target plug-in. According to the application image file, the application file corresponding to the target application and the plug-in file corresponding to the target plug-in stored in the storage unit are mounted in the virtual machine instance. By only creating an application image file including an application identifier and a plug-in identifier upon receiving the image creation request, and then mounting the application file corresponding to the target application and the plug-in file corresponding to the target plug-in in the virtual machine instance according to the application image file, it is possible to achieve that when adjusting the basic software and plug-ins of the cloud application, the file mounting relationship can be simply changed without having to perform a series of complex operations such as downloading, installing, and remaking the image file, thereby effectively reducing the complexity of adjusting the cloud application and its plug-ins.
[0075] Based on the above introduction, the cloud service platform can include multiple processing units, each of which plays a different role. The following is based on the role of each unit and combined with Figures 5 and 6 This paper further introduces the cloud application-based plug-in management method provided by this application. Figure 5 The process of the plug-in management method based on cloud application provided in the embodiment of this application Figure 2 , Figure 6 System diagram of the file cloud service platform provided for this application example.
[0076] like Figure 5 As shown, the method includes:
[0077] S501: The management and control unit creates an application image file according to an image creation request. The application image file includes an application identifier of at least one target application and a plug-in identifier of at least one target plug-in.
[0078] The cloud service platform includes a management and control unit, which can complete a series of cloud application management tasks, such as creating image files based on the corresponding configuration information and determining the specific delivery method based on the delivery information configured by the configuration personnel. The delivery method, for example, specifies to which specific objects the currently indicated cloud applications and plug-ins are configured, as well as the specific configuration duration, etc. These can all be handled by the management and control unit.
[0079] In this embodiment, the management and control unit may receive an image creation request, and may create an application image file according to the image creation request. The specific implementation method may refer to the introduction of the above embodiment and will not be repeated here.
[0080] S502: The management and control unit receives a delivery request.
[0081] After the management and control unit creates the application image file, the management and control unit may further receive a delivery request, where the delivery request may be sent by a terminal device operated by a configuration personnel, for example.
[0082] S503: The management and control unit sends an instance processing request to the instance unit in response to the delivery request.
[0083] In response to the delivery request, the cloud needs to allocate a target application and a target plug-in to at least one target object, and these need to be completed through a virtual machine instance. Therefore, the management and control unit can send an instance processing request to the instance unit in response to the delivery request, where the instance processing request is used to request the instance unit to create a corresponding virtual machine instance.
[0084] The instance unit in this embodiment is used to perform instance processing, such as instance creation, instance destruction, and instance management.
[0085] S504: The instance unit creates a virtual machine instance in response to the instance processing request.
[0086] The instance unit can create a virtual machine instance in response to the instance processing request sent by the control unit, wherein the number of virtual machine instances can be one or more, depending on the specific target objects that need to configure the cloud application and plug-in.
[0087] S505: The instance unit sends a notification message indicating that the instance was created successfully to the management and control unit.
[0088] After the instance unit creates the target instance, it can send a notification message to the management and control unit, where the notification message is used to indicate that the virtual machine instance is created successfully.
[0089] S506: The control unit sends mounting information to the agent unit of the virtual machine instance according to the application image file. The mounting information includes the application identifier of the target application and the plug-in identifier of the target plug-in.
[0090] An agent unit exists in the virtual machine instance, wherein the agent unit is used to implement the processing work of mounting files. For example, the agent unit may be an agent unit (agent) running in the operating system (GuestOS) of the virtual machine.
[0091] Therefore, after determining that the virtual machine instance is created successfully, the control unit can send mounting information to the agent unit of the virtual machine instance according to the application image file, wherein the mounting information includes the application identifier of the target application and the plug-in identifier of the target plug-in.
[0092] S507 : The agent unit mounts the application file corresponding to the target application and the plug-in file corresponding to the target plug-in in the virtual machine instance according to the application identifier and the plug-in identifier in the mounting information.
[0093] After receiving the mount information, the agent unit in the virtual machine instance can perform corresponding file mount processing according to the application identifier and plug-in identifier in the mount information, that is, mount the application file corresponding to the target application and the plug-in file corresponding to the target plug-in into the virtual machine instance.
[0094] In one possible implementation, after the cloud completes processing the mount request, the cloud may also create an application instance to determine whether the current file mount can operate normally. For example, the control unit may send a creation instruction to the agent unit, and the agent unit may create an application instance corresponding to the target application and target plug-in described above based on the creation instruction. The application instance may be created by the agent unit by creating a session in the virtual machine instance. A session is equivalent to a terminal device connecting to a virtual machine instance to use a cloud application. A session can include multiple application instances. For example, if a session simultaneously opens application A and application B, then it can be understood that the session includes two application instances.
[0095] It's understood that if the application instance is successfully created, the session can be confirmed to be successfully created, which means that the file mount is functioning properly, and the application instance can also be considered to have been successfully launched. Therefore, when the application instance is successfully created, the management and control unit can update the delivery status corresponding to the delivery request to "delivery completed." At this point, the corresponding cloud application and plug-in have been pushed to the target object, and the target object can then run the target application and plug-in through the virtual machine instance.
[0096] For example, you can refer to Figure 6 Further understanding of the implementation process introduced in the current embodiment, such as Figure 6 As shown, a file directory is stored in the storage unit for each tenant, and the file directory includes relevant files uploaded by the tenant.
[0097] It is understandable that the cloud service platform only provides a platform for implementing cloud application services. The specific application data is still uploaded by the configuration personnel. Therefore, each tenant (that is, the configuration personnel) can upload the application files and plug-in files they need to the cloud service platform. The cloud service platform can then store the files uploaded by the tenants in the storage unit, and store the files uploaded by each tenant separately, so as to facilitate the subsequent provision of cloud application related services to the corresponding tenants.
[0098] In a possible implementation, the application files and plug-in files directly uploaded by the tenant may not support remote mounting. Therefore, in this embodiment, further format conversion is required for the files uploaded by the tenant to ensure that the converted files can support remote mounting, and then the files are stored in the storage unit.
[0099] For example, before sending a mount request to the storage unit based on the application image file, the cloud service platform can receive the first initial file of the target application through the management and control unit, convert the first initial file into an application file in the target format, and store the application file in the storage unit; and the cloud service platform can receive the second initial file of the target plug-in through the management and control unit, convert the second initial file into a plug-in file in the target format, and store the plug-in file in the storage unit.
[0100] For example, the target format can be a VHD (Virtual Hard Disk) file. A VHD file is a virtual disk format file that can be virtualized into a hard disk. VHD files support remote mounting, and VHD files stored on a NAS can be remotely mounted locally. Alternatively, in actual implementation, the specific target format can be selected and configured based on actual needs, as long as the target format supports remote mounting.
[0101] For example, reference Figure 6 To understand, the file directory of tenant 1 in the storage unit contains application files of application 1, plug-in files of plug-in 1 of application 1, plug-in files of plug-in 2 of application 1, plug-in files of plug-in 3 of application 1, plug-in files of plug-in 4 of application 1, application files of application 2, plug-in files of plug-in 1 of application 2, plug-in files of plug-in 2 of application 2, and plug-in files of plug-in 3 of application 2. These files are uploaded by tenant 1 and converted into different formats, and are stored in the file directory of tenant 1 in the storage unit.
[0102] and reference Figure 6, there is also a file directory of tenant 2 in the storage unit. The file directory of tenant 2 stores the application files of application 3, the plug-in files of plug-in 1 of application 3, the plug-in files of plug-in 2 of application 3, and the plug-in files of plug-in 3 of application 3. These files are uploaded by tenant 2 and converted into different formats. They are stored in the file directory of tenant 2 in the storage unit.
[0103] In this embodiment, the correspondence between applications and plug-ins is maintained in the cloud service platform, and the applications and plug-ins are converted into a mountable format so that they can be accessed by mounting, thereby eliminating the need to maintain a large number of image files.
[0104] Then suppose tenant 1 wants to create multiple target objects (for example Figure 6 As shown in the figure, if user 1, user 2, user 3 and user 4 are ready to configure related cloud applications, then tenant 1 can first query the currently configurable applications and plug-ins, where the configurable applications and plug-ins are the applications and plug-ins that tenant 1 has previously uploaded. Assuming that the current tenant 1 wants to configure application 1, plug-in 1 of application 1, plug-in 2 of application 1 and plug-in 4 of application 1, as well as application 2, plug-in 1 of application 2 and plug-in 2 of application 2 for multiple target objects, tenant 1 can initiate an image creation request through the terminal device.
[0105] With reference to the introduction of the above embodiment, the cloud service platform can create an application image file and create a virtual machine instance according to the delivery request initiated by the first terminal device. Figure 6 For example, it can be understood that a virtual machine instance is created in the instance unit.
[0106] After that, the control unit can send the mount information to the agent unit of the virtual machine instance according to the application image file, where the agent unit of the virtual machine instance is running on the unit's operating system, and then the agent unit can send a mount request to the storage unit, and the subsequent file mounting can refer to Figure 6 For clarity, the virtual machine instance can mount the application files of application 1, the plug-in files of plug-in 2 of application 1, the plug-in files of plug-in 4 of application 1, the application files of application 2, the plug-in files of plug-in 1 of application 2, and the plug-in files of plug-in 2 of application 2. After mounting the corresponding files in the virtual machine instance, user 1 and user 2 can run the specified applications and plug-ins on their terminal devices through the corresponding virtual machine instance.
[0107] like Figure 6 As shown, assuming that the current user 1 needs to start application 1 on his terminal device, the proxy unit of the virtual machine instance can create a corresponding session according to the user request. For example, this session can include Figure 6User 1 shown corresponds to the application instance of application 1. For example, if the current user 2 needs to start application 1 on his terminal device, the proxy unit of the virtual machine instance can create a corresponding session according to the user request, which may include Figure 6 The user 2 shown corresponds to the application instance of the application 1. Figure 6 The user 3 shown corresponds to the application instance of the application 2 and the user 4 corresponds to the application instance of the application 2, and their implementation methods are similar.
[0108] Based on the above introduction, in the plug-in management method based on cloud applications provided by the embodiment of the present application, tenants can upload the initial files of applications and plug-ins to the cloud service platform in advance. The cloud service platform can convert the initial files into application files and plug-in files in the target format and store them in the storage unit to ensure that the virtual machine instance can mount the files from the storage unit later, thereby providing a data basis for the mounting. Afterwards, the control unit, instance unit and storage unit in the cloud service unit can interact with each other, so as to achieve the target application and target plug-in indicated by the application image file mounted by the created virtual machine instance to ensure that the target application and target plug-in can be run normally through the virtual machine instance. At the same time, the application image file only stores the application identifier and plug-in identifier. Therefore, when updating the plug-in and application, it is only necessary to adjust the file mounting relationship without remaking the image file, thereby effectively reducing the adjustment complexity of cloud applications and plug-ins.
[0109] Based on the above introduction, for example, Figure 7 Further introduction to the above-mentioned timing process is given in Figure 7 The user-side operations and related detailed information are further introduced in Figure 7 This is a processing sequence diagram for configuring plug-ins and applications provided in an embodiment of the present application.
[0110] like Figure 7 As shown in the figure, the specific processing process includes:
[0111] 1. The tenant operates the front-end interface through the first terminal device and sends a query request to the browser to call a query list, where the query request is used to query the currently configurable applications and plug-ins;
[0112] 2. The browser sends a query request to the control unit of the cloud service platform. The function of the query request is the same as above.
[0113] 3. The control unit returns configurable application information and plug-in information to the browser.
[0114] Among them, application information may include, for example, application identification, application version, application development history, application size, etc., and plug-in information is similar. The specific implementation of application information and plug-in information can be determined according to actual conditions.
[0115] 4. The browser returns the application information page to the tenant front desk, which includes the currently configurable application information and plug-in information.
[0116] 5. The tenant front desk selects the applications and plug-ins that need to be configured on the application information page, and then sends the image creation information to the browser. The image creation information can include the application ID and plug-in ID to be configured.
[0117] 6. The browser sends an image creation request to the control unit.
[0118] 7. The control unit creates an application image file based on the image creation request.
[0119] 8. The control unit returns the creation success information to the browser.
[0120] 9. The browser displays information about the successful image creation to the tenant front desk.
[0121] 10. The tenant creates a delivery group in the front-end interface, selects the previously created image, and assigns it to the corresponding user.
[0122] The delivery group created by the tenant indicates which image file will be assigned to which user's device, how long the distribution will take, etc. Therefore, the tenant can send delivery information to the browser through the front-end interface. The delivery information can include the image file, user device, duration, etc. introduced above.
[0123] 11. The browser sends a delivery request to the control unit, where the delivery request requests the cloud service platform to perform corresponding delivery actions based on the delivery information.
[0124] 12. The control unit saves the delivery information and can start the workflow to create a delivery group.
[0125] 13. The control unit returns information to the browser, instructing the workflow to start.
[0126] 14. The browser returns information to the tenant front desk, indicating that the workflow has started. The tenant can now see that the delivery group is being created.
[0127] 15. In response to the delivery information, the management unit sends an instance creation request to the instance unit.
[0128] 16. The instance unit may first return the identifier (ID) of the virtual machine instance.
[0129] 17. The control unit waits for the instance unit to successfully create the virtual machine instance.
[0130] 18. The instance unit returns the creation success information to the management unit.
[0131] 19. The control unit sends the mount information to the agent unit.
[0132] 20. The proxy unit sends a mount request to the storage unit to mount the corresponding application files and plug-in files in the virtual machine instance.
[0133] 21. The proxy unit returns the information that the mounting process is completed to the control unit.
[0134] 22. The control unit instructs the agent unit to start the application instance.
[0135] 23. The agent unit indicates that the virtual machine instance is started successfully.
[0136] 24. The management and control unit updates the status of the delivery group to creation success, and can feedback the success of the delivery group creation to the tenant platform through the browser.
[0137] The embodiments of the present application provide a detailed description of the operations of various parties in the plug-in management method and the interactions between various units.
[0138] Based on the above introduction, the following further details how to implement application updates or plug-in updates after the delivery request is processed. Figure 8 This is a processing sequence diagram of the adjustment plug-in and application provided in an embodiment of the present application.
[0139] like Figure 8 As shown in the figure, the specific processing process includes:
[0140] 1. The tenant operates the front-end interface to edit the image file.
[0141] For example, tenants can operate in the front-end interface to indicate the applications and plug-ins that need to be added to the application image file, as well as the applications and plug-ins that need to be deleted from the application image file.
[0142] 2. The browser sends an image modification request to the control unit, where the image modification request is used to request an update of the application image file.
[0143] The image modification request may include at least one of the following:
[0144] Case 1: The image modification request is used to request deletion of the plug-in identifier of the first plug-in in the application image file.
[0145] Case 2: The image modification request is used to request adding a plug-in identifier of a second plug-in to the application image file.
[0146] Case 3: The image modification request is used to request deletion of the application identifier of the first application and the plug-in identifier under the first application in the application image file.
[0147] Case 4: The image modification request is used to request adding an application identifier of a second application to the application image file.
[0148] 3. The control unit updates the application image file in response to the image modification request.
[0149] Because the application image file only requires simple updating of identification information, which is a database-type modification operation without the need for complex downloading and installation operations, the application image file can be directly updated without the need for re-production.
[0150] 4. The control unit returns an indication of successful update to the browser.
[0151] 5. The browser displays the image file update success on the tenant's front-end interface.
[0152] 6. The control unit sends the updated mounting information to the agent unit, wherein the updated mounting information (also referred to as update information) has different implementations corresponding to the four situations described above.
[0153] For the first scenario described above (uninstalling the first plug-in), the update information may include the plug-in identifier of the first plug-in. For the second scenario described above (adding a second plug-in), the update information may include the plug-in identifier of the second plug-in. For the third scenario described above (uninstalling the first application), the update information may include the application identifier of the first application. For the fourth scenario described above (adding a second application), the update information may include the application identifier of the first application.
[0154] 7. The agent unit processes file mounting or file unmounting according to the mounting information.
[0155] Similarly, for the four situations described above, the proxy unit has different corresponding implementations. For situation 1 described above (uninstalling the first plug-in), the proxy unit can uninstall the mounting of the plug-in file for the first plug-in from the virtual machine instance according to the plug-in identifier of the first plug-in.
[0156] With respect to the second situation described above (adding a second plug-in), the agent unit may mount the plug-in file of the second plug-in in the virtual machine instance according to the plug-in identifier of the second plug-in.
[0157] Regarding the third situation introduced above (uninstalling the first application), when uninstalling the first application, in addition to uninstalling the mounting relationship of the first application itself, the plug-in files with a mounting relationship under the first application also need to be uninstalled. Therefore, the agent unit can uninstall the mounting of the application files of the first application by the virtual machine instance according to the application identifier of the first application, and uninstall the mounting of the plug-in files under the first application by the virtual machine instance. The "plug-in files under the first application" here refers to the plug-in files in at least one plug-in file corresponding to the first application that have a mounting relationship with the virtual machine instance.
[0158] With respect to the fourth situation described above (adding a second application), the proxy unit may mount the application file of the second application in the virtual machine instance according to the application identifier of the second application.
[0159] 8. The proxy unit returns information that the mount relationship update is completed to the control unit.
[0160] 9. The control unit instructs the agent unit to start the application instance.
[0161] 10. The agent unit indicates that the application instance has been successfully started. At this point, the application and plug-in can be updated accordingly.
[0162] In one possible implementation, when the user finishes using the cloud application, the user can directly close the cloud application, and the cloud resources can directly uninstall the relevant files, wait for allocation when needed next time, and repeat the above-mentioned operations.
[0163] The plug-in management method provided in the embodiment of the present application is that when a user needs to update an assigned application or plug-in, the tenant administrator can edit the image file to indicate the application and plug-in that need to be updated. After that, the various units in the cloud service platform can process it. First, the image file is updated, and the mounting relationship between the virtual machine instance and the file in the storage unit is updated so that the updated mounting relationship meets the current configuration requirements of the new application and plug-in. This does not require the central government to produce the image file or update the delivery group, so that dynamic management of applications and plug-ins can be achieved simply and efficiently.
[0164] Based on the above embodiments, it can be determined that in the implementation process of the plug-in management method based on cloud applications, the cloud service platform can perform subsequent operations in response to the request of the tenant administrator or in response to the request of an individual user. The following is a further detailed introduction to the relevant implementation methods between the client and the cloud service platform in different application scenarios. Figure 9 To explain, Figure 9 The process of the plug-in management method based on cloud application provided in the embodiment of this application Figure 3 .
[0165] like Figure 9 As shown, the method includes:
[0166] S901. Receive an image creation request sent by a first client, and create an application image file in response to the image creation request. The application image file includes an application identifier of at least one target application and a plug-in identifier of at least one target plug-in. The first client is a client for cloud application configuration.
[0167] In this embodiment, the first client can be the client that configures the cloud application. For example, in a scenario where a tenant administrator configures a cloud application for a regular user, the first client can be the client operated by the tenant administrator, while the second client is the client of the regular user, such as an enterprise employee. In another example, in a scenario where an individual user configures a cloud application for their own device, the first and second clients can be the same client, both owned by the individual user. Regardless of the application scenario, the first client is the client that configures the cloud application, and the second client is the client that runs the cloud application.
[0168] Therefore, in this embodiment, the first client can send an image creation request to the first client according to the actual configuration requirements, and then the cloud service platform can create an application image file according to the image creation request. The implementation method is similar to that described above and will not be repeated here.
[0169] S902. Create a virtual machine instance based on a delivery request for the application image file, where the delivery request is used to request allocation of a target application and a target plug-in to at least one target object. The virtual machine instance is used to run the target application and the target plug-in, and the second client is used to use the target application and the target plug-in through a streaming transmission protocol between the virtual machine instance and the second client.
[0170] The delivery request and virtual machine instance in this embodiment are similar to those described in the above embodiment and will not be further described here. It should be noted that in this embodiment, there is a corresponding relationship between the target object and the second client. For example, if the target object is a user account, then the second client is the client logged in with the user account. Alternatively, if the target object is a terminal device, then the second client is the target object.
[0171] Therefore, in this embodiment, in order to deliver the corresponding application and plug-in to the target object, a virtual machine instance is created, wherein the virtual machine instance can run the target application and the target plug-in to perform corresponding data processing. Afterwards, the virtual machine instance can provide the output data of the target application and the target plug-in to the second client, wherein the output data may include image data, sound data, character data, etc., so that the second client can use the target application and the target plug-in through the streaming transmission protocol between the virtual machine instance.
[0172] S903 : Mount the application file corresponding to the target application and the plug-in file corresponding to the target plug-in stored in the storage unit in the virtual machine instance according to the application image file.
[0173] The implementation method of the cloud service platform processing file mounting is similar to that described in the above embodiment and will not be repeated here.
[0174] After the file mount process is complete, the client corresponding to the target object can run the corresponding cloud application. In the specific process, the second client can respond to the launch operation of the first application on the desktop and send a session creation request to the cloud service platform. The session creation request includes the object information corresponding to the second client, where the object information can be, for example, the device ID of the second client or the account ID of the user account logged in to the second client. The session creation request also includes the application ID of the first application to be run in the second client.
[0175] After receiving the session creation request sent by the second client, the cloud service platform may first verify the second client according to the object information. When the verification is successful, it may be determined that the second client has the authority to run the first application.
[0176] The cloud service platform then responds to the session creation request by creating a target session within the virtual machine instance. One session can be considered a client connection, used to retrieve data related to the first application running in the cloud. Therefore, the target session can include an application instance of the first application, where the application instance is the process running the first application on the virtual machine instance. Therefore, after the session is successfully created, from the user's perspective, the second client can run the first application on the desktop, along with any installed plug-ins for the first application. However, the actual processing of the application data is done in the cloud.
[0177] In summary, the plug-in management method based on cloud applications provided by the embodiment of the present application can store application files and plug-in files in the storage unit of the cloud service platform in the target format, so that the plug-in is exempted from installation and only requires simple configuration and mounting, thereby achieving an out-of-the-box effect, and there is no need to download and install the plug-in again after the instance is destroyed. At the same time, only the application identifier and the plug-in identifier are included in the image file, so that when the application and plug-in need to be adjusted, the identification information in the image file can be edited to achieve the purpose of adjusting the application and plug-in without remaking the image file. And the plug-in file is stored in the cloud service platform in the present application, which avoids the trouble of users having to find and install plug-ins by themselves, so that users can quickly put the cloud application into production after opening it, thereby improving the convenience and comprehensiveness of the cloud application.
[0178] Figure 10 This is a schematic diagram of the structure of the plug-in management device based on cloud applications provided in an embodiment of the present application. Figure 10 As shown, the device 100 includes: a creation module 1001, a transceiver module 1002 and a processing module 1003.
[0179] A creation module 1001 is configured to create an application image file according to an image creation request, wherein the application image file includes an application identifier of at least one target application and a plug-in identifier of at least one target plug-in;
[0180] The creation module 1001 is further configured to create a virtual machine instance according to a delivery request for the application image file, wherein the delivery request is configured to request allocation of the target application and the target plug-in to at least one target object, and the virtual machine instance is configured to run the target application and the target plug-in;
[0181] The transceiver module 1002 is configured to mount, in the virtual machine instance, the application file corresponding to the target application and the plug-in file corresponding to the target plug-in stored in the storage unit according to the application image file.
[0182] In one possible design, the cloud service platform further includes a management and control unit and an instance unit;
[0183] The creation module 1001 is specifically used for:
[0184] The control unit receives a delivery request;
[0185] The management and control unit sends an instance processing request to the instance unit in response to the delivery request;
[0186] The instance unit creates the virtual machine instance in response to the instance processing request, and sends notification information indicating successful instance creation to the management and control unit.
[0187] In one possible design, the virtual machine instance includes an agent unit;
[0188] The transceiver module 1002 is specifically configured to:
[0189] The control unit sends mounting information to the agent unit of the virtual machine instance according to the application image file, wherein the mounting information includes the application identifier of the target application and the plug-in identifier of the target plug-in;
[0190] The agent unit mounts the application file corresponding to the target application and the plug-in file corresponding to the target plug-in in the virtual machine instance according to the application identifier and the plug-in identifier in the mounting information.
[0191] In one possible design, the transceiver module 1002 is further configured to:
[0192] Before mounting the application file corresponding to the target application and the plug-in file corresponding to the target plug-in stored in the storage unit in the virtual machine instance according to the application image file,
[0193] The management and control unit receives a first initial file of the target application, converts the first initial file into an application file in a target format, and stores the application file in the storage unit; and
[0194] The management and control unit receives a second initial file of the target plug-in, converts the second initial file into a plug-in file in a target format, and stores the plug-in file in the storage unit.
[0195] In one possible design, the apparatus further includes a processing module 1003, where the processing module 1003 is configured to:
[0196] After mounting the application file corresponding to the target application and the plug-in file corresponding to the target plug-in stored in the storage unit in the virtual machine instance according to the application image file, updating the application image file according to the image modification request;
[0197] The application files and plug-in files mounted on the virtual machine instance are updated according to the updated application image file.
[0198] In one possible design, the image modification request is used to request deletion of a plug-in identifier of a first plug-in in the application image file;
[0199] The processing module 1003 is specifically configured to:
[0200] The management and control unit determines the plug-in identifier of the first plug-in according to the updated application image file;
[0201] The control unit sends update information to the agent unit of the virtual machine instance, where the update information includes a plug-in identifier of the first plug-in;
[0202] The agent unit uninstalls the mounting of the plug-in file of the first plug-in from the virtual machine instance according to the plug-in identifier of the first plug-in.
[0203] In one possible design, the image modification request is used to request adding a plug-in identifier of a second plug-in to the application image file;
[0204] The processing module 1003 is specifically configured to:
[0205] The management and control unit determines the plug-in identifier of the second plug-in according to the updated application image file;
[0206] The control unit sends update information to the agent unit of the virtual machine instance, where the update information includes a plug-in identifier of the second plug-in;
[0207] The agent unit mounts the plug-in file of the second plug-in in the virtual machine instance according to the plug-in identifier of the second plug-in.
[0208] In one possible design, the image modification request is used to request deletion of an application identifier of the first application in the application image file;
[0209] The processing module 1003 is specifically configured to:
[0210] The control unit determines the application identifier of the first application according to the updated application image file;
[0211] The control unit sends update information to the agent unit of the virtual machine instance, where the update information includes an application identifier of the first application;
[0212] The agent unit uninstalls the application file of the first application and the plug-in file under the first application from the virtual machine instance according to the application identifier of the first application.
[0213] In one possible design, the image modification request is used to request adding an application identifier of a second application to the application image file;
[0214] The processing module 1003 is specifically configured to:
[0215] The management and control unit determines the application identifier of the second application according to the updated application image file;
[0216] The control unit sends update information to the agent unit of the virtual machine instance, where the update information includes an application identifier of the second application;
[0217] The agent unit mounts the application file of the second application in the virtual machine instance according to the application identifier of the second application.
[0218] The device provided in this embodiment can be used to execute the technical solution of the above method embodiment. Its implementation principle and technical effects are similar and will not be described in detail in this embodiment.
[0219] Figure 11 A schematic diagram of the hardware structure of an electronic device provided in an embodiment of the present application is shown in FIG. Figure 11 As shown, the electronic device 110 of this embodiment includes: a processor 1101 and a memory 1102;
[0220] Memory 1102, for storing computer-executable instructions;
[0221] The processor 1101 is configured to execute computer-executable instructions stored in the memory to implement the steps of the cloud application-based plug-in management method in the above embodiment. For details, please refer to the relevant description in the above method embodiment.
[0222] Optionally, the memory 1102 may be independent or integrated with the processor 1101 .
[0223] When the memory 1102 is independently provided, the electronic device further includes a bus 1103 for connecting the memory 1102 and the processor 1101 .
[0224] An embodiment of the present application also provides a computer-readable storage medium, in which computer-executable instructions are stored. When a processor executes the computer-executable instructions, the cloud application-based plug-in management method executed by the electronic device as described above is implemented.
[0225] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant laws, regulations and standards, and provide corresponding operation entrances for users to choose to authorize or refuse.
[0226] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of the modules is merely a logical function division. In actual implementation, there may be other division methods, such as multiple modules can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interface, device or module, which can be electrical, mechanical or other forms.
[0227] The above-mentioned integrated module implemented in the form of a software functional module can be stored in a computer-readable storage medium. The above-mentioned software functional module is stored in a storage medium and includes a number of instructions for causing a computer device (which can be a personal computer, server, or network device, etc.) or a processor to perform some steps of the method described in various embodiments of the present application.
[0228] It should be understood that the processor described above may be a central processing unit (CPU), other general-purpose processors, digital signal processors (DSP), or application-specific integrated circuits (ASICs). A general-purpose processor may be a microprocessor or any conventional processor. The steps of the method disclosed in the present invention may be directly executed by a hardware processor or by a combination of hardware and software modules within the processor.
[0229] The memory may include a high-speed RAM memory, and may also include non-volatile storage NVM, such as at least one disk memory, and may also be a USB flash drive, a mobile hard disk, a read-only memory, a magnetic disk or an optical disk.
[0230] The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus. Buses can be classified into address buses, data buses, and control buses. For ease of illustration, the buses in the drawings of this application are not limited to just one bus or just one type of bus.
[0231] The storage medium may be implemented by any type of volatile or non-volatile memory device, or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk. The storage medium may be any available medium that can be accessed by a general-purpose or special-purpose computer.
[0232] Those skilled in the art will appreciate that all or part of the steps in the above-described method embodiments can be implemented using hardware associated with program instructions. The aforementioned program can be stored in a computer-readable storage medium. When executed, the program performs the steps of the above-described method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as ROM, RAM, magnetic disks, or optical disks.
[0233] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some or all of the technical features therein. These modifications or replacements do not deviate the essence of the corresponding technical solutions from the scope of the technical solutions of the embodiments of the present application.
Claims
1. A plug-in management method based on cloud applications, characterized in that: Applied to a cloud service platform, the cloud service platform includes a storage unit, a management unit, an instance unit, and an agent unit. The storage unit stores a file directory corresponding to each tenant. The file directory stores an application file of at least one application and a plug-in file of at least one plug-in uploaded by each tenant. The method includes: Creating an application image file according to the image creation request, wherein the application image file includes an application identifier of at least one target application and a plug-in identifier of at least one target plug-in; Creating a virtual machine instance according to a delivery request for the application image file, wherein the delivery request is used to request allocation of the target application and the target plug-in to at least one target object, and the virtual machine instance is used to run the target application and the target plug-in; The management and control unit receives a first initial file of the target application, converts the first initial file into an application file in a target format, and stores the application file in the storage unit; and the management and control unit receives a second initial file of the target plug-in, converts the second initial file into a plug-in file in a target format, and stores the plug-in file in the storage unit; Mounting, in the virtual machine instance, the application file corresponding to the target application and the plug-in file corresponding to the target plug-in stored in the storage unit according to the application image file, includes: The control unit sends mounting information to the agent unit of the virtual machine instance according to the application image file, wherein the mounting information includes the application identifier of the target application and the plug-in identifier of the target plug-in; The agent unit mounts the application file corresponding to the target application and the plug-in file corresponding to the target plug-in in the virtual machine instance according to the application identifier and the plug-in identifier in the mounting information.
2. The method according to claim 1, characterized in that The step of creating a virtual machine instance according to the delivery request for the application image file includes: The control unit receives a delivery request; The management and control unit sends an instance processing request to the instance unit in response to the delivery request; The instance unit creates the virtual machine instance in response to the instance processing request, and sends notification information indicating successful instance creation to the management and control unit.
3. The method according to claim 2, characterized in that After mounting the application file corresponding to the target application and the plug-in file corresponding to the target plug-in stored in the storage unit in the virtual machine instance according to the application image file, the method further includes: Update the application image file according to the image modification request; The application files and plug-in files mounted on the virtual machine instance are updated according to the updated application image file.
4. The method according to claim 3, characterized in that The image modification request is used to request deletion of the plug-in identifier of the first plug-in in the application image file; The updating of the application files and plug-in files mounted on the virtual machine instance according to the updated application image file includes: The management and control unit determines the plug-in identifier of the first plug-in according to the updated application image file; The control unit sends update information to the agent unit of the virtual machine instance, where the update information includes a plug-in identifier of the first plug-in; The agent unit uninstalls the mounting of the plug-in file of the first plug-in from the virtual machine instance according to the plug-in identifier of the first plug-in.
5. The method according to claim 3, characterized in that The image modification request is used to request to add a plug-in identifier of a second plug-in to the application image file; The updating of the application files and plug-in files mounted on the virtual machine instance according to the updated application image file includes: The management and control unit determines the plug-in identifier of the second plug-in according to the updated application image file; The control unit sends update information to the agent unit of the virtual machine instance, where the update information includes a plug-in identifier of the second plug-in; The agent unit mounts the plug-in file of the second plug-in in the virtual machine instance according to the plug-in identifier of the second plug-in.
6. The method according to claim 3, characterized in that The image modification request is used to request deletion of the application identifier of the first application in the application image file; The updating of the application files and plug-in files mounted on the virtual machine instance according to the updated application image file includes: The control unit determines the application identifier of the first application according to the updated application image file; The control unit sends update information to the agent unit of the virtual machine instance, where the update information includes an application identifier of the first application; The agent unit uninstalls the application file of the first application and the plug-in file under the first application from the virtual machine instance according to the application identifier of the first application.
7. The method according to claim 3, characterized in that The image modification request is used to request to add an application identifier of a second application to the application image file; The updating of the application files and plug-in files mounted on the virtual machine instance according to the updated application image file includes: The management and control unit determines the application identifier of the second application according to the updated application image file; The control unit sends update information to the agent unit of the virtual machine instance, where the update information includes an application identifier of the second application; The agent unit mounts the application file of the second application in the virtual machine instance according to the application identifier of the second application.
8. The method according to any one of claims 2 to 7, characterized in that: After mounting the application file corresponding to the target application and the plug-in file corresponding to the target plug-in stored in the storage unit in the virtual machine instance according to the application image file, the method further includes: The control unit sends a creation instruction to the agent unit; The agent unit creates the target application and the application instance corresponding to the target plug-in according to the creation instruction; If the application instance is created successfully, the management and control unit updates the delivery status corresponding to the delivery request to delivery processing completed.
9. A plug-in management method based on cloud applications, characterized in that: Applied to a cloud service platform, the cloud service platform includes a storage unit, a management unit, an instance unit, and an agent unit. The storage unit stores a file directory corresponding to each tenant. The file directory stores an application file of at least one application and a plug-in file of at least one plug-in uploaded by each tenant. The method includes: Receiving an image creation request sent by a first client, and creating an application image file in response to the image creation request, wherein the application image file includes an application identifier of at least one target application and a plug-in identifier of at least one target plug-in, wherein the first client is a client for performing cloud application configuration; creating a virtual machine instance according to a delivery request for the application image file, wherein the delivery request is used to request allocation of the target application and the target plug-in to at least one target object, the virtual machine instance is used to run the target application and the target plug-in, and the second client is used to use the target application and the target plug-in through a streaming transmission protocol between the second client and the virtual machine instance; The management and control unit receives a first initial file of the target application, converts the first initial file into an application file in a target format, and stores the application file in the storage unit; and the management and control unit receives a second initial file of the target plug-in, converts the second initial file into a plug-in file in a target format, and stores the plug-in file in the storage unit; Mounting, in the virtual machine instance, the application file corresponding to the target application and the plug-in file corresponding to the target plug-in stored in the storage unit according to the application image file, includes: The control unit sends mounting information to the agent unit of the virtual machine instance according to the application image file, wherein the mounting information includes the application identifier of the target application and the plug-in identifier of the target plug-in; The agent unit mounts the application file corresponding to the target application and the plug-in file corresponding to the target plug-in in the virtual machine instance according to the application identifier and the plug-in identifier in the mounting information.
10. The method according to claim 9, characterized in that The target object is the second client; or, the target object is a user account, and the second client is a client logged in with the user account.
11. The method according to claim 9 or 10, characterized in that After mounting the application file corresponding to the target application and the plug-in file corresponding to the target plug-in stored in the storage unit in the virtual machine instance according to the application image file, the method further includes: receiving a session creation request sent by a second client, where the session creation request includes object information corresponding to the second client and an application identifier of a first application to be run by the second client; The object information is verified. When the verification passes, a target session is created in the virtual machine instance in response to the session creation request. The target session includes an application instance of the first application. The application instance is a process running the first application on the virtual machine instance.
12. A plug-in management device based on cloud applications, characterized in that: Applied to a cloud service platform, the cloud service platform includes a storage unit, a management unit, an instance unit, and an agent unit. The plug-in management device based on cloud applications includes: A creation module, configured to create an application image file according to an image creation request, wherein the application image file includes an application identifier of at least one target application and a plug-in identifier of at least one target plug-in; The creation module is further configured to create a virtual machine instance based on a delivery request for the application image file, wherein the delivery request is configured to request allocation of the target application and the target plug-in to at least one target object, and the virtual machine instance is configured to run the target application and the target plug-in; the transceiver module is configured to receive a first initial file of the target application, convert the first initial file into an application file in a target format, and store the application file in the storage unit; and the management and control unit is configured to receive a second initial file of the target plug-in, convert the second initial file into a plug-in file in a target format, and store the plug-in file in the storage unit; Mounting, in the virtual machine instance, the application file corresponding to the target application and the plug-in file corresponding to the target plug-in stored in the storage unit according to the application image file, includes: The control unit sends mounting information to the agent unit of the virtual machine instance according to the application image file, wherein the mounting information includes the application identifier of the target application and the plug-in identifier of the target plug-in; The agent unit mounts the application file corresponding to the target application and the plug-in file corresponding to the target plug-in in the virtual machine instance according to the application identifier and the plug-in identifier in the mounting information.
13. An electronic device, characterized in that: include: Memory, used to store programs; A processor is configured to execute the program stored in the memory, wherein when the program is executed, the processor is configured to execute the method according to any one of claims 1 to 11.
14. A computer-readable storage medium, characterized in that The method comprises instructions which, when executed on a computer, cause the computer to perform the method according to any one of claims 1 to 11.
15. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the method according to any one of claims 1 to 11 is implemented.
Citation Information
Patent Citations
Deployment of web client plugins in a virtualized computing environment
US20160048400A1
Configuration service for configuring instances
US20160241438A1