Service method, and device, storage medium and computer program product
By introducing a task scheduler between the visual server and the client, the problem of resource competition in multi-user visual applications is solved, resource isolation and elastic computing are realized, and user experience and resource utilization are improved.
Patent Information
- Application Number
- PCT/IB2025/050450
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-01-25
- Filing Date
- 2025-01-16
- Publication Date
- 2025-07-31
AI Technical Summary
When multiple users use visual applications, the resource competition caused by limited server hardware resources affects the user experience.
By introducing a task scheduler between the visual server and the client, the user terminal generates a startup request and encapsulates it into a format recognized by the task scheduler. The task scheduler applies for elastic computing resources for the target application task, ensuring that different users obtain isolated resource instances and avoid resource competition.
Resource isolation between different users is achieved, resource competition is avoided, a simple and consistent user experience is provided, and resource utilization and cost are optimized through elastic calculation.
Smart Images

Figure IB2025050450_31072025_PF_FP_ABST
Abstract
Description
Service Method, Device, Storage Medium and Computer Program Product - Technical Field
[0001] This application relates to the field of cloud computing technology, and particularly to a service method, device, storage medium and computer program product. Background Art
[0002] With the development of High Performance Computing (HPC) technology, some HPC applications can support interaction with end users in a visual way, and such applications can be called visual applications.
[0003] Currently, usually an administrator selects a fixed server, deploys a visual running environment for the visual application in the selected server and starts the visual application. On this basis, multiple users can access the server to use the visual application in a visual way.
[0004] However, in this visual service mode, due to limited hardware resources in the server, the problem of multiple users competing for resources often occurs, affecting the user experience of using the visual application. Summary of the Invention
[0005] Multiple aspects of this application provide a service method, device, storage medium and computer program product to solve the problem of resource competition when multiple users use visual applications.
[0006] An embodiment of this application provides a service method applicable to a visual server. The method includes: receiving a start request for a target visual application sent by a user terminal; encapsulating the start request into a target application task according to the task format supported by a task scheduler and submitting the target application task to the task scheduler to trigger the task scheduler to apply for a target instance for the target application task; after determining that the target instance has completed the response to the start request, sending feedback on the start request to the user terminal.
[0007] An embodiment of this application also provides a service method applicable to a visual client deployed on a user terminal. The method includes: generating a start request in response to a start operation on a target visual application that occurs in a service interface provided by a visual server; sending the start request to the visual server for the visual server to call a task scheduler to apply for a target instance for the start request; receiving feedback on the start request from the visual server.
[0008] The embodiment of the present application further provides a control device, on which a visualization server and a task scheduler are deployed; the visualization server is configured to receive a start request for a target visualization application sent by a user terminal; encapsulate the start request into a target application task according to the task format supported by the task scheduler, and submit the target application task to the task scheduler; the task scheduler is configured to apply for a target instance for the start request. The visualization server is further configured to, after determining that the target instance has completed the response to the start request, feed back the start request to the user terminal.
[0009] The embodiment of the present application further provides a terminal device, including a memory and a processor; one or more computer instructions are stored in the memory; the processor is coupled to the memory, and the processor is configured to run the computer instructions in the memory to execute: in response to a start operation for a target visualization application occurring in a service interface provided by the visualization server, generate a start request; send the start request to the visualization server for the visualization server to call the task scheduler to apply for a target instance for the start request; receive the feedback on the start request from the visualization server.
[0010] The embodiment of the present application further provides a computer-readable storage medium storing a computer program, which, when executed by one or more processors, causes the one or more processors to execute the foregoing service method.
[0011] The embodiment of the present application further provides a computer program product, including a computer program, which, when executed by one or more processors, causes the one or more processors to execute the foregoing service method.
[0012] In the embodiment of the present application, an innovative service solution can be implemented through the cooperation between the visualization server and the visualization client. The visualization client can be deployed on a user terminal, for example, and the visualization server can be deployed on Cloud Gamma 1. On this basis, the user can initiate a start request for a visualization application as needed by using the visualization client. After receiving the start request, the visualization server can encapsulate the start request into an application task and submit it to the task scheduler. In this way, the task scheduler can be borrowed in the usage preparation stage of the visualization application, and the scheduling ability of the task scheduler can be used to apply for visualization instances for different users respectively. Accordingly, the scheduling ability of the task scheduler can be used to automatically allocate isolated resources for different users to start the visualization application, thereby avoiding the resource contention problem when multiple users use the visualization application. BRIEF DESCRIPTION OF THE DRAWINGS
[0013] The accompanying drawings described herein are used to provide a further understanding of the present application, form a part of the present application, and the illustrative embodiments of the present application and their descriptions are used to explain the present application, and do not constitute an improper limitation to the present application. The accompanying drawings are as follows.
[0014] FIG. 1 is a schematic logical diagram of a service solution provided by an exemplary embodiment of the present application;
[0015] FIG. 2a is a schematic page diagram of a service interface provided by an exemplary embodiment of the present application;
[0016] FIG. 2b is another schematic page diagram of the service interface provided by an exemplary embodiment of the present application;
[0017] FIG. 3 is an exemplary timing diagram of interactions among all parties in a service solution provided by an exemplary embodiment of the present application;
[0018] FIG. 4 is a schematic logical diagram of another service solution provided by an exemplary embodiment of the present application;
[0019] FIG. 5 is a schematic diagram of an application scenario provided by an exemplary embodiment of the present application;
[0020] FIG. 6 is a schematic diagram of the service implementation process in the application scenario shown in FIG. 5 provided by an exemplary embodiment of the present application;
[0021] FIG. 7 is a schematic flowchart of a service method provided by another exemplary embodiment of the present application;
[0022] FIG. 8 is a schematic flowchart of another service method provided by another exemplary embodiment of the present application;
[0023] FIG. 9 is a schematic structural diagram of a control device provided by yet another exemplary embodiment of the present application;
[0024] FIG. 10 is a schematic structural diagram of a terminal device provided by yet another exemplary embodiment of the present application. Detailed Description
[0025] To make the objectives, technical solutions and advantages of the present application clearer, the technical solutions of the present application will be clearly and completely described below in conjunction with the specific embodiments of the present application and the corresponding accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts fall within the scope of protection of the present application.
[0026] Before starting to elaborate on the technical solutions provided by the embodiments of the present application in detail, several technical concepts involved in the present application are briefly explained as follows.
[0027] A visualization application refers to a type of application program that can provide a visual application interface and support users to access the application interface. Typical visualization applications include audio and video players, etc. As introduced in the background art, some HPC applications also belong to visualization applications. For a visualization application, a user can remotely access its application interface, and the usage operations performed by the user in the application interface will be submitted to the computing cluster hosting the visualization application for processing.
[0028] A visualization runtime environment can be understood as a runtime environment (Runtime environment) provided for the startup of a visualization application.
[0029] Starting a visualization application can be understood as executing some program logics in the visualization runtime environment to complete related initialization steps such as "establishing a communication channel with the computing cluster where the visualization application is located" and "rendering the application interface of the visualization application". It is similar to opening an application program on a desktop (equivalent to the visualization runtime environment).
[0030] As introduced in the background art, currently, it is usually the administrator who selects a fixed server, deploys the visualization runtime environment in the selected server, and starts the visualization application. On this basis, multiple users can access this server to use the visualization application in a visual way. However, in this visualization service mode, due to the limited hardware resources in the server, the problem of multiple users competing for resources often occurs, affecting the user experience of using the visualization application.
[0031] Therefore, this embodiment proposes an improved service method to solve the problem of resource competition when multiple users use a visualization application.
[0032] The following will elaborate in detail on the technical solutions provided by the embodiments of the present application in conjunction with the accompanying drawings.
[0033] FIG. 1 is a logical schematic diagram of a service solution provided by an exemplary embodiment of the present application. As shown in FIG. 1, the service solution provided in this embodiment involves a visualization client and a visualization server. Among them, the visualization client can be deployed in each user terminal, and the visualization server can be deployed in Yunjia 1. The deployment location of the visualization server in the cloud example is not limited in this embodiment. For example, it can be deployed in an independent cloud server or in an existing management and control node in the computing cluster where the visualization application is located, etc. No more examples are given here.
[0034] In addition, the implementation form of the visualization client is not limited in this embodiment. For example, the visualization client can be implemented as a Web side or as an Application Programming Interface (API), etc. No more examples are given here. The visualization client in this embodiment can display the service interface provided by the visualization server, and through the service interface, users can be supported to perform various operations to trigger the interaction between the visualization client and the visualization server.
[0035] Based on the traditional visualization service method provided in the background technology, it is the administrator who completes the use preparation stage of the visualization application (selecting the server, starting the visualization running environment, starting the visualization application, etc.). Users did not originally participate in this use preparation stage but could only passively accept the arrangements of the administrator. However, this traditional division of labor is subverted in this embodiment, and it is proposed that users participate in and lead this use preparation stage and no longer rely on the administrator.
[0036] For the convenience of description, in this embodiment, the technical solution will be described from the perspective of a single user who needs to use the target visualization application. It should be understood that this user can be any one of multiple users, and the target visualization application can be any one of multiple visualization applications.
[0037] FIG. 2a is a schematic diagram of a page in a service interface provided by an exemplary embodiment of the present application. Referring to FIG. 2a, various operation controls can be displayed on an exemplary page in the service interface, including but not limited to operation controls for supporting the selection of visualization applications and operation controls for triggering start requests, etc. No more examples are given here.
[0038] Based on this, for the visualization client, a start request can be generated in response to a start operation for the target visualization application that occurs in the service interface. In actual applications, the user can perform a visualization application selection operation on the operation control A in Figure 2a (for example, click on the identifier corresponding to the target visualization application). In this way, the visualization client can respond to the visualization application selection operation to select the target visualization application. After that, the user can perform a submission operation on the operation control B (start button) in Figure 2a. In this way, the visualization client can respond to this submission operation to generate a start request for the target visualization application. The generated start request will be used to request the start of the selected target visualization application.
[0039] Referring to Figure 1, the visualization client can send the generated start request to the visualization server.
[0040] In this embodiment, it is innovatively proposed to borrow the task scheduler into the usage preparation stage of the visualization application. As mentioned above, the visualization application is deployed in the computing cluster, and a task scheduler is deployed in the computing cluster. The task scheduler is responsible for scheduling the application tasks submitted to the computing cluster to apply for appropriate resources in the computing cluster to process the application tasks. It can be seen that the task scheduler does not originally participate in the usage preparation stage of the visualization application either. Instead, it will start working after the usage preparation stage of the visualization application is completed and the user creates an application task through the accessed application interface. In this embodiment, the existing working logic in the task scheduler is not limited, and there may be differences in the existing working logic of the task scheduler in different application scenarios. Taking the HPC scenario as an example: the task scheduler can be responsible for receiving the computing jobs submitted by the user, allocating the jobs to the specific computing resources of the computing cluster for calculation according to the preset scheduling policy, and is also responsible for monitoring the running status of the jobs to obtain the calculation execution results. The job is the application task in the HPC scenario, and different jobs can be configured with different resource requirements, priorities, execution times and other parameters. Generally, the task scheduler can adopt different scheduling policies for the parameters configured by different jobs. When there are many jobs on the computing resources, the task scheduler can perform job queuing and queue management. The task scheduler will also monitor the job execution results, and the jobs that fail to execute can be resubmitted for execution.
[0041] It should be understood that regardless of which application scenario, the task scheduler usually has the scheduling ability to schedule the received application tasks and apply for computing resources for the application tasks. In this embodiment, it is proposed to borrow this scheduling ability of the task scheduler into the usage preparation stage of the visualization application.
[0042] Continuing with Figure 1 , after receiving a launch request, the visualization server can encapsulate the launch request into an application task. The launch request format complies with the transmission protocol between the visualization server and the visualization client in this embodiment, but this format is not supported by the task scheduler. Therefore, in this embodiment, the visualization client can encapsulate the launch request into a target application task in a task format supported by the task scheduler and submit it to the task scheduler.
[0043] As mentioned above, the task scheduler already has the ability to schedule application tasks. Therefore, upon receiving a target application task, the task scheduler schedules the target application task and applies for computing resources for it. In this embodiment, the computing resources applied for by the task scheduler for the target application task are the target instance.
[0044] In this embodiment, the task scheduler can incorporate elastic computing technology when scheduling target application tasks. Elastic computing is a flexible computing resource allocation method that dynamically adjusts the quantity and type of computing resources based on computing needs. This technology can help users process more requests during peak hours, avoiding resource bottlenecks caused by insufficient computing resources. It also frees up unnecessary resources during off-peak hours, avoiding waste caused by excessive computing resources, thereby maximizing resource utilization and reducing costs. Computing resources are provided by cloud service providers, and users only need to use them on demand and pay the corresponding fees. As mentioned above, in this embodiment, the computing resources requested for the target application tasks can be elastic service instances provided by elastic computing technology. Implementations of elastic service instances may include, but are not limited to, containers, virtual machines, function services, cloud servers, bare metal servers, and so on. Further examples are not provided here.
[0045] Figure 3 is an exemplary timing diagram of interactions among all parties in a service solution provided by an exemplary embodiment of the present application. Referring to Figure 3, in practical applications, the management module responsible for elastic scaling can monitor the details of each application task in the task scheduler, make decisions on the resource usage for the application tasks, and create elastic service instances for the application tasks in the task scheduler according to the resource usage. In this way, the task scheduler can apply for target instances for the target application tasks. The management module for elastic scaling can be an independently deployed system, or can be deployed together with the task scheduler or be an internal component of the task scheduler. It should be understood that, based on elastic computing technology, elastic service instances can be elastically applied for or released. Referring to Figure 3, in practical applications, the management module responsible for elastic scaling may include a resource management component, which is used to be responsible for life cycle management functions such as instance creation, deletion, addition, and exit of computing resources in the computing cluster. The resource management component can interact with the task scheduler to notify the task scheduler of the addition and exit of computing resources, so that the task scheduler can update its own scheduling policy. In this way, the resource management component can implement the life cycle management of elastic service instances. Similarly, the resource management component can be an independently deployed system, or can be deployed together with the task scheduler or be an internal component of the task scheduler.
[0046] It is worth noting that the scheduling process corresponding to the task scheduler described here is only exemplary, and this embodiment is not limited thereto. In this embodiment, it is only necessary to be able to apply for target instances by borrowing the existing scheduling capabilities of the task scheduler, without limiting how the task scheduler specifically applies for target instances, and no more details will be given in this regard.
[0047] Further preferably, in this embodiment, in the foregoing step of generating a startup request, in addition to selecting a target visualization application, the user can also configure resource requirements for the target visualization application. Referring to FIG. 2a, the user can perform a resource requirement configuration operation on the operation control C for resource requirement configuration in FIG. 2a to input the required instance resource specifications for the target visualization application. In this way, the visualization client can determine the required instance resource specifications for the target visualization application in response to the resource requirement configuration operation occurring in the service interface. Among them, the instance resource specifications may include but are not limited to the required number of CPU cores, the required number of GPUs, and the required amount of memory, etc. As shown in FIG. 2a, the user can configure the number of CPU cores, the number of GPUs, and the amount of memory, etc. for the target visualization application on the operation control C. On this basis, the visualization client can generate a startup request based on the identifier of the target visualization application and the instance resource specifications. For such a startup request, the visualization server can encapsulate the instance resource specifications in the target application task. In this way, in the process of task scheduling by the task scheduler, the task scheduler will apply for the target instance according to the instance resource specifications in the target application task, which can be achieved by means of the elastic computing technology mentioned above.
[0048] It should be understood that in FIG. 2a, the operation control A and the operation control C are schematically shown on the same page. In actual applications, the pages where various operation controls are located can be designed as needed, and it is not limited to this. The exemplary page shown in FIG. 2a should not impose any limitations on the service interface provided by the visualization server in this application.
[0049] Continuing to refer to FIG. 1, the startup request will be scheduled to the target instance. Based on this, the target instance can respond to the startup request to start the target visualization application on the target instance. As mentioned above, the process of the target instance starting the target visualization application may include but is not limited to creating a visualization running environment and rendering the application interface of the target visualization application in the visualization running environment. That is, the target instance has completed the preparation work for using the target visualization application. After completing the startup of the target visualization application, a visualization execution environment is running on the target instance. Therefore, the target instance in this embodiment can also be referred to as a visualization instance to distinguish it from the computing instance used to carry out the computing work corresponding to the visualization application in the following text.
[0050] In this way, in this embodiment, for different startup requests, different target instances can be applied for, and different instances are isolated from each other and do not interfere with each other. Therefore, the resources occupied by different startup requests are isolated from each other, and the problem of multiple users competing for resources no longer exists.
[0051] On this basis, continuing to refer to FIG. 1, after the visualization server determines that the target instance has completed the response to the start request, it can feedback the start request to the user terminal. Among them, referring to FIG. 3, in practical applications, the visualization server can monitor the task status information of the target application task from the task scheduler, and the task status information can describe whether the target instance applied by the task scheduler has completed the task response. Therefore, the visualization server can determine whether the target instance has completed the response to the start request according to the monitored task status information. If it has been completed, it means that the target visualization application has completed the usage preparation on the target instance, so that the visualization server can feedback the start request to the visualization client, that is, feedback to the visualization client that the target visualization application has been fully started.
[0052] In this embodiment, the feedback form adopted by the visualization server when feeding back the start request is not limited. Optionally, the visualization server can use methods such as notifications, instructions, or data packets in a conventional format to implement the start request feedback, and no more examples of feedback forms are given here. In this embodiment, the feedback form can be agreed in advance in the communication protocol between the visualization server and the visualization client, and the visualization server feeds back the start request according to the feedback form agreed in the communication protocol, which can ensure that the visualization client can know that the sent start request has been completed.
[0053] Referring to FIG. 1, for the visualization client, it can receive the feedback from the visualization server for the start request. After that, the visualization client can continue to support the user to use the target visualization application.
[0054] In summary, in this embodiment, an innovative service solution can be realized through the cooperation between the visualization server and the visualization client. The visualization client can be deployed on the user terminal, and the visualization server can be deployed in Yunjia 1. On this basis, the user can initiate a start request for the visualization application as needed by using the visualization client. After receiving the start request, the visualization server can encapsulate the start request as an application task and submit it to the task scheduler. In this way, the task scheduler can be borrowed in the process of starting the visualization application, and the scheduling ability of the task scheduler can be used to apply for visualization instances for different users respectively. Accordingly, different users can use the visualization application through isolated resources, and with the help of the elastic scheduling ability of the task scheduler, it can support elastic allocation of resources on demand among different users, thus avoiding the problem of resource contention when multiple users use the visualization application.
[0055] FIG. 4 is a schematic logical diagram of another service solution provided by an exemplary embodiment of the present application. Referring to FIG. 4, in the above or following embodiments, the visualization client may further support the user to perform a closing operation on the target visualization application in the service interface. FIG. 2b is another schematic diagram of a page in the service interface provided by an exemplary embodiment of the present application. Referring to FIG. 2b, various operation controls may be displayed on an exemplary page in the service interface, including but not limited to operation controls for supporting the selection of a started visualization application, and operation controls for triggering a closing request, etc., and no more examples are given here.
[0056] Based on this, for the visualization client, it can generate a closing request in response to a closing operation on the target visualization application that occurs in the service interface. In an optional closing solution: the user can perform a visualization application selection operation on the operation control D in FIG. 2b (for example, click on the identifier corresponding to the target visualization application), so that the visualization client can respond to the visualization application selection operation to select the target visualization application; then, the user can perform a triggering operation on the operation control E (closing button) in FIG. 2b, so that the visualization client can respond to this triggering operation to generate a closing request for the target visualization application. That is, the generated closing request is used to request to close the selected target visualization application.
[0057] In this embodiment, other closing solutions may also be adopted in the visualization client to generate a closing request. For example, after detecting that the user closes the application interface of the target visualization application, a closing request for the target visualization application may be generated, etc. No more examples of closing solutions are given here.
[0058] Continuing to refer to FIG. 4, the visualization client can send the closing request to the visualization server.
[0059] As mentioned above, the target application task is submitted by the visualization server to the task scheduler in this embodiment. Therefore, the visualization server can be used as the submitter of the target application task. In this way, from the perspective of the task scheduler, the visualization server has the permission to request to stop the target application task. And the task scheduler has the ability to stop tasks. In this embodiment, it is proposed to borrow the task stopping ability of the task scheduler to the closing link of the visualization application.
[0060] Based on this, referring to FIG. 4, for the visualization server, after receiving the closing request for the target visualization application sent by the visualization client, it can submit a task stop instruction for the target application task to the task scheduler to trigger the task scheduler to release the target instance.
[0061] In summary, in this embodiment, the ability to stop tasks in the task scheduler is borrowed to release the applied target instances on demand. In this way, not only can instances be applied for different users on demand, but also the instances can be released in a timely manner according to the actual usage of different users, achieving the effect of using and leaving at any time and releasing when not in use, and ensuring the utilization rate of cloud computing resources.
[0062] In the above or following embodiments, the interaction mode between the visualization client and the visualization server is also optimized to provide users with a consistent and simple usage experience.
[0063] In this preferred implementation, during the process of feeding back a start request to the visualization client: the visualization server can generate access address information for routing to the target instance for the start request; and feed back the access address information to the visualization client. Specifically, the access address information can be carried in the notification, instruction, or data packet mentioned above to be fed back to the visualization client. And the visualization client can create an interface access entry for the target visualization application based on the access address information.
[0064] In this way, from the perspective of the user, they only need to simply click on the interface access entry to access the application interface of the target visualization application. This enables the user to obtain a consistent and simple visualization usage experience, and the user is unaware of the start request encapsulation process and the target instance application process in this embodiment.
[0065] In this preferred implementation, the display form of the interface access entry is not limited. For example, the interface access entry can be displayed as an icon or a session identifier, etc., and no more examples are given here. In addition, the visualization client can create independent interface access entries for different visualization applications and record the access address information associated with each interface access entry.
[0066] On this basis, the user can initiate a visualization request for the visualization application through the interface access entry in the service interface displayed by the visualization client. In this way, in this embodiment, the visualization client can generate a visualization request carrying the access address information in response to the trigger operation for the interface access entry; and can send the visualization request to the visualization server.
[0067] Among them, the visualization request here can be understood as a remote access request initiated for the application interface of the visualization application. In actual applications, a remote access protocol client can be installed in the visualization client in this embodiment, and a remote access protocol server can be installed in the target instance. Based on the cooperation between the remote access protocol client and the remote access protocol server, the application interface of the target visualization application can be displayed in the visualization client. Optionally, the remote access protocol in this embodiment can adopt the Virtual Network Console (VNC) protocol. Of course, protocols such as Xmanager can also be adopted in this embodiment, which is not limited here. No matter which protocol is adopted, by installing the corresponding protocol client in the visualization client in this embodiment, it can be ensured that the format of the generated visualization request is a format that can be supported by the target instance, so that after the visualization request reaches the target instance, it can trigger the target instance to respond.
[0068] Based on this, in this embodiment, the visualization client can generate a visualization request according to the request format agreed in the foregoing remote access protocol. The visualization request needs to carry access address information. For example, it is usually carried in the address field in the request header. Different from the conventional remote access protocol, in this embodiment, the visualization request generated by the visualization client carries the access address information provided by the visualization server, rather than directly carrying the address information of the target instance. However, as described above, the visualization server in this embodiment can route the visualization request based on this access address information. Therefore, even if the visualization request generated by the visualization client does not carry the address information of the target instance, through the routing function of the visualization server, it can still be ensured that the visualization request can reach the target instance without obstacles.
[0069] It can be seen that in this embodiment, the user can initiate a visualization request for the target visualization application conveniently and quickly through the intuitive interface access entry.
[0070] For the visualization server, it can receive the visualization request sent by the user terminal through the interface access entry; and route it according to the access address information carried in the visualization request to route the visualization request to the target instance.
[0071] In this embodiment, it is proposed that the visualization server can be used as a network proxy between the visualization client and the target instance. In this way, through the routing function of the visualization server, it can be ensured that the visualization request sent by the visualization client can reach the target instance without obstacles.
[0072] In an exemplary solution that supports the transmission of visualization requests: An access address space for user terminals can be pre-configured in the visualization server. Visualization clients in different user terminals can initiate visualization requests according to this unified access address space. Among them, the access address space can include a port space and an IP address space. In the port space, non-overlapping port numbers can be assigned to different visualization applications, and in the IP address space, several IP addresses available for visualization requests can be provided. Based on this, the visualization server can obtain the address information of the target instance returned by the task scheduler; map the address information of the target instance to the access address space to generate address mapping information; and encapsulate the address mapping information into access address information. Among them, the address information of the target instance includes a port and / or an IP address. Exemplarily, the visualization server can encapsulate the address mapping information into a preset address format to generate access address information. Here, the preset address format can be a Uniform Resource Locator (URL), etc., and no more examples of address formats are given here.
[0073] For example, the visualization server can assign port number 1000 to the target visualization application in this access address space. If the port number in the address information of the target instance obtained is 80 and the IP address is 168.1.1.0, in order to prevent the address information of the target instance from being disclosed to the visualization client, the visualization server in this embodiment can be used as a network proxy. Based on this, the port number 80 of the target instance can be mapped to port number 1000, and the IP address of the target instance can be mapped to 192.0.0.0 in this access address space. In this way, a URL can be encapsulated based on port number 1000 and IP address 192.0.0.0 and returned to the visualization client as the access address information. The visualization request initiated by the visualization client will carry this URL. As mentioned above, the visualization server in this embodiment can be used as a network proxy to parse the port number 1000 and IP address 192.0.0.0 from this URL, and based on the managed mapping relationship (for example, the corresponding mapping relationship can be recorded in the way of a session), it can be determined that the visualization request should be sent to port number 80 and IP address 168.1.1.0. The visualization server can accurately forward the visualization request to the target instance based on the determined address.
[0074] It can be seen that in this embodiment, using the visualization server as a network proxy between the visualization client and the target instance can effectively protect the security of the target instance and prevent the user terminal from directly accessing the target instance through the visualization server.
[0075] In addition, in this embodiment, a security group can also be configured in the visualization server. A security group is a logical grouping that can provide access policies for elastic service instances with the same security protection requirements and mutual trust. Based on this, in this embodiment, the visualization server can configure security groups for different users respectively. Among them, the target instances created for a single user are in the same security group. Based on each security group, access control is performed on the received visualization requests.
[0076] Based on the security group, after the visualization server in this embodiment determines that a target instance has been applied for the user, it can add the applied target instance to the security group corresponding to the user. In this way, from the perspective of a single user, each target instance applied for by initiating a startup request can be added to the security group corresponding to the user, and will not be added to the security group corresponding to other users.
[0077] Based on the security group, the visualization server in this embodiment can implement access control (Resource Access Management, RAM) on the received visualization requests, so as to ensure that users can only access the target instances they have applied for, and cannot access the target instances corresponding to other users, thereby further ensuring user isolation and improving the security of user data.
[0078] Similarly, after the target instance receives the visualization request, through the network proxy function provided by the visualization server in this embodiment, it can return the application interface of the target visualization application to the visualization client. Based on this, the visualization client can display the application interface of the target visualization application provided by the target instance in the service interface.
[0079] After that, the user can perform visualization operations in the application interface. For the visualization client, it can generate an operation instruction in response to the visualization operation occurring in the application interface, and send the operation instruction to the visualization server for the visualization server to route the operation instruction to the target instance.
[0080] After the operation instruction reaches the target instance, the target instance can generate an application task according to the operation instruction. It should be understood that the application task generated by the target instance here is the computing task that the visualization application needs to execute. The application task generated by the target instance will be submitted to the task scheduler according to the traditional task processing flow to trigger the task scheduler to schedule computing resources for the application task. In practical applications, the target visualization application is usually deployed on multiple computing instances in its computing cluster, and these computing instances can carry out the computing work corresponding to the visualization application. On this basis, the task scheduler can schedule the application task to a suitable computing instance, so that the computing instance can execute the relevant computing work to complete the response to the application task; if a suitable computing instance cannot be scheduled, the task scheduler can also apply for a new computing instance for the application task and complete the response to the application task after deploying the target visualization application in the applied computing instance. Details about task scheduling will not be elaborated further, and various task scheduling schemes that may appear currently or in the future can be referred to. This embodiment does not limit the task scheduling scheme.
[0081] FIG. 5 is a schematic diagram of an application scenario provided by an exemplary embodiment of the present application. Referring to FIG. 5, the service solution provided in this embodiment can be applied to a high-performance computing (HPC) scenario or an elastic high-performance computing (E-HPC) scenario. In the E-HPC scenario shown in FIG. 5, an application center is deployed in the E-HPC service provided by a cloud service provider, and the application center can be responsible for application management and deployment. The application center includes various HPC applications such as vina and vmd. Among them, some applications can support interaction with end users in a visual way, and such applications are the visualization applications in this embodiment. The visualization applications included in the application center can be directly called by visualization jobs.
[0082] Based on the service solution provided in this embodiment, an independent visualization service can be abstracted from the foregoing E-HPC service. The visualization service here can be understood as a cloud service unit, and the visualization service includes two parts: a visualization client and a visualization server. Referring to FIG. 5, the visualization client can be deployed on the user terminal for users to use, while the visualization server is deployed on the cloud.
[0083] Continuing to refer to FIG. 5, a schematic diagram of the internal structure of the visualization server is also shown. The visualization server can include an agent component, a conversion component, a communication component, a management component, etc.
[0084] Communication component: It can be implemented as a software logic unit, which is used to manage the number of visualized channels and is responsible for docking with user terminals. Referring to FIG. 5, if the visualized client adopts the WEB side, the communication component can use the session method to enable different users to obtain a consistent visualized web experience.
[0085] Management component: It can be used to solve the problem of port number management complexity in the case of multiple users and multiple applications under traditional visualization services. The management component can also automatically allocate ports and open security groups through the access control RAM system on the cloud to make the visualization service simpler.
[0086] Proxy component: It is used as a network proxy to perform network routing between the visualized client and the E-HPC cluster resources, so as to shield the cluster resources from users and protect the security of the cluster resources.
[0087] Conversion component: It is mainly responsible for encapsulating the start request sent by the visualized client into a visualized job supported by the HPC scheduler and submitting it to the HPC scheduler for scheduling.
[0088] The functions of the components inside the visualized server in the E-HPC scenario in FIG. 5 are briefly described above. For the method steps described in the foregoing embodiments. The communication component in FIG. 5 can be responsible for receiving the start request for the target visualized application sent by the user terminal; the conversion component can be responsible for encapsulating the start request into a target application task according to the task format supported by the task scheduler and submitting it to the task scheduler to trigger the task scheduler to apply for a target instance for the target application task; and the communication component can also be responsible for feeding back the start request to the user terminal after determining that the target instance has completed the response to the start request. More specifically, the management component in FIG. 5 can be responsible for generating access address information for each start request, establishing security groups for different users and performing access control, etc. The proxy component in FIG. 5 is responsible for the working logic related to routing. The detailed working logic of each component will not be elaborated here, and reference can be made to the relevant descriptions in the foregoing embodiments.
[0089] In addition, referring to FIG. 5, other existing service units in the E-HPC service are also borrowed to assist in implementing the service solution provided in this embodiment. These existing service components include the following components.
[0090] HPC Scheduler: It is responsible for receiving the computing jobs submitted by users, allocating the jobs to the specific computing resources in the computing cluster according to different scheduling policies, monitoring the running status of the jobs to obtain the computing execution results. Among them, the job is the computing task of HPC, and different jobs are configured with different resource requirements, priorities, execution times and other parameters. Generally, the HPC scheduler can adopt different scheduling policies according to the configuration parameters of different jobs. When there are many jobs on the computing resources, the HPC scheduler will perform job queuing and queue management. The HPC scheduler will also monitor the job execution results, and the jobs that fail to execute can be resubmitted for execution.
[0091] Elastic Scaling Component: An internal unit of E-HPC. This module listens to the job details in the scheduler, makes internal decisions on the job resource usage, and applies for and releases cloud resources through a unified API to complete the dynamic allocation of cluster resources. In this solution, by listening to the visual job resource requirements, resource application and release are completed, and finally users can use the visual service without feeling it.
[0092] Resource Management Component: It is responsible for the life cycle management functions such as resource creation, deletion, addition and withdrawal of computing resources in the entire E-HPC cluster. The resource management component interacts with the HPC scheduler to notify the HPC scheduler of the addition and withdrawal of computing resources, so that the HPC scheduler can update its scheduling policy. Different from the composition of traditional supercomputer systems, since the instances on the cloud can be elastically applied for and released, this embodiment borrows this resource management component for the life cycle management of cluster resources. The resource management component can be an independently deployed system, or can be deployed together with the HPC scheduler or as an internal component of the HPC scheduler.
[0093] In addition, referring to FIG. 5, an E-HPC cluster in the E-HPC scenario is also shown, and each HPC application managed in the foregoing application center is deployed in the E-HPC cluster. The computing resources in the E-HPC cluster can include elastic service instances such as virtual machines VM, GPUs or bare metals.
[0094] FIG. 6 is a schematic diagram of the implementation process of the visual service in the application scenario shown in FIG. 5 provided by an exemplary embodiment of the present application. Referring to FIG. 6, the visual service server can receive a start request through the logical visual channel between the visual client, encapsulate the received start request as a visual job, and realize a visually dynamic expanded service through the combination of the HPC scheduler and elastic scaling technology, bringing a simple and consistent user experience. The implementation process of the exemplary visual service generally includes the following steps.
[0095] 1. The user applies for using a visualization application on E-HPC through web, client or other API methods. E-HPC can return the URL of the visualization application to the user through the visualization server, and the user can directly open and operate it.
[0096] 2. The internal logic of the visualization server manages the startup requests sent by the user, manages the visualization applications inside E-HPC, obtains the execution bodies, encapsulates the startup requests as visualization jobs, and submits them to the HPC scheduler.
[0097] 3. The HPC scheduler schedules the visualization jobs, cooperates with the elastic scaling service, judges the resources such as servers and ports required by the visualization jobs, and realizes the automatic application and release of resources.
[0098] 4. The visualization server obtains the job running details from the HPC scheduler, gets information such as the port numbers of the visualization instances applied for the startup requests, and provides a unified access link through the internal proxy component.
[0099] It should be understood that in this embodiment, the target instance applied for by the HPC scheduler for the startup request sent by the visualization client will also be located in the E-HPC cluster. In this way, based on the service solution provided in this embodiment, the E-HPC cluster will at least contain two parts of instances: the first part of the instances is used to deploy the visualization running environment and render the application interfaces of the visualization applications, that is, the various target instances in this embodiment; the second part of the instances is the instances originally existing in the E-HPC cluster and used to deploy HPC applications. In the target instances applied for in this embodiment, visualization jobs can be triggered based on the remote operations of the user on the application interface. Through the job scheduling process of the HPC scheduler, the visualization jobs can be scheduled to the second part of the instances mentioned above to execute the jobs. The job results will be returned to the aforementioned target instances, and the target instances can update the application interface according to the job results and present the updated application interface to the visualization client for the user to view.
[0100] On this basis, based on the service solution provided in this embodiment, at least the following technical effects can be obtained in the application scenario shown in Figure 5.
[0101] 1. Visualization resource isolation to avoid visualization resource competition under multiple users.
[0102] 2. Solve the problem of manual deployment of the visualization environment. Whether it is the cluster administrator or the end user, they are insensitive to resources such as the visualization running environment and ports.
[0103] 3. Compared with fixed visualization clusters / servers, the feature of this solution is its elasticity, which can be used as needed, meeting the visualization usage requirements while saving costs.
[0104] 4. Through visualization internal proxy, application, and port management, users can obtain a simplified and consistent experience.
[0105] FIG. 7 is a schematic flowchart of a service method provided by another exemplary embodiment of the present application. This method can be executed on a visualization server, which can be implemented as software, hardware, or a combination of software and hardware, and can be integrated into a computing device in a cloud example. Referring to FIG. 7, this method may include steps 700 to 702.
[0106] Step 700: Receive a startup request for a target visualization application sent by a user terminal.
[0107] Step 701: Package the startup request into a target application task according to the task format supported by the task scheduler and submit it to the task scheduler to trigger the task scheduler to apply for a target instance for the target application task.
[0108] Step 702: After determining that the target instance has completed the response to the startup request, send a startup request feedback to the user terminal.
[0109] In an optional embodiment, this method may further include: after receiving a shutdown request for the target visualization application sent by the user terminal, submit a task stop instruction for the target application task to the task scheduler to trigger the task scheduler to release the target instance.
[0110] In an optional embodiment, sending a startup request feedback to the user terminal includes: generating access address information for routing to the target instance for the startup request; and feeding back the access address information to the user terminal to trigger the user terminal to create an interface access entry for the target visualization application based on the access address information.
[0111] In an optional embodiment, this method may further include: receiving a visualization request sent by the user terminal through the interface access entry; and routing according to the access address information carried in the visualization request to route the visualization request to the target instance.
[0112] In an alternative embodiment, generating access address information for routing to the target instance for the startup request includes: obtaining the address information of the target instance returned by the task scheduler; mapping the address information of the target instance to the access address space for the user terminal configured in the visualization server to generate address mapping information; encapsulating the address mapping information into a preset address format to generate the access address information; wherein the address information of the target instance includes a port and / or an IP address.
[0113] In an alternative embodiment, the method may further include: configuring security groups for different users respectively, wherein the target instances created for a single user are in the same security group; based on each security group, performing access control on the received visualization requests.
[0114] FIG. 8 is a schematic flowchart of another service method provided by another exemplary embodiment of the present application. This method can be executed by a visualization client, which can be implemented as software, hardware, or a combination of software and hardware, and the visualization client can be integrated in a user terminal. Referring to FIG. 8, the method may include steps 800 to 802.
[0115] Step 800, in response to a startup operation on a target visualization application that occurs in the service interface provided by the visualization server, generating a startup request.
[0116] Step 801, sending the startup request to the visualization server for the visualization server to call the task scheduler to apply for a target instance for the startup request.
[0117] Step 802, receiving the feedback from the visualization server on the startup request.
[0118] In an alternative embodiment, the method may further include: in response to a shutdown operation on the target visualization application that occurs in the service interface, generating a shutdown request; sending the shutdown request to the visualization server for the visualization server to call the task scheduler to release the target instance.
[0119] In an alternative embodiment, in response to a start operation for a target visualization application occurring in a service interface provided by a visualization server, a start request is generated, including: in response to a visualization application selection operation occurring in the service interface to select the target visualization application; in response to a resource requirement configuration operation occurring in the service interface, determining the required instance resource specification for the target visualization application; generating the start request based on the identifier of the target visualization application and the instance resource specification; wherein the target instance is applied for according to the instance resource specification.
[0120] In an alternative embodiment, receiving feedback from the visualization server on the start request, including: receiving access address information fed back by the visualization server; after receiving the access address information, the method further includes: creating an interface access entry for the target visualization application in the service interface based on the access address information; in response to a trigger operation for the interface access entry, generating a visualization request carrying the access address information; sending the visualization request to the visualization server for the visualization server to route the visualization request to the target instance based on the access address information; and displaying, in the service interface, the application interface of the target visualization application provided by the target instance.
[0121] In an alternative embodiment, the method may further include: in response to a visualization operation occurring in the application interface, generating an operation instruction; sending the operation instruction to the visualization server for the visualization server to route the operation instruction to the target instance; wherein the target instance generates an application task according to the operation instruction and submits it to the task scheduler to trigger the task scheduler to apply for an instance for executing the application task.
[0122] It should be noted that in some processes described in the above embodiments and the accompanying drawings, there are multiple operations occurring in a specific order. However, it should be clearly understood that these operations may not be executed in the order in which they appear in this document or may be executed in parallel. The operation numbers such as 801, 802, etc. are only used to distinguish different operations, and the numbers themselves do not represent any execution order. Additionally, these processes may include more or fewer operations, and these operations may be executed in sequence or in parallel. Another aspect, these processes may include more or fewer operations, and these operations may be executed in sequence or in parallel.
[0123] FIG. 9 is a schematic structural diagram of a control device provided by another exemplary embodiment of the present application. As shown in FIG. 9, a visualization server 90 and a task scheduler 91 can be deployed on the control device; the visualization server 90 is configured to receive a start request for a target visualization application sent by a user terminal; encapsulate the start request into a target application task according to the task format supported by the task scheduler, and submit the target application task to the task scheduler; the task scheduler 91 is configured to apply for a target instance for the start request; the visualization server 90 is further configured to, after determining that the target instance has completed the response to the start request, feed back the start request to the user terminal.
[0124] In an alternative embodiment, the visualization server 90 may further be configured to, after receiving a close request for the target visualization application sent by the user terminal, submit a task stop instruction for the target application task to the task scheduler; the task scheduler 91 may further be configured to release the target instance according to the task stop instruction.
[0125] In an alternative embodiment, when the visualization server 90 feeds back the start request to the user terminal, it may specifically be configured to: generate access address information for routing to the target instance for the start request; feed back the access address information to the user terminal to trigger the user terminal to create an interface access entry for the target visualization application based on the access address information.
[0126] In an alternative embodiment, the visualization server 90 may further be configured to: receive a visualization request sent by the user terminal through the interface access entry; route the visualization request according to the access address information carried in the visualization request to route the visualization request to the target instance.
[0127] In an alternative embodiment, when the visualization server 90 generates access address information for routing to the target instance for the start request, it may specifically be configured to: obtain the address information of the target instance returned by the task scheduler; map the address information of the target instance to the access address space facing the user terminal configured in the visualization server to generate address mapping information; encapsulate the address mapping information into a preset address format to generate the access address information; wherein the address information of the target instance includes a port and / or an IP address.
[0128] In an alternative embodiment, the visualization server 90 may also be used to: configure security groups for different users respectively, where the instances created for a single user are in the same security group; perform access control on the received visualization requests based on each security group.
[0129] It should be noted that for the technical details in the above embodiments of the control device, reference may be made to the relevant descriptions of the visualization server in the foregoing solution logic embodiments. To save space, they will not be elaborated here, but this should not cause loss of the protection scope of this application.
[0130] FIG. 10 is a schematic structural diagram of a terminal device provided by another exemplary embodiment of the present application. As shown in FIG. 9, the terminal device may include a memory 10 and a processor 11; one or more computer instructions are stored in the memory 10; the processor 11 is coupled to the memory 10, and the processor 11 is configured to run the computer instructions in the memory 10 to perform: generating a start request in response to a start operation for a target visualization application occurring in the service interface provided by the visualization server; sending the start request to the visualization server for the visualization server to call the task scheduler to apply for a target instance for the start request; receiving a feedback from the visualization server on the start request.
[0131] In an alternative embodiment, the processor 11 may also be used to: generate a close request in response to a close operation for the target visualization application occurring in the service interface; send the close request to the visualization server for the visualization server to call the task scheduler to release the target instance.
[0132] In an alternative embodiment, when generating a start request in response to a start operation for a target visualization application occurring in the service interface provided by the visualization server, the processor 11 may specifically be used to: respond to a visualization application selection operation occurring in the service interface to select the target visualization application; respond to a resource requirement configuration operation occurring in the service interface to determine the required instance resource specification for the target visualization application; generate the start request based on the identifier of the target visualization application and the instance resource specification; where the target instance is applied for according to the instance resource specification.
[0133] In an alternative embodiment, when the processor 11 receives the feedback from the visualization server for the startup request, it may specifically be used to: receive the access address information fed back by the visualization server. After receiving the access address information, the processor 11 may further be used to: create an interface access entry for the target visualization application in the service interface based on the access address information; in response to a trigger operation for the interface access entry, generate a visualization request carrying the access address information; send the visualization request to the visualization server for the visualization server to route the visualization request to the target instance based on the access address information; and display the application interface of the target visualization application provided by the target instance in the service interface.
[0134] In an alternative embodiment, the processor 11 may further be used to: in response to a visualization operation occurring in the application interface, generate an operation instruction; send the operation instruction to the visualization server for the visualization server to route the operation instruction to the target instance; wherein, the target instance generates an application task according to the operation instruction and submits it to the task scheduler to trigger the task scheduler to apply for an instance for executing the application task for the application task.
[0135] Further, as shown in FIG. 10, the terminal device further includes: a communication component 12, a display 13, a power supply component 14, an audio component 15 and other components. Only some components are schematically shown in FIG. 10, which does not mean that the terminal device only includes the components shown in FIG. 10.
[0136] It should be noted that for the technical details in the above embodiments of the terminal device, reference may be made to the relevant descriptions of the visualization client in the foregoing solution logic embodiments. To save space, they will not be elaborated here, but this should not cause loss of the protection scope of this application.
[0137] Correspondingly, an embodiment of the present application further provides a computer-readable storage medium storing a computer program, and when the computer program is executed, it can implement each executable step in the above method embodiment.
[0138] In addition, an embodiment of the present application further provides a computer program product, and when the computer program is executed by one or more processors, it causes the one or more processors to execute the foregoing service method.
[0139] The memory in FIG. 10 above is used to store computer programs and can be configured to store various other data to support operations on a computing platform. Examples of such data include instructions for any application or method operating on the computing platform, contact data, phone book data, messages, pictures, videos, etc. The memory can be implemented by any type of volatile or non-volatile storage 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 memory, flash memory, magnetic disks or optical disks.
[0140] The communication component in FIG. 10 above is configured to facilitate communication, in a wired or wireless manner, between the device where the communication component is located and other devices. The device where the communication component is located can access a wireless network based on communication standards, such as WiFi, 2G, 3G, 4G / LTE, 5G and other mobile communication networks, or a combination thereof. In an exemplary embodiment, the communication component receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component further includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology and other technologies.
[0141] The display in FIG. 10 above includes a screen, which can include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen can be implemented as a touch screen to receive input signals from a user. The touch panel includes one or more touch sensors to sense touches, swipes and gestures on the touch panel. The touch sensors can sense not only the boundaries of touch or swipe actions, but also detect the duration and pressure associated with the touch or swipe operation.
[0142] The power supply component in FIG. 10 above provides power to various components of the device where the power supply component is located. The power supply component can include a power management system, one or more power supplies, and other components associated with generating, managing and distributing power for the device where the power supply component is located.
[0143] The audio component in FIG. 10 above can be configured to output and / or input audio signals. For example, the audio component package It includes a microphone (MIC), which is configured to receive an external audio signal when the device where the audio component is located is in an operating mode, such as a call mode, a recording mode, and a voice recognition mode. The received audio signal can be further stored in a memory or transmitted via a communication component. In some embodiments, the audio component further includes a speaker for outputting an audio signal.
[0144] Those skilled in the art should understand that the embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the present application can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk memory, CD-ROM, optical memory, etc.) that contain computer-usable program code.
[0145] The present application is described with reference to the flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each flow and / or block in the flowchart and / or block diagram can be implemented by computer program instructions, and the combination of flows and / or blocks in the flowchart and / or block diagram can also be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing devices generate a device for implementing the functions specified in one or more flows in the flowchart and / or one or more blocks in the block diagram.
[0146] These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer-readable memory generate a manufactured article including an instruction device, and the instruction device implements the functions specified in one or more flows in the flowchart and / or one or more blocks in the block diagram.
[0147] These computer program instructions can also be loaded onto a computer or other programmable data processing device, so that a series of operation steps are executed on the computer or other programmable device to generate a computer-implemented process. Therefore, the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one or more flows in the flowchart and / or one or more blocks in the block diagram.
[0148] It should also be noted that the term "comprising", "including" or any other variant thereof is intended to cover non-exclusive inclusion, such that a process, method, article or apparatus comprising a series of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article or apparatus. Without further limitation, an element defined by the statement "comprising a ....." does not exclude the presence of additional identical elements in the process, method, article or apparatus comprising the said element. 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 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. Moreover, the collection, use and processing of relevant data need to comply with the relevant laws, regulations and standards of the relevant countries and regions, and corresponding operation entrances are provided for users to choose to authorize or refuse.
[0150] The above are only embodiments of the present application and are not intended to limit the present application. For those skilled in the art, various changes and modifications can be made to the present application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included within the protection scope of the present application.
Claims
Claims 1. A service method, wherein, Applicable to the visualization server, the method includes: receiving a startup request for a target visualization application sent by a user terminal; encapsulating the startup request into a target application task according to the task format supported by the task scheduler and submitting it to the task scheduler to trigger the task scheduler to apply for a target instance for the target application task; after determining that the target instance has completed the response to the startup request, sending feedback on the startup request to the user terminal.
2. The method according to claim 1, wherein, It further includes: After receiving a shutdown request for the target visualization application sent by the user terminal, submitting a task stop instruction for the target application task to the task scheduler to trigger the task scheduler to release the target instance.
3. The method according to claim 1, wherein Sending feedback on the startup request to the user terminal includes: generating access address information for routing to the target instance for the startup request; sending the access address information to the user terminal to trigger the user terminal to create an interface access entry for the target visualization application based on the access address information.
4. The method according to claim 3, wherein It further includes: Receiving a visualization request sent by the user terminal through the interface access entry; Routing according to the access address information carried in the visualization request to route the visualization request to the target instance.
5. The method according to claim 3, wherein Generating access address information for routing to the target instance for the startup request includes: obtaining the address information of the target instance returned by the task scheduler; mapping the address information of the target instance to the access address space facing the user terminal configured in the visualization server to generate address mapping information; encapsulating the address mapping information into a preset address format to generate the access address information; wherein, the address information of the target instance includes a port and / or an IP address.
6. The method according to claim 1, wherein It further includes: Configuring security groups for different users respectively, wherein each target instance created for a single user is in the same security group; Based on each security group, performing access control on the received visualization requests.
7. A service method, wherein Applicable to the visualization client deployed on the user terminal, the method includes: in response to a startup operation for a target visualization application occurring in the service interface provided by the visualization server, generating a startup request; sending the startup request to the visualization server for the visualization server to call the task scheduler to apply for a target instance for the startup request; receiving the feedback from the visualization server on the startup request.
8. The method according to claim 7, wherein It further includes: in response to a shutdown operation for the target visualization application occurring in the service interface, generating a shutdown request; sending the shutdown request to the visualization server for the visualization server to call the task scheduler to release the target instance.
9. The method according to claim 7, wherein In response to the service interface provided by the visualization server The startup operation for the target visualization application generates a startup request, including: in response to the visualization application selection operation occurring in the service interface to select the target visualization application; in response to the resource requirement configuration operation occurring in the service interface, determining the required instance resource specifications for the target visualization application; generating the startup request based on the identifier of the target visualization application and the instance resource specifications; wherein the target instance is applied according to the instance resource specifications.
10. The method according to claim 7, wherein, Receiving the feedback from the visualization server for the startup request, including: receiving the access address information feedback by the visualization server; after receiving the access address information, the method further includes: creating an interface access entry for the target visualization application in the service interface based on the access address information; in response to the trigger operation for the interface access entry, generating a visualization request carrying the access address information; sending the visualization request to the visualization server for the visualization server to route the visualization request to the target instance based on the access address information; and displaying the application interface of the target visualization application provided by the target instance in the service interface.
11. The method according to claim 10, wherein It further includes: in response to the visualization operation occurring in the application interface, generating an operation instruction; sending the operation instruction to the visualization server for the visualization server to route the operation instruction to the target instance; wherein the target instance generates an application task according to the operation instruction and submits it to the task scheduler to trigger the task scheduler to apply for an instance for executing the application task.
12. A control device, wherein, On which a visualization server and a task scheduler are deployed; the visualization server is used to receive the startup request for the target visualization application sent by the user terminal; encapsulating the startup request into a target application task according to the task format supported by the task scheduler and submitting it to the task scheduler; the task scheduler is used to apply for a target instance for the startup request; the visualization server is further used to give feedback on the startup request to the user terminal after determining that the target instance has completed the response to the startup request.
13. A terminal device, wherein, It includes a memory and a processor; one or more computer instructions are stored in the memory; the processor is coupled with the memory, and the processor is used to run the computer instructions in the memory to execute: in response to the startup operation for the target visualization application occurring in the service interface provided by the visualization server, generating a startup request; sending the startup request to the visualization server for the visualization server to call the task scheduler to apply for a target instance for the startup request. Receiving the feedback from the visualization server for the startup request.
14. A computer-readable storage medium storing a computer program, wherein When the computer program is executed by one or more processors, it causes the one or more processors to execute the service method according to any one of claims 1-11.
15. A computer program product, wherein, A computer program which, when executed by one or more processors, causes the one or more processors to execute the service method according to any one of claims 1-11.
Citation Information
Patent Citations
Application management method based on micro-service architecture
CN112000448A
Resource access method, device and system under server-free architecture and storage medium
CN112019475A
Increasing user engagement during computing resource allocation queues for cloud services
CN112698938A
Cloud computing service method and device, electronic equipment and computer storage medium
CN113556375A
Visual application acceleration method and device, electronic equipment and storage medium
CN115185667A