CN111913768A - Virtualized cloud desktop and construction method thereof - Google Patents

Virtualized cloud desktop and construction method thereof Download PDF

Info

Publication number
CN111913768A
CN111913768A CN202010466155.XA CN202010466155A CN111913768A CN 111913768 A CN111913768 A CN 111913768A CN 202010466155 A CN202010466155 A CN 202010466155A CN 111913768 A CN111913768 A CN 111913768A
Authority
CN
China
Prior art keywords
image data
server
cloud desktop
data block
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010466155.XA
Other languages
Chinese (zh)
Inventor
谢艺平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Railway Polytechnic
Original Assignee
Guangzhou Railway Polytechnic
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Railway Polytechnic filed Critical Guangzhou Railway Polytechnic
Priority to CN202010466155.XA priority Critical patent/CN111913768A/en
Publication of CN111913768A publication Critical patent/CN111913768A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The invention discloses a virtualized cloud desktop and a construction method thereof, belonging to the technical field of virtualized cloud desktops, wherein the virtualized cloud desktop comprises: the system comprises an account registration module, a safety detection module, a network communication module, a bandwidth construction module, an image processing module, a storage space distribution module, a data encryption module, an authentication module, a cloud service module, a performance test module and a display module. According to the embodiment of the invention, the bandwidth construction module and the image processing module are used for reducing the network bandwidth by using the cache mechanism under the scene that the image change of the cloud desktop is very complex, and the operation fluency of the cloud desktop is ensured under the lower network bandwidth. Through the performance testing module, actual manpower and material resources do not need to be consumed to simulate an office scene, the automation of performance testing can be realized, the testing efficiency is improved, and the human resource input is reduced.

Description

