Dynamic cloud cryptographic computing resource allocation method and middleware device for multi-tenant grouping
By configuring the first and second password computing resource components, using the RDMA protocol to communicate with middleware, calculating the tenant's sliding average resource usage indicators and setting allocation thresholds, the problem of inflexible and inaccurate resource allocation in a multi-tenant environment is solved, and resource utilization efficiency and tenant business stability are improved.
Patent Information
- Application Number
- CN202510328281.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-19
- Publication Date
- 2025-08-22
- Estimated Expiration
- 2045-03-19
AI Technical Summary
In the prior art, the allocation of password computing resources in a multi-tenant environment cannot be flexible and precisely allocated according to the dynamically changing resource needs of tenants, resulting in inefficient utilization of computing resources and difficulty in running tenant business.
By configuring the first and second password computing resource components, using the RDMA protocol to communicate with the middleware, enter the tenant's historical resource request information to calculate the sliding average resource usage indicator, perform tenant clustering and set resource allocation thresholds. The middleware judges the allocation to the corresponding components based on the tenant's resource usage indicators for resource allocation. The first component is a fixed quota and the second component is a dynamic redundant quota.
It realizes flexible and precise resource allocation based on tenants' dynamic needs, improves computing resource utilization efficiency, and ensures the normal operation of tenants' business.
Smart Images