Virtualized cloud desktop and construction method thereof
Technical Field
The invention relates to the technical field of virtualized cloud desktops, in particular to a virtualized cloud desktop and a construction method thereof.
Background
The cloud desktop is also called desktop virtualization and cloud computer, and is a new mode for replacing the traditional computer; after the cloud desktop is adopted, a user does not need to purchase a computer host, all components such as a CPU (central processing unit), a memory, a hard disk, a network card and the like contained in the computer host are virtualized out in a server at the back end, and a single high-performance server can virtualize 1-50 different virtual computers; the current mainstream of front-end equipment is to connect a display and a keyboard and mouse by adopting a thin client (equipment similar to a television set-top box), and a user accesses a virtual machine host on a back-end server through a specific communication protocol to realize interactive operation after installing a client, so that the experience effect consistent with that of a computer is achieved; meanwhile, the cloud desktop not only supports the replacement of a traditional computer, but also supports other intelligent devices such as a mobile phone and a tablet to access the Internet, and is also the latest solution of the current mobile office. However, when each frame of image of the existing cloud desktop changes violently, due to the fact that image complexity is high, data flow of the generated desktop image is still large, and desktop operation smoothness is poor.
Disclosure of Invention
The invention aims to provide a virtualized cloud desktop and a construction method thereof, and aims to solve the problem that desktop operation smoothness is poor due to the fact that the image complexity is high and the data flow of generated desktop images is still large when each frame of image of the existing cloud desktop is changed violently.
In order to solve the above technical problem, in a first aspect, an embodiment of the present invention provides a method for constructing a virtualized cloud desktop, including:
step 1, registering a cloud desktop account through a registration program; carrying out safety detection protection on the cloud desktop through safety protection software; controlling the normal work of the virtualized cloud desktop through the main control computer; accessing the internet through a network interface to perform network communication; the cloud desktop storage space is distributed through a distribution program;
step 2, based on the storage space distributed in the step 1, obtaining the latest access amount information of the target cache server under each service type at the period starting time according to a preset detection period; acquiring a target health value calculation formula which is fitted based on the historical health value of the target cache server and the historical visit amount information under each service type, and acquiring a rated health value of the target cache server;
step 3, carrying out bandwidth scheduling on the target cache server based on the latest visit amount information, the target health value calculation formula and the rated health value;
step 4, obtaining statistical data of each performance index of the target cache server in the historical duration before the period starting time according to the updating period of a preset formula, and calculating the historical health value of the target cache server in each time in the historical duration based on the statistical data and the preset performance health formula;
step 5, obtaining historical visit amount information of the target cache server under each service type in the historical duration before the period starting time, and updating a target health value calculation formula of the target cache server based on the historical health value and the historical visit amount information;
step 6, storing a main image cache region of the hit image data block through a cloud server under the bandwidth built in the step 1 to the step 5; the main image cache region and the client side synchronously store hit image data blocks from the image cache region, wherein the hit image data blocks are image data blocks in cloud desktop image data, and the image complexity is greater than an image complexity threshold value;
step 7, after the cloud server receives cloud desktop image data sent by a cloud desktop virtual machine, acquiring a to-be-processed image data block with image complexity greater than an image complexity threshold value in the cloud desktop image data; when the image data block to be processed is stored in the main image cache area storage area, clearing and compressing data of the image data block to be processed to obtain a clear data block, sending the clear data block to a client, and sending hit image data block index information of a corresponding hit image data block in the main image cache area storage area to the client;
step 8, encrypting the cloud desktop data through an encryption program; authenticating the cloud desktop account information through an authentication program; performing cloud service operation on the cloud desktop through the cloud server; and displaying the cloud desktop data through the display.
Further, the performing bandwidth scheduling on the target cache server based on the latest visit amount information, the target health value calculation formula and the rated health value includes:
calculating a target health value of the target cache server based on the target health value calculation formula and the latest access amount information, and judging whether the target health value is greater than the rated health value;
if the target health value is larger than the rated health value, calculating the bandwidth amount of each client to which the latest visit volume information belongs, successively selecting the clients as target calling clients according to the sequence from small to large of the bandwidth amount, and calculating the health value of the target cache server;
and when the health value of the target cache server is smaller than or equal to the rated health value, carrying out bandwidth scheduling according to the target calling-out client.
Further, the acquiring a to-be-processed image data block of which the image complexity is greater than an image complexity threshold value in the cloud desktop image data includes:
after the cloud server receives cloud desktop image data sent by the cloud desktop virtual machine, dividing the cloud desktop image data into image data blocks; and calculating the image complexity of each image data block, and taking the image data block with the image complexity larger than an image complexity threshold value as an image data block to be processed.
Further, before determining that the to-be-processed image data block is stored in the main image buffer area, the method further includes:
judging whether the current residual space of the main image cache area is larger than or equal to the size of the image data block to be processed or not, if the current residual space of the main image cache area is larger than or equal to the size of the image data block to be processed, storing the image data block to be processed as a new hit image data block in the main image cache area, normally compressing the image data to be processed and sending the compressed image data to be processed to the client, and sending the index information of the image data block to be processed to the client;
if the current remaining space of the main image cache area is smaller than the size of the image data block to be processed, judging whether the image complexity of the image data block to be processed is larger than the lowest image complexity in the main image cache area, if so, deleting a hit image data block corresponding to the lowest image complexity, storing the image data block to be processed as a new hit image data block in the main image cache area, normally compressing and sending the image data to be processed to a client, and sending the index information of the image data block to be processed to the client.
Further, it is determined whether the image data block to be processed is stored in the main image buffer area by:
acquiring an MD5 value of the image data block to be processed through an MD5 algorithm;
and matching the MD5 value of the image data block to be processed with the MD5 value of each hit image data block in the main image cache area, and if the same MD5 value exists, judging that the image data block to be processed is stored in the main image cache area.
Further, before the cloud desktop data is encrypted by the encryption program, the method further includes: testing the cloud desktop performance through a testing program, specifically:
through a test program, according to the hardware configuration of a server, the number of virtual machines which can be borne by the server is estimated, and the estimated number of virtual machines is obtained;
running an automation script in the virtual machine to simulate a real scene of a client;
in the server, pressing the virtual machines with the estimated number of the virtual machines, and monitoring the performance of the server to obtain a performance index result of the server;
and adjusting the number of the virtual machines according to the performance index result to obtain the maximum number of the virtual machines which can be borne by the server.
Further, the predicting, by the test program, the number of virtual machines that can be borne by the server according to the hardware configuration of the server, to obtain the predicted number of virtual machines, includes:
according to the CPU configuration of the server, estimating the number of virtual machines which can be borne by the server, and obtaining a first numerical value;
estimating the number of virtual machines which can be borne by the server according to the memory configuration of the server to obtain a second numerical value;
according to the server hard disk configuration, estimating the number of virtual machines which can be borne by the server, and obtaining a third numerical value;
and taking the minimum value of the first numerical value, the second numerical value and the third numerical value as the estimated virtual machine number.
Further, the running of the automation script in the virtual machine to simulate the real scene of the client includes:
newly building virtual machines with the estimated number of the virtual machines on a management platform, and enabling an automatic script to run in the virtual machines;
and formulating a timing task to ensure that the automatic script runs uninterruptedly, connecting the virtual machines by using terminals, and performing multi-virtual machine IO input and output simulation by the KVM switcher.
Further, the adjusting the number of the virtual machines according to the performance index result to obtain the maximum number of the virtual machines that can be borne by the server includes:
judging whether the performance index exceeding the preset range exists according to the performance index result;
if the server is available, reducing one virtual machine each time, then applying pressure to the server to perform performance test until all performance indexes do not exceed a preset range, and taking the current number of the virtual machines as the maximum number of the virtual machines which can be borne by the server;
if not, adding one virtual machine each time and then applying pressure to the server to perform performance test until the performance index exceeds the preset range, and taking the value obtained by subtracting one from the current virtual machine number as the maximum virtual machine number which can be borne by the server.
In a second aspect, an embodiment of the present invention provides a virtualized cloud desktop, which is formed according to the above-mentioned method for constructing a virtualized cloud desktop, and includes:
the system comprises an account registration module, a security detection module, a network communication module, a bandwidth construction module, an image processing module, a storage space distribution module, a data encryption module, an authentication module, a cloud service module and a display module;
the account registration module is used for registering a cloud desktop account through a registration program;
the safety detection module is used for carrying out safety detection protection on the cloud desktop through safety protection software;
the network communication module is used for accessing the internet through a network interface to carry out network communication;
the bandwidth construction module is used for utilizing the cache to construct the bandwidth through a bandwidth construction program;
the image processing module is used for processing the cloud desktop image through an image processing program;
the storage space distribution module is used for distributing the cloud desktop storage space through a distribution program;
the data encryption module is used for encrypting the cloud desktop data through an encryption program;
the authentication module is used for authenticating the cloud desktop account information through an authentication program;
the cloud service module is used for performing cloud service operation on the cloud desktop through the cloud server;
and the performance testing module is used for testing the performance of the cloud desktop through the testing program.
In conclusion, the beneficial effects of the invention are as follows:
the method comprises the steps of obtaining latest access amount information of a target cache server under each service type at the period starting time according to a preset detection period, and obtaining a target health value calculation formula fitted based on a historical health value of the target cache server and the historical access amount information under each service type and a rated health value of the target cache server; and performing bandwidth scheduling on the target cache server based on the latest access amount information, the target health value calculation formula and the rated health value, so that the background server can determine the health condition of the cache server based on the access amount information, the health value calculation formula and the rated health value of the cache server under each service type, and perform bandwidth scheduling on the cache server according to the access amount information under each service type, so as to keep the load condition of the cache server good, and further effectively improve the network service quality. Based on the bandwidth construction, by acquiring the image data block to be processed with the image complexity greater than the image complexity threshold value in the cloud desktop image data, and when the image data block to be processed is judged to be stored in the main image cache area storage area, clearing and compressing the data of the image data block to be processed to obtain a clear data block, sending the clear data block to the client, and sending the hit image data block index information corresponding to the hit image data block in the main image cache area storage area to the client, the network bandwidth can be reduced, the operation fluency of the cloud desktop is guaranteed, and the user experience is improved.
Drawings
In order to more clearly illustrate the technical solution of the present invention, the drawings needed to be used in the embodiments will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art that other drawings can be obtained according to the drawings without creative efforts.
Fig. 1 is a schematic structural diagram of a virtualized cloud desktop provided in an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
It should be understood that the step numbers used herein are for convenience of description only and are not intended as limitations on the order in which the steps are performed.
It is to be understood that the terminology used in the description of the invention herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used in the specification of the present invention and the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise.
The terms "comprises" and "comprising" indicate the presence of the described features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
The term "and/or" refers to and includes any and all possible combinations of one or more of the associated listed items.
An embodiment of the present invention provides a virtualized cloud desktop, please refer to fig. 1, including: the system comprises an account registration module 1, a safety detection module 2, a network communication module 3, a bandwidth construction module 4, an image processing module 5, a storage space distribution module 6, a data encryption module 7, an authentication module 8, a cloud service module 9, a display module 10 and a performance test module 11.
The account registration module 1 is used for registering a cloud desktop account through a registration program;
the safety detection module 2 is used for carrying out safety detection protection on the cloud desktop through safety protection software;
the network communication module 3 is used for accessing the internet through a network interface to perform network communication;
the bandwidth construction module 4 is configured to construct a bandwidth by using a cache through a bandwidth construction program;
the image processing module 5 is used for processing the cloud desktop image through an image processing program;
the storage space allocation module 6 is used for allocating the cloud desktop storage space through an allocation program;
the data encryption module 7 is used for encrypting the cloud desktop data through an encryption program;
the authentication module 8 is used for authenticating the cloud desktop account information through an authentication program;
the cloud service module 9 is configured to perform cloud service operation on a cloud desktop through a cloud server;
the display module 10 is used for displaying the cloud desktop data through a display;
the performance testing module 11 is used for testing the performance of the cloud desktop through a testing program.
The bandwidth construction method of the bandwidth construction module provided by the embodiment of the invention comprises the following steps:
acquiring the latest access amount information of the target cache server under each service type at the initial moment of the period according to a preset detection period;
acquiring a target health value calculation formula which is fitted based on the historical health value of the target cache server and the historical visit amount information under each service type, and acquiring a rated health value of the target cache server;
performing bandwidth scheduling on the target cache server based on the latest access amount information, the target health value calculation formula and the rated health value;
acquiring statistical data of each performance index of a target cache server in the historical duration before the initial moment of the period according to the updating period of a preset formula, and calculating the historical health value of the target cache server at each moment in the historical duration based on the statistical data and the preset performance health formula;
and acquiring historical visit amount information of the target cache server under each service type in the historical duration before the period starting time, and updating a target health value calculation formula of the target cache server based on the historical health value and the historical visit amount information.
In this embodiment of the present invention, the performing bandwidth scheduling on the target cache server based on the latest access amount information, the target health value calculation formula, and the rated health value includes:
calculating a target health value of the target cache server based on the target health value calculation formula and the latest access amount information, and judging whether the target health value is greater than the rated health value;
if the target health value is larger than the rated health value, calculating the bandwidth amount of each client to which the latest visit volume information belongs, successively selecting the clients as target calling clients according to the sequence from small to large of the bandwidth amount, and calculating the health value of the target cache server;
and when the health value of the target cache server is smaller than or equal to the rated health value, carrying out bandwidth scheduling according to the target calling-out client.
The processing method of the image processing module provided by the embodiment of the invention comprises the following steps:
storing a main image cache region of the hit image data block through a cloud server; the main image cache region and the client side synchronously store hit image data blocks from the image cache region, wherein the hit image data blocks are image data blocks in cloud desktop image data, and the image complexity is greater than an image complexity threshold value;
after the cloud server receives cloud desktop image data sent by a cloud desktop virtual machine, acquiring a to-be-processed image data block with image complexity greater than an image complexity threshold value in the cloud desktop image data;
when the image data block to be processed is stored in the main image cache area storage area, the data of the image data block to be processed is cleared and compressed to obtain a cleared data block, the cleared data block is sent to a client, and hit image data block index information of a corresponding hit image data block in the main image cache area storage area is sent to the client.
In an embodiment of the present invention, the acquiring a to-be-processed image data block in the cloud desktop image data, where the image complexity is greater than an image complexity threshold, includes:
after the cloud server receives cloud desktop image data sent by the cloud desktop virtual machine, dividing the cloud desktop image data into image data blocks; and calculating the image complexity of each image data block, and taking the image data block with the image complexity larger than an image complexity threshold value as an image data block to be processed.
In this embodiment of the present invention, before determining that the to-be-processed image data block is stored in the main image buffer area, the method further includes:
judging whether the current residual space of the main image cache area is larger than or equal to the size of the image data block to be processed or not, if the current residual space of the main image cache area is larger than or equal to the size of the image data block to be processed, storing the image data block to be processed as a new hit image data block in the main image cache area, normally compressing the image data to be processed and sending the compressed image data to be processed to the client, and sending the index information of the image data block to be processed to the client;
if the current remaining space of the main image cache area is smaller than the size of the image data block to be processed, judging whether the image complexity of the image data block to be processed is larger than the lowest image complexity in the main image cache area, if so, deleting a hit image data block corresponding to the lowest image complexity, storing the image data block to be processed as a new hit image data block in the main image cache area, normally compressing and sending the image data to be processed to a client, and sending the index information of the image data block to be processed to the client.
In the embodiment of the present invention, it is determined whether the to-be-processed image data block is already stored in the main image buffer area by the following method:
acquiring an MD5 value of the image data block to be processed through an MD5 algorithm;
and matching the MD5 value of the image data block to be processed with the MD5 value of each hit image data block in the main image cache area, and if the same MD5 value exists, judging that the image data block to be processed is stored in the main image cache area.
In the embodiment of the present invention, the performance test module test method includes:
through a test program, according to the hardware configuration of a server, the number of virtual machines which can be borne by the server is estimated, and the estimated number of virtual machines is obtained;
running an automation script in the virtual machine to simulate a real scene of a client;
in the server, pressing the virtual machines with the estimated number of the virtual machines, and monitoring the performance of the server to obtain a performance index result of the server;
and adjusting the number of the virtual machines according to the performance index result to obtain the maximum number of the virtual machines which can be borne by the server.
The method for predicting the number of virtual machines which can be borne by the server through the test program according to the hardware configuration of the server to obtain the predicted number of the virtual machines comprises the following steps:
according to the CPU configuration of the server, estimating the number of virtual machines which can be borne by the server, and obtaining a first numerical value;
estimating the number of virtual machines which can be borne by the server according to the memory configuration of the server to obtain a second numerical value;
according to the server hard disk configuration, estimating the number of virtual machines which can be borne by the server, and obtaining a third numerical value;
and taking the minimum value of the first numerical value, the second numerical value and the third numerical value as the estimated virtual machine number.
Wherein the running of the automation script in the virtual machine to simulate the real scene of the client comprises:
newly building virtual machines with the estimated number of the virtual machines on a management platform, and enabling an automatic script to run in the virtual machines;
and formulating a timing task to ensure that the automatic script runs uninterruptedly, connecting the virtual machines by using terminals, and performing multi-virtual machine IO input and output simulation by the KVM switcher.
Wherein, the adjusting the number of the virtual machines according to the performance index result to obtain the maximum number of the virtual machines that the server can bear comprises:
judging whether the performance index exceeding the preset range exists according to the performance index result;
if the server is available, reducing one virtual machine each time, then applying pressure to the server to perform performance test until all performance indexes do not exceed a preset range, and taking the current number of the virtual machines as the maximum number of the virtual machines which can be borne by the server;
if not, adding one virtual machine each time and then applying pressure to the server to perform performance test until the performance index exceeds the preset range, and taking the value obtained by subtracting one from the current virtual machine number as the maximum virtual machine number which can be borne by the server.
The method comprises the steps of obtaining latest access amount information of a target cache server under each service type at the period starting time according to a preset detection period, and obtaining a target health value calculation formula fitted based on a historical health value of the target cache server and the historical access amount information under each service type and a rated health value of the target cache server; and performing bandwidth scheduling on the target cache server based on the latest access amount information, the target health value calculation formula and the rated health value, so that the background server can determine the health condition of the cache server based on the access amount information, the health value calculation formula and the rated health value of the cache server under each service type, and perform bandwidth scheduling on the cache server according to the access amount information under each service type, so as to keep the load condition of the cache server good, and further effectively improve the network service quality. Based on the bandwidth construction, by acquiring the image data block to be processed with the image complexity greater than the image complexity threshold value in the cloud desktop image data, and when the image data block to be processed is judged to be stored in the main image cache area storage area, clearing and compressing the data of the image data block to be processed to obtain a clear data block, sending the clear data block to the client, and sending the hit image data block index information corresponding to the hit image data block in the main image cache area storage area to the client, the network bandwidth can be reduced, the operation fluency of the cloud desktop is guaranteed, and the user experience is improved. According to the embodiment of the invention, the test module does not need to consume actual manpower and material resources to simulate an office scene, so that the automation of performance test can be realized, the test efficiency is improved, and the human resource investment is reduced.
Example 2:
the embodiment of the invention also provides a method for constructing the virtualized cloud desktop, which comprises the following steps:
s1, registering the cloud desktop account through a registration program; carrying out safety detection protection on the cloud desktop through safety protection software; controlling the normal work of the virtualized cloud desktop through the main control computer; accessing the internet through a network interface to perform network communication; the cloud desktop storage space is distributed through a distribution program;
s2, building bandwidth by using the cache through the bandwidth building program, specifically, the method includes:
s21, based on the storage space distributed in the step 1, obtaining the latest access amount information of the target cache server under each service type at the period starting time according to a preset detection period;
s22, acquiring a target health value calculation formula which is fitted based on the historical health value of the target cache server and the historical visit amount information under each service type, and acquiring a rated health value of the target cache server;
s23, carrying out bandwidth scheduling on the target cache server based on the latest visit amount information, the target health value calculation formula and the rated health value;
s24, obtaining statistical data of each performance index of the target cache server in the historical duration before the period starting time according to the updating period of a preset formula, and calculating the historical health value of the target cache server in each time in the historical duration based on the statistical data and the preset performance health formula;
s25, obtaining historical visit amount information of the target cache server in each service type in the historical duration before the period starting time, and updating the target health value calculation formula of the target cache server based on the historical health value and the historical visit amount information.
S3, processing the cloud desktop image through the image processing program under the bandwidth established in S1-S2, specifically including:
s31, storing a main image cache region of the hit image data block through the cloud server; the main image cache region and the client side synchronously store hit image data blocks from the image cache region, wherein the hit image data blocks are image data blocks in cloud desktop image data, and the image complexity is greater than an image complexity threshold value;
s32, after the cloud server receives cloud desktop image data sent by a cloud desktop virtual machine, acquiring a to-be-processed image data block of which the image complexity is greater than an image complexity threshold value in the cloud desktop image data;
s33, when the image data block to be processed is stored in the main image cache area storage area, clearing and compressing the data of the image data block to be processed to obtain a clear data block, sending the clear data block to a client, and sending the index information of the hit image data block corresponding to the hit image data block in the main image cache area storage area to the client;
s4, encrypting the cloud desktop data through an encryption program; authenticating the cloud desktop account information through an authentication program; performing cloud service operation on the cloud desktop through the cloud server; and displaying the cloud desktop data through the display.
In this embodiment of the present invention, in S23, the performing bandwidth scheduling on the target cache server based on the latest access amount information, the target health value calculation formula, and the rated health value includes:
calculating a target health value of the target cache server based on the target health value calculation formula and the latest access amount information, and judging whether the target health value is greater than the rated health value;
if the target health value is larger than the rated health value, calculating the bandwidth amount of each client to which the latest visit volume information belongs, successively selecting the clients as target calling clients according to the sequence from small to large of the bandwidth amount, and calculating the health value of the target cache server;
and when the health value of the target cache server is smaller than or equal to the rated health value, carrying out bandwidth scheduling according to the target calling-out client.
In this embodiment of the present invention, in S32, the acquiring a to-be-processed image data block in the cloud desktop image data, where the image complexity is greater than the image complexity threshold, includes:
after the cloud server receives cloud desktop image data sent by the cloud desktop virtual machine, dividing the cloud desktop image data into image data blocks; and calculating the image complexity of each image data block, and taking the image data block with the image complexity larger than an image complexity threshold value as an image data block to be processed.
In this embodiment of the present invention, before S33, that is, before it is determined that the to-be-processed image data block is stored in the main image buffer area, the method further includes:
judging whether the current residual space of the main image cache area is larger than or equal to the size of the image data block to be processed or not, if the current residual space of the main image cache area is larger than or equal to the size of the image data block to be processed, storing the image data block to be processed as a new hit image data block in the main image cache area, normally compressing the image data to be processed and sending the compressed image data to be processed to the client, and sending the index information of the image data block to be processed to the client;
if the current remaining space of the main image cache area is smaller than the size of the image data block to be processed, judging whether the image complexity of the image data block to be processed is larger than the lowest image complexity in the main image cache area, if so, deleting a hit image data block corresponding to the lowest image complexity, storing the image data block to be processed as a new hit image data block in the main image cache area, normally compressing and sending the image data to be processed to a client, and sending the index information of the image data block to be processed to the client.
In this embodiment of the present invention, in S33, it is determined whether the to-be-processed image data block is already stored in the main image buffer area by:
acquiring an MD5 value of the image data block to be processed through an MD5 algorithm;
and matching the MD5 value of the image data block to be processed with the MD5 value of each hit image data block in the main image cache area, and if the same MD5 value exists, judging that the image data block to be processed is stored in the main image cache area.
In one preferred embodiment, before the cloud desktop data is encrypted by the encryption program, the method further includes: testing the cloud desktop performance through a testing program, specifically:
through a test program, according to the hardware configuration of a server, the number of virtual machines which can be borne by the server is estimated, and the estimated number of virtual machines is obtained;
running an automation script in the virtual machine to simulate a real scene of a client;
in the server, pressing the virtual machines with the estimated number of the virtual machines, and monitoring the performance of the server to obtain a performance index result of the server;
and adjusting the number of the virtual machines according to the performance index result to obtain the maximum number of the virtual machines which can be borne by the server.
In this embodiment of the present invention, the predicting, by the test program according to the hardware configuration of the server, the number of virtual machines that can be borne by the server to obtain the predicted number of virtual machines includes:
according to the CPU configuration of the server, estimating the number of virtual machines which can be borne by the server, and obtaining a first numerical value;
estimating the number of virtual machines which can be borne by the server according to the memory configuration of the server to obtain a second numerical value;
according to the server hard disk configuration, estimating the number of virtual machines which can be borne by the server, and obtaining a third numerical value;
and taking the minimum value of the first numerical value, the second numerical value and the third numerical value as the estimated virtual machine number.
In an embodiment of the present invention, the running an automation script in a virtual machine to simulate a real scene of a client includes:
newly building virtual machines with the estimated number of the virtual machines on a management platform, and enabling an automatic script to run in the virtual machines;
and formulating a timing task to ensure that the automatic script runs uninterruptedly, connecting the virtual machines by using terminals, and performing multi-virtual machine IO input and output simulation by the KVM switcher.
In this embodiment of the present invention, the adjusting the number of virtual machines according to the performance index result to obtain the maximum number of virtual machines that can be borne by the server includes:
judging whether the performance index exceeding the preset range exists according to the performance index result;
if the server is available, reducing one virtual machine each time, then applying pressure to the server to perform performance test until all performance indexes do not exceed a preset range, and taking the current number of the virtual machines as the maximum number of the virtual machines which can be borne by the server;
if not, adding one virtual machine each time and then applying pressure to the server to perform performance test until the performance index exceeds the preset range, and taking the value obtained by subtracting one from the current virtual machine number as the maximum virtual machine number which can be borne by the server.
It should be noted that the virtual desktop construction method of the present invention can be obtained by fusion construction of a VOI system and a VDI system.
The above description is only for the preferred embodiment of the present invention, and is not intended to limit the present invention in any way, and all simple modifications, equivalent changes and modifications made to the above embodiment according to the technical spirit of the present invention are within the scope of the technical solution of the present invention.

Claims (10)

1. A construction method of a virtualized cloud desktop is characterized by comprising the following steps:
step 1, registering a cloud desktop account through a registration program; carrying out safety detection protection on the cloud desktop through safety protection software; controlling the normal work of the virtualized cloud desktop through the main control computer; accessing the internet through a network interface to perform network communication; the cloud desktop storage space is distributed through a distribution program;
step 2, based on the storage space distributed in the step 1, obtaining the latest access amount information of the target cache server under each service type at the period starting time according to a preset detection period; acquiring a target health value calculation formula which is fitted based on the historical health value of the target cache server and the historical visit amount information under each service type, and acquiring a rated health value of the target cache server;
step 3, carrying out bandwidth scheduling on the target cache server based on the latest visit amount information, the target health value calculation formula and the rated health value;
step 4, obtaining statistical data of each performance index of the target cache server in the historical duration before the period starting time according to the updating period of a preset formula, and calculating the historical health value of the target cache server in each time in the historical duration based on the statistical data and the preset performance health formula;
step 5, obtaining historical visit amount information of the target cache server under each service type in the historical duration before the period starting time, and updating a target health value calculation formula of the target cache server based on the historical health value and the historical visit amount information;
step 6, storing a main image cache region of the hit image data block through a cloud server under the bandwidth built in the step 1 to the step 5; the main image cache region and the client side synchronously store hit image data blocks from the image cache region, wherein the hit image data blocks are image data blocks in cloud desktop image data, and the image complexity is greater than an image complexity threshold value;
step 7, after the cloud server receives cloud desktop image data sent by a cloud desktop virtual machine, acquiring a to-be-processed image data block with image complexity greater than an image complexity threshold value in the cloud desktop image data; when the image data block to be processed is stored in the main image cache area storage area, clearing and compressing data of the image data block to be processed to obtain a clear data block, sending the clear data block to a client, and sending hit image data block index information of a corresponding hit image data block in the main image cache area storage area to the client;
step 8, encrypting the cloud desktop data through an encryption program; authenticating the cloud desktop account information through an authentication program; performing cloud service operation on the cloud desktop through the cloud server; and displaying the cloud desktop data through the display.
2. The method for constructing the converged virtualized cloud desktop according to claim 1, wherein the performing bandwidth scheduling on the target cache server based on the latest visit amount information, the target health value calculation formula, and the rated health value comprises:
calculating a target health value of the target cache server based on the target health value calculation formula and the latest access amount information, and judging whether the target health value is greater than the rated health value;
if the target health value is larger than the rated health value, calculating the bandwidth amount of each client to which the latest visit volume information belongs, successively selecting the clients as target calling clients according to the sequence from small to large of the bandwidth amount, and calculating the health value of the target cache server;
and when the health value of the target cache server is smaller than or equal to the rated health value, carrying out bandwidth scheduling according to the target calling-out client.
3. The method for constructing the virtualized cloud desktop according to claim 1, wherein the obtaining of the to-be-processed image data block with the image complexity greater than the image complexity threshold in the cloud desktop image data comprises:
after the cloud server receives cloud desktop image data sent by the cloud desktop virtual machine, dividing the cloud desktop image data into image data blocks; and calculating the image complexity of each image data block, and taking the image data block with the image complexity larger than an image complexity threshold value as an image data block to be processed.
4. The method for constructing a virtualized cloud desktop according to claim 1, further comprising, before determining that the block of image data to be processed is stored in the primary image cache area:
judging whether the current residual space of the main image cache area is larger than or equal to the size of the image data block to be processed or not, if the current residual space of the main image cache area is larger than or equal to the size of the image data block to be processed, storing the image data block to be processed as a new hit image data block in the main image cache area, normally compressing the image data to be processed and sending the compressed image data to be processed to the client, and sending the index information of the image data block to be processed to the client;
if the current remaining space of the main image cache area is smaller than the size of the image data block to be processed, judging whether the image complexity of the image data block to be processed is larger than the lowest image complexity in the main image cache area, if so, deleting a hit image data block corresponding to the lowest image complexity, storing the image data block to be processed as a new hit image data block in the main image cache area, normally compressing and sending the image data to be processed to a client, and sending the index information of the image data block to be processed to the client.
5. The method for constructing a virtualized cloud desktop according to claim 1, wherein determining whether the to-be-processed image data block is stored in the main image cache area is performed by:
acquiring an MD5 value of the image data block to be processed through an MD5 algorithm;
and matching the MD5 value of the image data block to be processed with the MD5 value of each hit image data block in the main image cache area, and if the same MD5 value exists, judging that the image data block to be processed is stored in the main image cache area.
6. The method for building the virtualized cloud desktop according to claim 1, further comprising, before the encrypting the cloud desktop data by the encryption program: testing the cloud desktop performance through a testing program, specifically:
through a test program, according to the hardware configuration of a server, the number of virtual machines which can be borne by the server is estimated, and the estimated number of virtual machines is obtained;
running an automation script in the virtual machine to simulate a real scene of a client;
in the server, pressing the virtual machines with the estimated number of the virtual machines, and monitoring the performance of the server to obtain a performance index result of the server;
and adjusting the number of the virtual machines according to the performance index result to obtain the maximum number of the virtual machines which can be borne by the server.
7. The method for constructing the virtualized cloud desktop according to claim 6, wherein the predicting, by the test program, the number of virtual machines that can be borne by the server according to the hardware configuration of the server to obtain the predicted number of virtual machines comprises:
according to the CPU configuration of the server, estimating the number of virtual machines which can be borne by the server, and obtaining a first numerical value;
estimating the number of virtual machines which can be borne by the server according to the memory configuration of the server to obtain a second numerical value;
according to the server hard disk configuration, estimating the number of virtual machines which can be borne by the server, and obtaining a third numerical value;
and taking the minimum value of the first numerical value, the second numerical value and the third numerical value as the estimated virtual machine number.
8. The method for building the virtualized cloud desktop of claim 6, wherein the running of the automation script in the virtual machine to simulate the real scene of the customer comprises:
newly building virtual machines with the estimated number of the virtual machines on a management platform, and enabling an automatic script to run in the virtual machines;
and formulating a timing task to ensure that the automatic script runs uninterruptedly, connecting the virtual machines by using terminals, and performing multi-virtual machine IO input and output simulation by the KVM switcher.
9. The method for constructing the virtualized cloud desktop according to claim 6, wherein the adjusting the number of the virtual machines according to the performance index result to obtain the maximum number of the virtual machines that can be borne by the server comprises:
judging whether the performance index exceeding the preset range exists according to the performance index result;
if the server is available, reducing one virtual machine each time, then applying pressure to the server to perform performance test until all performance indexes do not exceed a preset range, and taking the current number of the virtual machines as the maximum number of the virtual machines which can be borne by the server;
if not, adding one virtual machine each time and then applying pressure to the server to perform performance test until the performance index exceeds the preset range, and taking the value obtained by subtracting one from the current virtual machine number as the maximum virtual machine number which can be borne by the server.
10. A virtualized cloud desktop, constructed according to the method for constructing a virtualized cloud desktop as claimed in claim 6, comprising:
the system comprises an account registration module, a security detection module, a network communication module, a bandwidth construction module, an image processing module, a storage space distribution module, a data encryption module, an authentication module, a cloud service module and a display module;
the account registration module is used for registering a cloud desktop account through a registration program;
the safety detection module is used for carrying out safety detection protection on the cloud desktop through safety protection software;
the network communication module is used for accessing the internet through a network interface to carry out network communication;
the bandwidth construction module is used for utilizing the cache to construct the bandwidth through a bandwidth construction program;
the image processing module is used for processing the cloud desktop image through an image processing program;
the storage space distribution module is used for distributing the cloud desktop storage space through a distribution program;
the data encryption module is used for encrypting the cloud desktop data through an encryption program;
the authentication module is used for authenticating the cloud desktop account information through an authentication program;
the cloud service module is used for performing cloud service operation on the cloud desktop through the cloud server;
and the performance testing module is used for testing the performance of the cloud desktop through the testing program.
CN202010466155.XA 2020-05-27 2020-05-27 Virtualized cloud desktop and construction method thereof Pending CN111913768A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010466155.XA CN111913768A (en) 2020-05-27 2020-05-27 Virtualized cloud desktop and construction method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010466155.XA CN111913768A (en) 2020-05-27 2020-05-27 Virtualized cloud desktop and construction method thereof