Figure CN119995877B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field related to cloud cryptographic services, and specifically to a dynamic cloud cryptographic computing resource allocation method and middleware device for multi-tenant groups. Background Art
[0002] In today's digital age, cloud computing technology has been widely adopted, and more and more enterprises and organizations are choosing to migrate their businesses to the cloud. In a multi-tenant environment, different tenants have significantly different demands for computing resources, and these demands are often dynamic. Traditional static resource allocation methods are no longer able to meet these diverse and dynamic demands, resulting in inefficient resource utilization. Some tenants often have excess resources while others have insufficient resources. Furthermore, the proper allocation of cryptographic computing resources is particularly critical when processing sensitive information. On the one hand, tenants' resource request patterns fluctuate over time. For example, e-commerce tenants' resource demand increases sharply during promotional seasons and decreases significantly during off-seasons. On the other hand, different tenants have different resource usage habits and business characteristics. Current cryptographic computing resource allocation cannot accurately and flexibly allocate resources based on these dynamic changes, resulting in not only resource waste but also the potential for resource shortages to impact the normal operation of tenants' businesses.
[0003] Therefore, in the current related technologies, there is a technical problem that cryptographic computing resources cannot be flexibly and accurately allocated according to the dynamically changing resource needs of tenants, resulting in inefficient utilization of computing resources and difficulty in the normal operation of tenant businesses. Summary of the Invention
[0004] This application solves the technical problem in the prior art that cryptographic computing resources cannot be flexibly and accurately allocated according to the dynamically changing resource needs of tenants, resulting in low computing resource utilization efficiency and difficulty in normal operation of tenant businesses, by providing a dynamic cloud cryptographic computing resource allocation method and middleware device for multi-tenant grouping. It achieves the technical effect of improving computing resource utilization efficiency and ensuring the normal operation of tenant businesses.
[0005] The present application provides a dynamic cloud cryptographic computing resource allocation method for multi-tenant groups, the method comprising: configuring a first cryptographic computing resource component and a second cryptographic computing resource component, wherein the first cryptographic computing resource component and the second cryptographic computing resource component are respectively connected to a middleware through an RDMA protocol; entering historical resource request information of each tenant, and calculating a sliding average resource usage index for each tenant according to the historical resource request information; clustering each tenant with the sliding average resource usage index to output multiple groups of tenants, wherein the multiple groups of tenants correspond to multiple resource allocation thresholds; the middleware receives the resource request of the tenant, and determines whether the resource usage index accumulated by the tenant on that day exceeds the resource allocation threshold corresponding to the group to which it belongs; if it does not exceed the resource allocation threshold corresponding to the group to which the tenant belongs, the middleware sends the resource request to the first cryptographic computing resource component for resource allocation; if it exceeds the resource allocation threshold corresponding to the group to which the tenant belongs, the middleware sends the resource request to the second cryptographic computing resource component for resource allocation.
[0006] In a possible implementation, the dynamic cloud cryptographic computing resource allocation method for multi-tenant grouping also performs the following processing: configuring a first cryptographic computing resource component and a second cryptographic computing resource component, the first cryptographic computing resource component is a resource component with a fixed quota, and the second cryptographic computing resource component is a resource component with a dynamic redundant quota based on the first cryptographic computing resource component; wherein the allocation priority of the first cryptographic computing resource component is greater than the allocation priority of the second cryptographic computing resource component.
[0007] In a possible implementation, the dynamic cloud cryptographic computing resource allocation method for multi-tenant grouping also performs the following processing: calculating based on the multiple resource allocation thresholds and outputting a total resource allocation threshold; obtaining configuration parameter information of the first cryptographic computing resource component, the configuration parameter information including resource configuration parameter information, network configuration parameter information and access configuration parameter information; performing a load balancing test on the total resource allocation threshold with the configuration parameter information to obtain a first computing resource quota test sample based on load balancing, and setting a fixed quota for the first cryptographic computing resource component based on the first computing resource quota test sample.
[0008] In a possible implementation, the dynamic cloud cryptographic computing resource allocation method for multi-tenant grouping also performs the following processing: entering the historical resource request information of each tenant, and calculating the resource volatility of each tenant based on the sliding average resource usage indicator according to the historical resource request information; dividing the resource volatility set corresponding to each group of tenants according to the resource volatility corresponding to each tenant; calculating the total resource volatility threshold of each group of tenants based on the resource volatility set; performing a load balancing test on the total resource volatility threshold using the configuration parameter information of the second cryptographic computing resource component to obtain a second computing resource quota test sample based on load balancing, and dynamically allocating quotas for the second cryptographic computing resource component according to the second computing resource quota test sample.
[0009] In a possible implementation, the dynamic cloud cryptographic computing resource allocation method for multi-tenant grouping also performs the following processing: obtaining a sliding average resource usage indicator set corresponding to each group of tenants; performing time series fusion processing on the sliding average resource usage indicator set to obtain a time series-sliding average resource usage indicator set, performing curve fitting according to the time series-sliding average resource usage indicator set to obtain a sliding average resource usage curve; and allocating corresponding multiple resource allocation thresholds to the multiple groups of tenants according to the sliding average resource usage curve.
[0010] In a possible implementation, the dynamic cloud cryptographic computing resource allocation method for multi-tenant grouping also performs the following processing: detecting a set of inflection points in the sliding average resource usage curve corresponding to each group of tenants whose amplitude change is greater than a preset change amplitude; assigning weights to the inflection point set through exponentially weighted moving average to obtain an EWMA weight set, calculating the mean value of each inflection point in the inflection point set according to the EWMA weight set, and outputting the resource allocation threshold corresponding to each group of tenants.
[0011] In a possible implementation, the dynamic cloud cryptographic computing resource allocation method for multi-tenant grouping also performs the following processing: the first cryptographic computing resource component and the middleware include a second NB-IOT communication module, and the transmission between the second cryptographic computing resource component and the middleware includes a second NB-IOT communication module.
[0012] In a possible implementation, the dynamic cloud cryptographic computing resource allocation method for multi-tenant groups also performs the following processing: detecting that the idle time of the tenant's resources exceeds a preset threshold, triggering a resource recovery instruction; and recovering the computing resources obtained by the tenant to the first cryptographic computing resource component or the second cryptographic computing resource component according to the resource recovery instruction.
[0013] In a possible implementation, the dynamic cloud cryptographic computing resource allocation method for multi-tenant groups also performs the following processing: when the resource recovery instruction is triggered, the computing resources obtained by the tenant are desensitized according to the desensitizing module to obtain the desensitized computing resources; the desensitized computing resources are correspondingly recovered to the first cryptographic computing resource component or the second cryptographic computing resource component.
[0014] The present application also provides a dynamic cloud cryptographic computing resource allocation middleware device for multi-tenant grouping, including: a computing resource component configuration unit, used to configure a first cryptographic computing resource component and a second cryptographic computing resource component, the first cryptographic computing resource component and the second cryptographic computing resource component are respectively connected to the middleware through the RDMA protocol; a sliding average resource usage index calculation unit, used to input the historical resource request information of each tenant, and calculate the sliding average resource usage index of each tenant according to the historical resource request information; a tenant clustering output unit, used to cluster each tenant with the sliding average resource usage index and output multiple groups of tenants, wherein the multiple groups of tenants correspond to multiple resource allocation thresholds; a resource allocation unit, used to receive the resource request of the tenant by the middleware, determine whether the cumulative resource usage index of the tenant on that day exceeds the resource allocation threshold corresponding to the group to which it belongs, if it does not exceed the resource allocation threshold corresponding to the group to which the tenant belongs, the middleware sends the resource request to the first cryptographic computing resource component for resource allocation, if it exceeds the resource allocation threshold corresponding to the group to which the tenant belongs, the middleware sends the resource request to the second cryptographic computing resource component for resource allocation.
[0015] The dynamic cloud cryptographic computing resource allocation method and middleware device for multi-tenant grouping proposed in this application are to configure a first cryptographic computing resource component and a second cryptographic computing resource component; record the historical resource request information of each tenant and calculate the sliding average resource usage index of each tenant; cluster each tenant and output multiple groups of tenants; the middleware receives the resource request of the tenant and determines whether the tenant's cumulative resource usage index for the day exceeds the resource allocation threshold corresponding to the group to which it belongs. If not, the resource request is sent to the first cryptographic computing resource component for resource allocation; if it exceeds, it is sent to the second cryptographic computing resource component for resource allocation. This solves the technical problem in the prior art that cryptographic computing resources cannot be flexibly and accurately allocated according to the dynamically changing resource needs of tenants, resulting in low computing resource utilization efficiency and difficulty in the normal operation of tenant services, and achieves the technical effect of improving computing resource utilization efficiency and ensuring the normal operation of tenant services. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] To more clearly illustrate the technical solutions of the embodiments of the present disclosure, the accompanying drawings of the embodiments of the present disclosure are briefly introduced below. Flowcharts are used in this application to illustrate the operations performed by the apparatus according to the embodiments of the present application. It should be understood that the preceding or following operations are not necessarily performed in precise order. Instead, various steps may be processed in reverse order or simultaneously as needed. Furthermore, other operations may be added to these processes, or one or more operations may be removed from these processes.
[0017] Figure 1 A flowchart of a method for allocating dynamic cloud cryptographic computing resources to multiple tenant groups provided in an embodiment of the present application.
[0018] Figure 2 A schematic diagram of the structure of a dynamic cloud cryptographic computing resource allocation middleware device for multi-tenant groups provided in an embodiment of the present application.
[0019] Description of the accompanying drawings: computing resource component configuration unit 10, sliding average resource usage indicator calculation unit 20, tenant clustering output unit 30, resource allocation unit 40. DETAILED DESCRIPTION
[0020] The above description is only an overview of the technical solution of the present application. In order to more clearly understand the technical means of the present application, it can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of the present application more obvious and easy to understand, the specific implementation methods of the present application are listed below.
[0021] In order to make the purpose, technical solutions and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings. The described embodiments should not be regarded as limiting this application. All other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of this application.
[0022] In the following description, reference is made to “some embodiments”, which describes a subset of all possible embodiments, but it will be understood that “some embodiments” may be the same subset or different subsets of all possible embodiments, and may be combined with each other without conflict, and the terms “first\second” involved are merely to distinguish similar objects and do not represent a specific ordering of the objects. The terms “including” and “having” and any variations are intended to cover non-exclusive inclusions, for example, a process, method, device, product or server that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or modules that are not clearly listed or inherent to these processes, methods, products or devices. Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the art to which this application belongs. The terms used herein are for the purpose of describing the embodiments of this application only.
[0023] The present application embodiment provides a method for allocating dynamic cloud cryptographic computing resources to multiple tenant groups, such as Figure 1 As shown, the method includes:
[0024] Step S100: configuring a first cryptographic computing resource component and a second cryptographic computing resource component, wherein the first cryptographic computing resource component and the second cryptographic computing resource component are respectively connected to a middleware for communication via an RDMA protocol.
[0025] Preferably, the cryptographic computing resource component is a collection of software and hardware for performing cryptographic-related calculations. In a cloud computing environment, cryptographic calculations involve operations such as data encryption, decryption, digital signatures, and key exchange, which are used to ensure data security and privacy. The first cryptographic computing resource component and the second cryptographic computing resource component are two relatively independent cryptographic computing resource pools, which can be composed of multiple servers, computing nodes, or virtual machines, and have the ability to process cryptographic computing tasks to meet the needs of tenants for cryptographic computing resources in different situations. The first cryptographic computing resource component and the second cryptographic computing resource component can process tenants' resource requests in parallel to improve overall processing capabilities and response speed. The Remote Direct Memory Access (RDMA) protocol is used to achieve high-performance data transmission in computer networks. Unlike traditional network data transmission methods, RDMA allows computers to transfer data directly between the memory of a remote server and local memory without going through the operating system kernel, significantly reducing CPU involvement and data transmission latency to improve data transmission bandwidth and efficiency. In multi-tenant cloud cryptographic computing resource allocation, the use of the RDMA protocol can ensure that when processing a large number of cryptographic computing tasks, the first cryptographic computing resource component, the second cryptographic computing resource component, and the middleware can communicate data quickly and efficiently, reducing the time overhead of data transmission and improving overall performance.
[0026] Preferably, the middleware is responsible for receiving tenants' resource requests and allocating these requests to appropriate cryptographic computing resource components for processing. It can monitor and manage tenants' resource usage to ensure reasonable allocation and utilization of resources. The first cryptographic computing resource component and the second cryptographic computing resource component respectively establish communication connections with the middleware through the RDMA protocol, which means that each component can independently interact with the middleware for data. The middleware can send the tenant's resource request to the first cryptographic computing resource component or the second cryptographic computing resource component for processing according to actual conditions, so that cryptographic computing resources can be flexibly and accurately allocated according to the dynamic needs of tenants.
[0027] Furthermore, step S100 also includes configuring a first cryptographic computing resource component and a second cryptographic computing resource component, wherein the first cryptographic computing resource component is a resource component with a fixed quota, and the second cryptographic computing resource component is a resource component with a dynamic redundant quota based on the first cryptographic computing resource component; wherein the allocation priority of the first cryptographic computing resource component is greater than the allocation priority of the second cryptographic computing resource component.
[0028] Preferably, the first cryptographic computing resource component is configured as a resource component with a fixed quota. Specifically, a fixed amount of resources is set for the first cryptographic computing resource component, which may be computing power (such as the number of CPU cores, the number of computing threads), storage capacity, network bandwidth, etc. Regardless of the circumstances, the total amount of resources it can provide is the set fixed amount of resources. The setting of a fixed quota provides tenants with stable resource guarantees. For those tenants who have relatively stable expectations and demands for resource usage, the first cryptographic computing resource component can meet their daily basic cryptographic computing needs and ensure the smooth operation of the business.
[0029] Preferably, the second cryptographic computing resource component is configured as a resource component that performs dynamic redundant quota based on the first cryptographic computing resource component. Specifically, the resource quota of the second cryptographic computing resource component is associated with the first cryptographic computing resource component, and mainly exists as a redundant supplement mechanism, that is, when the resources of the first cryptographic computing resource component cannot meet the needs of the tenant, the second cryptographic computing resource component will dynamically allocate additional resources according to actual conditions. For example, when the tenant's resource request exceeds the fixed quota of the first cryptographic computing resource component, the second cryptographic computing resource component can dynamically provide a certain number of CPU cores or storage capacity to meet the demand based on the excess part. The setting of dynamic redundant quota can better cope with the sudden increase in tenant resource demand. In a multi-tenant environment, the business of different tenants has different peak and trough periods. Dynamic redundant quota can improve resource utilization and avoid idleness and waste of resources.
[0030] Preferably, the allocation priority of the first cryptographic computing resource component is greater than the allocation priority of the second cryptographic computing resource component. Specifically, when the middleware receives a resource request from a tenant, it will first allocate the request to the first cryptographic computing resource component for processing. If the remaining resources of the first cryptographic computing resource component are insufficient to meet the tenant's request, the middleware will allocate the remaining resource request to the second cryptographic computing resource component; the priority setting goal is to make full use of the fixed quota of the first cryptographic computing resource component to ensure the stability and predictability of resource allocation. At the same time, the second cryptographic computing resource component is used as a backup resource to provide additional support when necessary to cope with sudden resource demands, ensuring that the system can operate efficiently and stably under different resource demand conditions.
[0031] Preferably, assuming that tenant A's resource request requires 50 CPU cores for cryptographic computing tasks, the middleware will first check whether the first cryptographic computing resource component has sufficient remaining resources (assuming its fixed quota is 100 CPU cores, and currently 60 are remaining). If so, the resource request will be allocated to the first cryptographic computing resource component; but if tenant A subsequently makes a request for an additional 30 CPU cores, and at this time the first cryptographic computing resource component has only 10 remaining computing resources, which cannot fully meet the demand, then the middleware will allocate 10 resources to the first cryptographic computing resource component, and the remaining 20 resource requests will be allocated to the second cryptographic computing resource component for processing.
[0032] Furthermore, step S100 also includes that the transmission between the first cryptographic computing resource component and the middleware includes a first NB-IOT communication module, and the transmission between the second cryptographic computing resource component and the middleware includes a second NB-IOT communication module.
[0033] Preferably, the NB-IOT communication module, namely the narrowband Internet of Things, is a low-power wide area network communication technology based on a cellular network. The first NB-IOT communication module is used to realize communication between the first cryptographic computing resource component and the middleware. The first NB-IOT communication module uses NB-IOT technology to transmit the data processed by the first cryptographic computing resource component or the required information to the middleware through the NB-IOT network, and can also receive instructions or data sent by the middleware to the first cryptographic computing resource component, thereby realizing two-way communication between the two; the second NB-IOT communication module has similar functions to the first NB-IOT communication module, and is responsible for data transmission between the second cryptographic computing resource component and the middleware. It transmits relevant data of the second cryptographic computing resource component to the middleware through the NB-IOT network, and passes the instructions or data of the middleware to the second cryptographic computing resource component to realize the communication connection between the two.
[0034] Step S200 : Recording historical resource request information of each tenant, and calculating a sliding average resource usage index of each tenant according to the historical resource request information.
[0035] Preferably, in a multi-tenant scenario in a cloud computing environment, each tenant generates multiple resource requests when using cloud cryptographic computing resources, and obtains historical resource request information from log files and databases related to cloud computing tasks. The historical resource request information includes the tenant's usage of cryptographic computing resources in the past period of time. The specific information may cover the time of the request, the type of resource requested (such as the number of CPU computing cores, memory capacity, storage bandwidth, etc.), and the number of resources requested. For example, tenant A requested 10 CPU cores and 20GB of memory for cryptographic computing tasks at 10:00 on January 1, 2025, and requested 15 CPU cores and 30GB of memory at 14:00 on January 2, 2025. These detailed request records are all historical resource request information; the entry of each tenant's historical resource request information can be regular batch import or real-time collection and update to ensure the integrity and timeliness of the information.
[0036] Preferably, the sliding average resource usage index of each tenant is calculated according to the historical resource request information, wherein the sliding average is a commonly used statistical method that can smooth time series data to reflect the long-term trend and change of the data. When calculating the tenant's resource usage index, the sliding average can avoid the impact of individual sudden resource requests on the overall index and more accurately reflect the tenant's resource usage pattern; the sliding average resource usage index is used to measure and analyze the tenant's resource usage over a period of time, which can smooth out short-term fluctuations and outliers, and more accurately reflect the long-term trend and stability level of the tenant's resource usage, thereby improving the accuracy of cryptographic computing resource allocation. Specifically, we first determine a suitable time window, such as the past 7 days or 30 days. The time window slides over time, and the calculated data range is continuously updated. Then, within the set time window, we count and calculate the tenant's resource request information. Taking the CPU core request as an example, assuming that the time window is 7 days, and the number of CPU cores requested by the tenant each day during these 7 days is 10, 12, 15, 13, 11, 14, and 16 respectively, then the sliding average CPU core usage indicator for these 7 days is (10+12+15+13+11+14+16) ÷ 7 = 13. As time goes by, when the resources of a new day are When request information is added, the oldest day's data is removed and a new 7-day sliding average is calculated. If multiple resource types (such as CPU, memory, and storage) are considered, the sliding average usage indicator for each resource can be calculated separately. Weights are then assigned based on the importance of each resource, and the sliding average resource usage indicator is calculated as a whole. For example, assuming the CPU resource has a weight of 0.6 and the memory resource has a weight of 0.4, the calculated sliding average CPU usage indicator is 13, and the sliding average memory usage indicator is 25GB. The combined sliding average resource usage indicator is 13 × 0.6 + 25 × 0.4 = 17.8. By calculating the sliding average resource usage indicator for each tenant, we can better understand tenants' resource usage habits and demand trends, and improve the accuracy of cryptographic computing resource allocation.
[0037] Step S300 : clustering the tenants using the sliding average resource usage indicator to output multiple groups of tenants, wherein the multiple groups of tenants correspond to multiple resource allocation thresholds.
[0038] Preferably, clustering each tenant to output multiple groups of tenants means that the sliding average resource usage index is used as the basis for measuring the similarity of tenants, and each tenant is divided into different groups, that is, tenants with similar sliding average resource usage indicators will be classified into the same group, while tenants with large indicator differences will be divided into different groups. For example, K-means clustering is used to process each tenant. Specifically, first, the number of clusters K is determined according to business needs and experience, that is, the number of groups to be divided into is determined in advance. For example, based on previous resource usage patterns, it is found that tenants can be roughly divided into three groups: high, medium, and low. For resource usage level, K is set to 3, and K are randomly selected from the sliding average resource usage indicators of all tenants as the initial cluster centroids. Then, the distance between each tenant's sliding average resource usage indicator and each centroid is calculated (Euclidean distance is commonly used), and the tenant is assigned to the cluster with the nearest centroid. For each cluster, the average of the sliding average resource usage indicators of all tenants in the cluster is recalculated, and the calculated average is used as the new centroid. Continuous iteration, repeatedly assigning tenants to clusters and updating centroids, until the centroid no longer changes significantly or the preset number of iterations is reached, and finally 3 groups of tenants are obtained.
[0039] Preferably, for each group of tenants output by clustering, a resource allocation threshold appropriate for that group is determined based on the sliding average resource usage index of that group of tenants. This serves as a reference standard for the resources required by that group of tenants under normal circumstances. For example, a higher resource allocation threshold may be set for a group of tenants with a higher sliding average resource usage index to ensure they have sufficient resources to meet business needs; while a relatively lower threshold may be set for a group with a lower index to avoid wasting resources. By calculating the resource allocation threshold for each group of tenants, resources can be more reasonably allocated based on the actual resource demand characteristics of different tenant groups, thereby improving resource utilization efficiency.
[0040] Furthermore, step S300 also includes step S310, obtaining a sliding average resource usage indicator set corresponding to each group of tenants; step S320, performing time series fusion processing on the sliding average resource usage indicator set to obtain a time series-sliding average resource usage indicator set, and performing curve fitting according to the time series-sliding average resource usage indicator set to obtain a sliding average resource usage curve; step S330, allocating corresponding multiple resource allocation thresholds to the multiple groups of tenants according to the sliding average resource usage curve.
[0041] Preferably, the sliding average resource usage indicators of multiple groups of tenants are collected and obtained respectively, and each group of tenants has a corresponding sliding average resource usage indicator set, which may include the sliding average usage of resources such as CPU, memory, network bandwidth, etc. every hour in the past week, reflecting the average level and changes of resource usage of this group of tenants over a period of time; then the sliding average resource usage indicator set is subjected to time series fusion processing, that is, the originally scattered sliding average resource usage indicators are integrated and associated in chronological order, and the indicators of each time point are fused in consideration of the continuity and correlation of resource usage at different time points, so that each indicator corresponds to a specific time point, and a time series-sliding average resource usage indicator set is obtained, which not only includes the indicator data of resource usage, but also clarifies the time series to which these data correspond. For example, the resource usage indicators of each hour are arranged in chronological order to form a time series from the past to the present, so that the trend of resource usage changes over time can be clearly seen.
[0042] Preferably, curve fitting is performed based on the time series-sliding average resource usage indicator set, that is, the data in the time series-sliding average resource usage indicator set is analyzed and processed to find a curve that can best describe the trend of these data changes, such as using the least squares method to determine the parameters of the curve so that the error between the curve and the actual data points is minimized, and then a sliding average resource usage curve is obtained, which can intuitively show the change pattern of the resource usage of the tenant group over time, and help analyze the peak and trough periods of resource usage and the overall trend of change. For example, if the curve shows periodic fluctuations, it means that the tenant's resource usage has a certain periodic pattern; if the curve gradually rises, it shows that the resource usage is increasing. Assume that the CPU resource sliding average usage indicator data of a group of tenants over a period of time is shown in Table 1:
[0043] Table 1. Tenant CPU resource sliding average usage data (CPU core count) within 12 hours
[0044] Time (hours) Actual moving average CPU resource usage indicator (number of CPU cores) 1 8 2 10 3 13 4 15 5 12 6 10 7 8 8 9 9 11 10 14 11 16 12 18
[0045] Use the least squares method to fit a quadratic curve y=ax 2 +bx+c (where y represents the moving average CPU resource usage indicator and x represents time). The parameters a, b, and c of the curve are calculated by the least squares method to minimize the error between the curve and the actual data points. To minimize the sum of the squares of the curve errors, the partial derivatives of a, b, and c are calculated respectively, and the partial derivatives are set to 0. The simultaneous equations are solved to obtain a, b, and c. Assuming that a=0.2, b=−1.5, and c=9.5 are obtained by calculation, the equation of the fitted curve is y=0.2x 2−1.5x+9.5. As shown in Table 2, the CPU resource usage indicator (number of CPU cores) of the fitting curve is:
[0046] Table 2 CPU resource usage indicators (CPU core number) of the fitting curve
[0047] Time (hours) Sliding average CPU resource usage indicator (number of CPU cores) of the fitting curve 1 15.4 2 17.6 3 119.6 4 21.4 5 23 6 24.4 7 25.6 8 26.6 9 27.4 10 28 11 36.7 12 47.3
[0048] Preferably, a suitable resource allocation threshold is determined for each group of tenants based on the shape, trend, and fluctuation of the sliding average resource usage curve. For example, for a tenant group with a large curve fluctuation and a high peak value, a higher resource allocation threshold is set to ensure that there are sufficient resources to support business peaks; while for a tenant group with a relatively stable curve and low resource usage, the allocation threshold is relatively low. When configuring the resource allocation threshold, the tenant's business needs and resource costs are also taken into consideration. If the tenant's business has high requirements for the real-time and stability of resources, even if its resource usage curve does not fluctuate much, the resource allocation threshold may be appropriately increased to ensure the normal operation of the business. At the same time, the cost of resources is also taken into consideration to avoid excessive resource allocation leading to increased costs. Through the reasonable configuration of resource allocation thresholds, reasonable allocation and efficient utilization of resources are achieved, which not only meets the tenant's business needs, but also avoids waste and excessive use of resources, thereby improving the overall resource management efficiency and performance.
[0049] Furthermore, step S330 also includes step S331, detecting a set of inflection points in the sliding average resource usage curve corresponding to each group of tenants whose amplitude change is greater than a preset change amplitude; step S332, assigning weights to the inflection point set through exponentially weighted moving average to obtain an EWMA weight set, calculating the mean value of each inflection point in the inflection point set according to the EWMA weight set, and outputting the resource allocation threshold corresponding to each group of tenants.
[0050] Preferably, a sliding average resource usage curve is used to describe the changes in tenant resource usage over time. The inflection point on the curve refers to the point where the slope of the curve changes significantly, that is, the point where the rate of change of resource usage changes significantly. The preset change amplitude is a threshold preset based on historical data, which is used to judge the significance of the inflection point. When the amplitude change of the curve at a certain point is greater than this preset change amplitude, the point is regarded as an inflection point. By detecting the inflection point, the moment when the tenant resource usage changes significantly is obtained, and an inflection point set is obtained; the inflection point set is then weighted by exponentially weighted moving average, wherein the exponentially weighted moving average assigns different weights to data at different times, with more recent data having a greater weight and more distant data having a smaller weight; for each inflection point in the inflection point set, the EWMA method is used to assign weights according to its time sequence and its distance from the current moment, assigning a greater weight to the recent inflection point, highlighting that the recent resource usage can better reflect the tenant's current and future resource demand trends, and finally obtaining an EWMA weight set, which corresponds to the inflection point set, and each inflection point has a corresponding weight value.
[0051] Preferably, the EWMA weight set is finally combined with the values of each inflection point in the inflection point set to perform mean calculation. Specifically, the value of each inflection point is multiplied by its corresponding weight, and then all the products are added together and divided by the sum of the weights to obtain a weighted average, that is, the resource allocation threshold corresponding to each group of tenants. This comprehensively considers the inflection point information with large amplitude changes in the sliding average resource usage curve, and performs weighted processing according to the time distance of these inflection points. It can more reasonably reflect the resource usage characteristics and needs of the tenants, thereby improving the accuracy of resource allocation, so that resource allocation can better adapt to the actual situation of the tenants and avoid the problem of over-allocation or under-allocation of resources.
[0052] Furthermore, step S300 also includes step S340, performing calculations based on the multiple resource allocation thresholds and outputting a total resource allocation threshold; step S350, obtaining configuration parameter information of the first cryptographic computing resource component, the configuration parameter information including resource configuration parameter information, network configuration parameter information and access configuration parameter information; step S360, performing a load balancing test on the total resource allocation threshold with the configuration parameter information to obtain a first computing resource quota test sample based on load balancing, and setting a fixed quota for the first cryptographic computing resource component based on the first computing resource quota test sample.
[0053] Preferably, a weighted summation is performed on multiple resource allocation thresholds to output a total resource allocation threshold, which represents the overall upper limit of resource allocation for all tenants and reflects the total amount of resources expected to be provided while meeting the normal business needs of all tenants; the configuration parameter information of the first cryptographic computing resource component is obtained through the application programming interface (API) provided by the first cryptographic computing resource component, wherein the configuration parameter information includes resource configuration parameter information, network configuration parameter information and access configuration parameter information. Specifically, the resource configuration parameter information mainly refers to the computing resources possessed by the first cryptographic computing resource component itself, such as the number of CPU cores it possesses, the size of memory capacity, the capacity and performance parameters of storage devices, etc., which determines the ability and scale of the component to handle computing tasks.
[0054] Preferably, the network configuration parameter information includes various parameters related to the network, such as the size of the network bandwidth, which determines the speed of data transmission between the component and other parts (such as middleware, tenants, etc.); network latency, which affects the timeliness of data transmission; and network topology, etc., which affects the efficiency and stability of data interaction between the component and the outside world; access configuration parameter information includes access permission settings for the component, such as which tenants or system modules have permission to access the component; the type of access protocol, such as which encryption protocol is used to ensure the security of data transmission; and restrictions on access frequency, etc., to prevent excessive access from causing component performance degradation or security problems.
[0055] Preferably, the total resource allocation threshold is load-balanced tested using configuration parameter information, which means that based on the resource configuration, network configuration, access configuration and other parameter information of the first cryptographic computing resource component, various situations in which the component handles tenant resource requests under the limitation of the total resource allocation threshold are simulated to ensure that resources can be reasonably allocated and used, and to avoid situations in which some components are overloaded while other components are idle; for example, based on the network bandwidth and delay parameters, the time and efficiency of data transmission between the component and the middleware are simulated; based on the resource configuration parameters, the computing processing capabilities of the component under different load conditions are simulated, and relevant data indicators are collected through simulation tests, such as the component's CPU utilization, memory occupancy, response time, success rate of request processing, etc. These data constitute the first computing resource quota test sample based on load balancing, which records the performance and resource usage of the first cryptographic computing resource component in processing resource allocation tasks under different conditions.
[0056] Preferably, the first computing resource quota test sample is analyzed to observe the changing trend of indicators under different resource allocation situations, and to determine at what resource usage level the component can maintain stable and efficient operation, and then comprehensively consider the performance indicators, resource usage, overall stability and efficiency of the component to determine the key indicators. For example, CPU utilization and response time are relatively key indicators. If the CPU utilization is too high for a long time, it may cause component overheating, performance degradation or even system crash; and too long response time will affect the user experience and the overall efficiency of the system; then, based on the analysis results of the key indicators, combined with the overall needs and business goals, a fixed quota is set for the first cryptographic computing resource component. For example, if it is found that when the memory usage reaches 6GB, the performance of the component begins to decline significantly, and considering that other components also need to use memory resources, the fixed memory quota of the first cryptographic computing resource component is set to 4GB to ensure stable operation.
[0057] Furthermore, step S300 also includes step S370, entering the historical resource request information of each tenant, and calculating the resource volatility of each tenant based on the sliding average resource usage indicator according to the historical resource request information; step S380, dividing the resource volatility set corresponding to each group of tenants according to the resource volatility corresponding to each tenant; step S390, calculating the total resource volatility threshold of each group of tenants based on the resource volatility set; step S3100, performing a load balancing test on the total resource volatility threshold with the configuration parameter information of the second cryptographic computing resource component, obtaining a second computing resource quota test sample based on load balancing, and performing dynamic quota for the second cryptographic computing resource component according to the second computing resource quota test sample.
[0058] Preferably, resource request data of each tenant over a period of time is collected, including the requested resource type (such as CPU, memory, bandwidth, etc.), the request time, the requested resource amount, etc., and the resource volatility of each tenant is calculated based on the sliding average resource usage indicator, that is, it is obtained by calculating the rate of change of the sliding average resource usage in adjacent time intervals, which is used to measure the magnitude of the change in tenant resource usage; then, according to the resource volatility of each tenant, the tenants are divided into different groups, and the tenants in each group have similar resource volatility characteristics. For example, they can be grouped according to the size of the resource volatility, and tenants with volatility within a certain range are grouped together, and then the total resource volatility threshold of each group of tenants is calculated. For example, the total resource volatility threshold is determined by counting the average, median, maximum and other statistical quantities of the resource volatility of the tenants in the group. For example, the 95% quantile of the resource volatility in the group is taken as the total threshold, that is, the resource volatility of 95% of the tenants in the group is less than or equal to this threshold.
[0059] Preferably, a load balancing test is performed on the total resource volatility threshold using the configuration parameter information of the second cryptographic computing resource component, wherein the configuration parameter information includes resource configuration parameters (such as the number of CPU cores, memory size, etc.), network configuration parameters (such as network bandwidth, IP address, etc.), and access configuration parameters (such as access rights, authentication method, etc.); by adjusting these configuration parameters, different load conditions are simulated, and performance under the total resource volatility threshold is observed, such as response time, throughput, resource utilization, etc., and based on the load balancing test results, a second computing resource quota test sample based on load balancing is obtained, which includes system performance data and resource usage under different configuration parameters and load conditions; finally, a dynamic quota is performed on the second cryptographic computing resource component based on these test samples, that is, resource allocation is flexibly adjusted according to the actual load conditions and the resource needs of the tenants. For example, when the load is high, resources are appropriately increased to ensure the performance of the second cryptographic computing resource component; when the load is low, resource allocation can be reduced to improve resource utilization, thereby improving the accuracy and flexibility of computing resource allocation.
[0060] In step S400, the middleware receives the tenant's resource request and determines whether the tenant's cumulative resource usage index for the day exceeds the resource allocation threshold corresponding to the group to which it belongs. If it does not exceed the resource allocation threshold corresponding to the group to which the tenant belongs, the middleware sends the resource request to the first cryptographic computing resource component for resource allocation. If it exceeds the resource allocation threshold corresponding to the group to which the tenant belongs, the middleware sends the resource request to the second cryptographic computing resource component for resource allocation.
[0061] Preferably, the middleware receives resource requests from tenants. Specifically, when a tenant needs to obtain cryptographic computing-related resources (such as computing power, storage resources, etc.) when running its business, it will send a resource request to the middleware, which includes the tenant's specific resource demand information, such as how many CPU cores and memory space are required; it determines whether the tenant's cumulative resource usage index for the day exceeds the resource allocation threshold corresponding to the group to which it belongs, wherein the tenant's cumulative resource usage index for the day refers to the real-time record of the amount of resources used by each tenant on the day, and the calculated corresponding index, which can be a comprehensive reflection of the usage of multiple resources; then the tenant's cumulative resource usage index for the day is compared with the resource allocation threshold corresponding to the group to which the tenant belongs to determine whether the tenant's current resource usage exceeds the limit of its group.
[0062] Preferably, if the tenant's cumulative resource usage index for the day does not exceed the resource allocation threshold corresponding to the group to which it belongs, indicating that the tenant's resource usage is within the normal range, the middleware will send the tenant's resource request to the first cryptographic computing resource component, process the tenant's request according to the pre-set resource configuration, and allocate corresponding resources to the tenant to meet the tenant's business needs; if the tenant's cumulative resource usage index for the day exceeds the resource allocation threshold corresponding to the group to which it belongs, indicating that the tenant's resource demand has exceeded the normal allocation range of its group, the middleware will send the tenant's resource request to the second cryptographic computing resource component, and dynamically allocate additional resources based on the tenant's excess resource demand to ensure that the tenant's business can continue to operate normally, while also avoiding business interruptions due to insufficient resources.
[0063] Furthermore, step S400 also includes step S410, detecting that the idle time of the tenant's resources exceeds a preset threshold, triggering a resource recovery instruction; step S420, recovering the computing resources obtained by the tenant to the first cryptographic computing resource component or the second cryptographic computing resource component according to the resource recovery instruction.
[0064] Preferably, the usage status of the computing resources (such as CPU cores, memory space, storage capacity, etc.) obtained by each tenant is monitored in real time, and the tenant's resource idle time is obtained, that is, the length of time these computing resources are not used (idle) by the tenant. If it is detected that the tenant's resource idle time exceeds a preset threshold, a resource recovery instruction is automatically generated to perform a recovery operation on the tenant's idle resources to improve resource utilization and avoid resource waste. The preset threshold is a pre-set time standard used to determine whether the idle state of the resource has reached a level that requires recovery. For example, the preset threshold is set to 30 minutes, that is, if a computing resource of a tenant has not been used for 30 consecutive minutes, it is considered that the idle time of the resource exceeds the preset threshold, and a resource recovery operation is performed on it.
[0065] Preferably, a specific resource recovery action is performed according to the triggered resource recovery instruction, that is, the tenant's currently idle computing resources are recovered from the tenant so that they are no longer occupied by the tenant. Specifically, the recovered computing resources are returned to the first cryptographic computing resource component or the second cryptographic computing resource component according to the resource management policy (such as the original resource allocation source, the current resource status of the component, etc.). For example, if the tenant initially obtained the resources from the first cryptographic computing resource component and the component currently has sufficient capacity to receive the recovered resources, the resources are recovered to the first cryptographic computing resource component; if the first cryptographic computing resource component is full or the resources need to be recovered to the second cryptographic computing resource component according to the policy to achieve better resource balance, the resources are recovered to the second cryptographic computing resource component. Suppose tenant C obtains 10 CPU cores and 50GB of memory for cryptographic computing tasks. After running for a period of time, it is detected that 2 of the CPU cores and 20GB of memory have not been used by tenant C for 40 consecutive minutes (exceeding the preset 30-minute threshold). This triggers a resource recycling instruction, and the 2 CPU cores and 20GB of memory are reclaimed from tenant C. According to the resource management policy, they are recycled to the first cryptographic computing resource component or the second cryptographic computing resource component.
[0066] Furthermore, step S420 also includes step S421, wherein the middleware is connected to the desensitizing module, and when the resource recovery instruction is triggered, the computing resources obtained by the tenant are desensitized according to the desensitizing module to obtain the desensitized computing resources; step S422, the desensitized computing resources are correspondingly recovered to the first cryptographic computing resource component or the second cryptographic computing resource component.
[0067] Preferably, in addition to being responsible for interacting with the tenant, the first cryptographic computing resource component and the second cryptographic computing resource component, the middleware also establishes a connection with the desensitizing module, so that the middleware can call the function of the desensitizing module to implement desensitizing operations on relevant data or resources, wherein the desensitizing module is used to process the data so that its sensitive information is removed or converted into a non-sensitive form; when it is detected that the idle time of the tenant's resources exceeds a preset threshold and the resource recovery instruction is triggered, the middleware uses the connection with the desensitizing module to send the computing resources obtained by the tenant (which may contain data information related to the tenant's business, such as temporary data generated during the cryptographic calculation process, etc.) to the desensitizing module, and the desensitizing module processes the sensitive information in these computing resources. For example, for data containing sensitive content such as tenant personal identity information and business confidential data, the desensitizing module may use data masking (such as replacing sensitive fields with specific symbols), data generalization (such as expanding the specific numerical range), data encryption, etc. to convert it into desensitized computing resources, so that these resources will not leak the tenant's sensitive information after being recycled. Finally, the desensitized computing resources are recycled to the first cryptographic computing resource component or the second cryptographic computing resource component; thereby realizing the redistribution and utilization of resources and ensuring the security of data during resource recycling, thereby improving the flexibility and accuracy of computing resource allocation and ensuring the normal and stable operation of tenant business.
[0068] In the above, refer to Figure 1 The dynamic cloud cryptographic computing resource allocation method for multi-tenant grouping according to an embodiment of the present invention is described in detail. Figure 2 A dynamic cloud cryptographic computing resource allocation middleware device for multi-tenant grouping according to an embodiment of the present invention is described.
[0069] The multi-tenant grouping dynamic cloud cryptographic computing resource allocation middleware device according to the embodiment of the present invention is used to solve the technical problem in the prior art that cryptographic computing resources cannot be flexibly and accurately allocated according to the dynamically changing resource requirements of tenants, resulting in low computing resource utilization efficiency and difficulty in normal operation of tenant services, thereby achieving the technical effect of improving computing resource utilization efficiency and ensuring normal operation of tenant services. Figure 2 As shown, the dynamic cloud cryptographic computing resource allocation middleware device for multi-tenant grouping includes: a computing resource component configuration unit 10, a sliding average resource usage indicator calculation unit 20, a tenant clustering output unit 30, and a resource allocation unit 40.
[0070] A computing resource component configuration unit 10 is used to configure a first cryptographic computing resource component and a second cryptographic computing resource component, wherein the first cryptographic computing resource component and the second cryptographic computing resource component are respectively connected to the middleware through the RDMA protocol; a sliding average resource usage index calculation unit 20 is used to input the historical resource request information of each tenant and calculate the sliding average resource usage index of each tenant according to the historical resource request information; a tenant clustering output unit 30 is used to cluster each tenant with the sliding average resource usage index and output multiple groups of tenants, wherein the multiple groups of tenants correspond to multiple resource allocation thresholds; a resource allocation unit 40 is used to receive the resource request of the tenant by the middleware, determine whether the cumulative resource usage index of the tenant on that day exceeds the resource allocation threshold corresponding to the group to which it belongs, and if it does not exceed the resource allocation threshold corresponding to the group to which the tenant belongs, the middleware sends the resource request to the first cryptographic computing resource component for resource allocation; if it exceeds the resource allocation threshold corresponding to the group to which the tenant belongs, the middleware sends the resource request to the second cryptographic computing resource component for resource allocation.
[0071] The specific configuration of the computing resource component configuration unit 10 will be described in detail below. The computing resource component configuration unit 10 further includes: configuring a first cryptographic computing resource component and a second cryptographic computing resource component, wherein the first cryptographic computing resource component is a resource component with a fixed quota, and the second cryptographic computing resource component is a resource component with a dynamic redundant quota based on the first cryptographic computing resource component; wherein the allocation priority of the first cryptographic computing resource component is greater than the allocation priority of the second cryptographic computing resource component.
[0072] The specific configuration of the tenant clustering output unit 30 will be described in detail below. The tenant clustering output unit 30 further includes: performing calculations based on the multiple resource allocation thresholds to output a total resource allocation threshold; obtaining configuration parameter information of the first cryptographic computing resource component, the configuration parameter information including resource configuration parameter information, network configuration parameter information, and access configuration parameter information; performing a load balancing test on the total resource allocation threshold using the configuration parameter information to obtain a first computing resource quota test sample based on load balancing; and setting a fixed quota for the first cryptographic computing resource component based on the first computing resource quota test sample.
[0073] The specific configuration of the tenant clustering output unit 30 will be described in detail below. The tenant clustering output unit 30 further includes: inputting historical resource request information of each tenant, calculating the resource volatility of each tenant based on the sliding average resource usage indicator according to the historical resource request information; dividing the resource volatility set corresponding to each group of tenants according to the resource volatility corresponding to each tenant; calculating the total resource volatility threshold of each group of tenants based on the resource volatility set; performing a load balancing test on the total resource volatility threshold using the configuration parameter information of the second cryptographic computing resource component to obtain a second computing resource quota test sample based on load balancing, and performing a dynamic quota for the second cryptographic computing resource component based on the second computing resource quota test sample.
[0074] The specific configuration of the tenant clustering output unit 30 will be described in detail below. The tenant clustering output unit 30 further includes: obtaining a sliding average resource usage indicator set corresponding to each group of tenants; performing time series fusion processing on the sliding average resource usage indicator set to obtain a time series-sliding average resource usage indicator set; performing curve fitting based on the time series-sliding average resource usage indicator set to obtain a sliding average resource usage curve; and allocating corresponding multiple resource allocation thresholds to the multiple groups of tenants based on the sliding average resource usage curve.
[0075] The specific configuration of the tenant clustering output unit 30 will be described in detail below. The tenant clustering output unit 30 further includes: allocating corresponding multiple resource allocation thresholds to the multiple groups of tenants according to the sliding average resource usage curve, wherein the method of allocating corresponding resource allocation thresholds to each group of tenants includes: detecting a set of inflection points in the sliding average resource usage curve corresponding to each group of tenants whose amplitude change is greater than a preset amplitude change; assigning weights to the inflection point set by exponentially weighted moving average to obtain an EWMA weight set, performing mean calculation on the values of each inflection point in the inflection point set according to the EWMA weight set, and outputting the resource allocation threshold corresponding to each group of tenants.
[0076] The specific configuration of the computing resource component configuration unit 10 will be described in detail below. The computing resource component configuration unit 10 further includes: the first cryptographic computing resource component and the middleware include a second NB-IOT communication module, and the second cryptographic computing resource component and the middleware transmission include a second NB-IOT communication module.
[0077] The specific configuration of the resource allocation unit 40 will be described in detail below. The resource allocation unit 40 further includes: detecting that the idle time of the tenant's resources exceeds a preset threshold, triggering a resource recycling instruction; and recycling the computing resources obtained by the tenant to the first cryptographic computing resource component or the second cryptographic computing resource component according to the resource recycling instruction.
[0078] The specific configuration of the resource allocation unit 40 will be described in detail below. The resource allocation unit 40 further includes: when the resource recovery instruction is triggered, desensitizing the computing resources obtained by the tenant according to the desensitizing module to obtain desensitized computing resources; and recycling the desensitized computing resources to the first cryptographic computing resource component or the second cryptographic computing resource component.
[0079] The dynamic cloud cryptographic computing resource allocation middleware device for multi-tenant groups provided in an embodiment of the present invention can execute the dynamic cloud cryptographic computing resource allocation method for multi-tenant groups provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.
[0080] Although the present application makes various references to certain modules in the apparatus according to the embodiments of the present application, any number of different modules may be used and run on the user terminal and / or server, and the various units and modules included are only divided according to functional logic, but are not limited to the above division, as long as the corresponding functions can be achieved; in addition, the specific names of the functional units are only for the convenience of distinguishing each other and are not used to limit the scope of protection of the present invention.
[0081] The above specific embodiments do not constitute a limitation on the scope of protection of this application. Those skilled in the art should understand that various modifications, combinations, and substitutions may be made based on design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this application shall be included within the scope of protection of this application.
Claims
1. A dynamic cloud cryptographic computing resource allocation method for multi-tenant groups, characterized in that: The method comprises: Configuring a first cryptographic computing resource component and a second cryptographic computing resource component, wherein the first cryptographic computing resource component and the second cryptographic computing resource component are respectively connected to the middleware for communication via a remote direct memory access (RDMA) protocol; Record the historical resource request information of each tenant and calculate the sliding average resource usage index of each tenant based on the historical resource request information; Clustering each tenant using the sliding average resource usage indicator to output multiple groups of tenants, wherein the multiple groups of tenants correspond to multiple resource allocation thresholds; The middleware receives the tenant's resource request and determines whether the tenant's cumulative resource usage index for the day exceeds the resource allocation threshold corresponding to the group to which it belongs. If it does not exceed the resource allocation threshold corresponding to the group to which the tenant belongs, the middleware sends the resource request to the first cryptographic computing resource component for resource allocation. If it exceeds the resource allocation threshold corresponding to the group to which the tenant belongs, the middleware sends the resource request to the second cryptographic computing resource component for resource allocation.
2. The method according to claim 1, wherein Configure a first cryptographic computing resource component and a second cryptographic computing resource component, wherein the first cryptographic computing resource component is a resource component with a fixed quota, and the second cryptographic computing resource component is a resource component with a dynamic redundant quota based on the first cryptographic computing resource component; The allocation priority of the first cryptographic computing resource component is greater than the allocation priority of the second cryptographic computing resource component.
3. The method according to claim 2, wherein The method of configuring the first cryptographic computing resource component includes: Calculate based on the multiple resource allocation thresholds and output a total resource allocation threshold; Obtaining configuration parameter information of the first cryptographic computing resource component, the configuration parameter information including resource configuration parameter information, network configuration parameter information, and access configuration parameter information; A load balancing test is performed on the total resource allocation threshold using the configuration parameter information to obtain a first computing resource quota test sample based on load balancing, and a fixed quota is set for the first cryptographic computing resource component according to the first computing resource quota test sample.
4. The method according to claim 1, wherein The method of configuring the second cryptographic computing resource component includes: Recording historical resource request information of each tenant, and calculating the resource fluctuation rate of each tenant based on the sliding average resource usage indicator according to the historical resource request information; According to the resource volatility of each tenant, the resource volatility set corresponding to each group of tenants is divided; Calculating a total resource fluctuation rate threshold for each group of tenants based on the resource fluctuation rate set; A load balancing test is performed on the total resource volatility threshold using the configuration parameter information of the second cryptographic computing resource component to obtain a second computing resource quota test sample based on load balancing, and a dynamic quota is performed for the second cryptographic computing resource component based on the second computing resource quota test sample.
5. The method according to claim 1, wherein Allocating corresponding resource allocation thresholds to the multiple groups of tenants, the method comprising: Get the sliding average resource usage indicator set corresponding to each group of tenants; Performing time series fusion processing on the sliding average resource usage indicator set to obtain a time series-sliding average resource usage indicator set, and performing curve fitting according to the time series-sliding average resource usage indicator set to obtain a sliding average resource usage curve; Corresponding resource allocation thresholds are allocated to the multiple groups of tenants according to the sliding average resource usage curve.
6. The method according to claim 5, wherein Allocating a plurality of corresponding resource allocation thresholds to the plurality of groups of tenants according to the sliding average resource usage curve, wherein the method of allocating a corresponding resource allocation threshold to each group of tenants includes: Detecting the set of inflection points in the sliding average resource usage curve corresponding to each group of tenants, where the change is greater than a preset change range; The inflection point set is weighted by exponentially weighted moving average to obtain an EWMA weight set, and the values of each inflection point in the inflection point set are averaged according to the EWMA weight set to output the resource allocation threshold corresponding to each group of tenants.
7. The method according to claim 1, wherein The first cryptographic computing resource component and the middleware are transmitted via a first NB-IOT communication module, and the second cryptographic computing resource component and the middleware are transmitted via a second NB-IOT communication module; The first NB-IOT communication module utilizes NB-IOT technology to transmit the data or required information processed by the first cryptographic computing resource component to the middleware via the NB-IOT network, and simultaneously receives instructions or data sent by the middleware to the first cryptographic computing resource component, thereby achieving two-way communication between the two. The second NB-IOT communication module uses NB-IOT technology to transmit the data or required information processed by the second cryptographic computing resource component to the middleware through the NB-IOT network, and at the same time receives instructions or data sent by the middleware to the second cryptographic computing resource component, thereby realizing two-way communication between the two.
8. The method according to claim 1, wherein After the middleware sends the resource request to the first cryptographic computing resource component or the second cryptographic computing resource component for resource allocation, the method further includes: Detecting that the idle time of the tenant's resources exceeds a preset threshold, triggering a resource recycling instruction; According to the resource recycling instruction, the computing resources obtained by the tenant are recycled to the first cryptographic computing resource component or the second cryptographic computing resource component.
9. The method according to claim 8, wherein The middleware is connected to the desensitization module, and the method includes: When the resource recovery instruction is triggered, the computing resources obtained by the tenant are desensitized according to the desensitization module to obtain the desensitized computing resources; The desensitized computing resources are recycled to the first cryptographic computing resource component or the second cryptographic computing resource component.
10. A multi-tenant grouped dynamic cloud cryptographic computing resource allocation middleware device, characterized in that: The device is used to implement the dynamic cloud cryptographic computing resource allocation method for multi-tenant groups according to any one of claims 1 to 9, and the device includes: A computing resource component configuration unit, configured to configure a first cryptographic computing resource component and a second cryptographic computing resource component, wherein the first cryptographic computing resource component and the second cryptographic computing resource component are respectively connected to the middleware through a remote direct memory access (RDMA) protocol; A sliding average resource usage index calculation unit, configured to input historical resource request information of each tenant and calculate a sliding average resource usage index of each tenant according to the historical resource request information; a tenant clustering output unit, configured to cluster each tenant using the sliding average resource usage indicator to output multiple groups of tenants, wherein the multiple groups of tenants correspond to multiple resource allocation thresholds; A resource allocation unit is used for the middleware to receive the tenant's resource request, determine whether the tenant's cumulative resource usage index for the day exceeds the resource allocation threshold corresponding to the group to which it belongs, and if it does not exceed the resource allocation threshold corresponding to the group to which the tenant belongs, the middleware sends the resource request to the first cryptographic computing resource component for resource allocation; if it exceeds the resource allocation threshold corresponding to the group to which the tenant belongs, the middleware sends the resource request to the second cryptographic computing resource component for resource allocation.
Citation Information
Patent Citations
Private cloud computing resource distribution method and system
CN106453146A
Virtual resource allocation method and apparatus, and storage device
CN116521323A