Publications (1)

Publication Number Publication Date
CN111913768A true CN111913768A (en) 2020-11-10

Family

ID=73237597

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010466155.XA Pending CN111913768A (en) 2020-05-27 2020-05-27 Virtualized cloud desktop and construction method thereof

Country Status (1)

Country Link
CN (1) CN111913768A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116010139A (en) * 2022-12-07 2023-04-25 上海昊来信息技术股份有限公司 Intelligent operation and maintenance method and system for virtual cloud desktop client computing software

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105446846A (en) * 2015-11-30 2016-03-30 中电科华云信息技术有限公司 Cloud desktop based performance test method
CN107360443A (en) * 2016-05-09 2017-11-17 中兴通讯股份有限公司 A kind of cloud desktop picture processing method, cloud desktop server and client
CN110365765A (en) * 2019-07-11 2019-10-22 网宿科技股份有限公司 A kind of bandwidth scheduling method and device of cache server
WO2020020154A1 (en) * 2018-07-23 2020-01-30 中兴通讯股份有限公司 Offline management method and device for cloud desktop, and storage medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105446846A (en) * 2015-11-30 2016-03-30 中电科华云信息技术有限公司 Cloud desktop based performance test method
CN107360443A (en) * 2016-05-09 2017-11-17 中兴通讯股份有限公司 A kind of cloud desktop picture processing method, cloud desktop server and client
WO2020020154A1 (en) * 2018-07-23 2020-01-30 中兴通讯股份有限公司 Offline management method and device for cloud desktop, and storage medium
CN110365765A (en) * 2019-07-11 2019-10-22 网宿科技股份有限公司 A kind of bandwidth scheduling method and device of cache server

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116010139A (en) * 2022-12-07 2023-04-25 上海昊来信息技术股份有限公司 Intelligent operation and maintenance method and system for virtual cloud desktop client computing software
CN116010139B (en) * 2022-12-07 2024-01-30 上海昊来信息技术股份有限公司 Intelligent operation and maintenance method and system for virtual cloud desktop client computing software

Similar Documents

Publication Publication Date Title
US11100605B2 (en) Virtual machine graphics resource usage
US10587528B2 (en) Remote service for executing resource allocation analyses for distributed computer systems
US9742652B2 (en) Proactive identification of hotspots in a cloud computing environment
KR101977726B1 (en) APPARATUS AND METHOD FOR Virtual Desktop Services
US20160255400A1 (en) Remote Display Performance Measurement Triggered by Application Display Upgrade
US20160315837A1 (en) Group server performance correction via actions to server subset
US8789050B2 (en) Systems and methods for transparently optimizing workloads
US10353738B2 (en) Resource allocation based on social networking trends in a networked computing environment
US11113244B1 (en) Integrated data pipeline
CN102378976B (en) The compression of images of multiple processor is used to accelerate
US10884768B2 (en) Solution which can improve VDI user experience automatically
US10963984B2 (en) Interaction monitoring for virtualized graphics processing
CN112346871A (en) Request processing method and micro-service system
TW201820126A (en) Method and device of data virtualization storage
CN108847981A (en) Distributed computer cloud computing processing method
Tiwari et al. Service adaptive broking mechanism using MROSP algorithm
CN113117326A (en) Frame rate control method and device
CN115658301A (en) Storage resource scheduling method, device, storage medium and electronic equipment
US9729466B2 (en) Information technology resource management
CN111913768A (en) Virtualized cloud desktop and construction method thereof
CN104717175B (en) The processing method and system of virtual desktop
CN112783553A (en) Application program operation method, device and system
CN114064182B (en) Low-cost desktop virtualization system and operation method
CN107911256A (en) A kind of cloud computing system
CN114201304A (en) Application program running method, device, equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination