Architecture optimization method and device of service mesh, computer device and storage medium
By deploying the proxy components on different nodes in the service mesh and obtaining and adjusting node parameters, the complexity of the network architecture of Kubernetes combined with Istio technology is solved, and performance optimization is achieved with less hardware.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-05-16
- Publication Date
- 2026-04-07
AI Technical Summary
The network architecture of Kubernetes combined with Istio technology is complex, and hardware resources affect network performance. How to achieve the performance goals of application design with as little hardware as possible is an urgent problem to be solved.
By deploying different types of proxy components on different nodes in the service mesh, basic configuration parameters are obtained, stress tests are conducted, data query rates and node performance metrics are acquired, and node parameters of the proxy components are adjusted based on this information to achieve isolation and optimization of physical resources.
Under the performance goals of the application design, it achieves performance targets with as little hardware as possible, provides accurate network architecture adjustment information, and improves the data query rate of the service mesh.
Smart Images

Figure CN114896025B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of cloud computing, and particularly relates to a service grid architecture optimization method and device, computer equipment and a computer readable storage medium (referred to as a storage medium). BACKGROUND
[0002] With the wide application and rapid development of information technology, cloud computing provides characteristics such as virtualization, rapid deployment, dynamic expansion, and high reliability, and more and more enterprises choose to use cloud computing technology, especially the cloud network architecture of Kubernetes combined with Istio technology. However, the network architecture of Kubernetes combined with Istio technology is complex, and different software configurations and hardware resources all have an impact on network performance, and how to achieve the performance target of application design with as few hardware structures as possible is a problem that needs to be solved. SUMMARY
[0003] Therefore, it is necessary to provide a service grid architecture optimization method, device, computer equipment and storage medium in view of the above technical problems.
[0004] In a first aspect, the present application provides a service grid architecture optimization method applied to a service grid, the service grid including at least two types of proxy components, different types of proxy components being deployed on different nodes; the method comprising:
[0005] obtaining a basic configuration parameter, and deploying the service grid based on the basic configuration parameter;
[0006] performing a stress test on the service grid to obtain a data query rate of the service grid;
[0007] obtaining node performance index information of the proxy components in the service grid during the stress test;
[0008] adjusting node parameters of the proxy components in the service grid based on the data query rate and the node performance index information.
[0009] In some embodiments of the present application, adjusting the node parameters of the proxy components in the service grid based on the data query rate and the node performance index information comprises:
[0010] obtaining a benchmark query rate corresponding to the service grid and benchmark performance index information corresponding to the proxy components in the service grid;
[0011] if the data query rate is less than the benchmark query rate, adjusting the node parameters of the proxy components in the service grid according to the node performance index information and the benchmark performance index information until the data query rate of the service grid is greater than a preset target query rate.
[0012] In some embodiments of the present application, the node parameters of the proxy components in the service mesh are adjusted according to the node performance index information and the benchmark performance index information until the data query rate of the service mesh is greater than the preset target query rate, including:
[0013] Obtaining the component types of the proxy components in the service mesh;
[0014] Comparing the node performance index information and the benchmark performance index information corresponding to each component type to obtain a target component type with a benchmark performance index greater than the node performance index information;
[0015] Adjusting the node parameters of the target proxy components corresponding to the target component type until the data query rate of the service mesh is greater than the preset target query rate.
[0016] In some embodiments of the present application, the node parameters include the number of nodes and the number of container groups;
[0017] Adjusting the node parameters of the target proxy components corresponding to the target component type includes:
[0018] Increasing the number of nodes or the number of container groups of the target proxy components corresponding to the target component type by a preset growth step.
[0019] In some embodiments of the present application, the benchmark query rate corresponding to the service mesh and the benchmark performance index information corresponding to the proxy components in the service mesh are obtained, including:
[0020] Obtaining the node parameters of the proxy components in the service mesh;
[0021] Querying a preset benchmark parameter data table according to the node parameters to obtain the benchmark query rate corresponding to the service mesh and the benchmark performance index information corresponding to the proxy components in the service mesh;
[0022] The preset benchmark parameter data table includes the data query rates of the basic service meshes with different network architectures and the performance index information of the proxy components in the basic service meshes.
[0023] In some embodiments of the present application, the benchmark query rate corresponding to the service mesh and the benchmark performance index information corresponding to the proxy components in the service mesh are obtained, including:
[0024] Based on the node parameters of the proxy components in the service mesh, a benchmark service mesh corresponding to the service mesh is constructed;
[0025] The benchmark service mesh is subjected to stress testing to obtain the benchmark query rate and the benchmark performance index information corresponding to the proxy components in the service mesh.
[0026] In some embodiments of the present application, the node parameters include the number of nodes and the number of container groups;
[0027] constructing a benchmark service mesh corresponding to the service mesh based on node parameters of the proxy components in the service mesh, including:
[0028] determining each type of proxy component as a target proxy component in sequence;
[0029] increasing a number of container groups of the target proxy component in the service mesh to obtain the benchmark service mesh, or increasing a number of nodes of the target proxy component in the service mesh to obtain the benchmark service mesh.
[0030] In some embodiments of the present application, the proxy components in the service mesh include an ingress gateway proxy component, an egress gateway proxy component, and a service proxy component.
[0031] In some embodiments of the present application, the node performance index information at least includes a central processing unit resource consumption and a response time delay.
[0032] In a second aspect, the present application provides a service mesh architecture optimization device, applied to a service mesh, the service mesh including at least two types of proxy components, different types of proxy components being respectively deployed on different nodes; the device including:
[0033] an environment deployment module, configured to obtain basic configuration parameters and deploy the service mesh based on the basic configuration parameters;
[0034] a stress test module, configured to perform stress testing on the service mesh to obtain a data query rate of the service mesh;
[0035] a performance index obtaining module, configured to obtain node performance index information of the proxy components in the service mesh in the stress testing process;
[0036] a service mesh adjustment module, configured to adjust node parameters of the proxy components in the service mesh based on the data query rate and the node performance index information.
[0037] In a third aspect, the present application further provides a server, including:
[0038] one or more processors;
[0039] a memory; and
[0040] one or more application programs, wherein the one or more application programs are stored in the memory and configured to be executed by the processor to implement the service mesh architecture optimization method.
[0041] In a fourth aspect, the present application further provides a computer readable storage medium, having a computer program stored thereon, the computer program being loaded by a processor to execute steps in the service mesh architecture optimization method.
[0042] In a fifth aspect, an embodiment of the present application provides a computer program product or computer program, which comprises computer instructions stored in a computer readable storage medium. A processor of a computer device reads the computer instructions from the computer readable storage medium, and the processor executes the computer instructions to enable the computer device to perform the method provided in the first aspect.
[0043] The method, device, computer device and storage medium for optimizing the architecture of the service mesh, by deploying different types of proxy components on different nodes respectively, obtaining basic configuration parameters, deploying the service mesh based on the basic configuration parameters, performing stress testing on the service mesh, obtaining the data query rate of the service mesh, and obtaining the node performance index information of the proxy components in the service mesh during the stress testing; based on the data query rate and the node performance index information, adjusting the node parameters of the proxy components in the service mesh. By deploying different types of proxy components on different nodes to isolate different proxy components in physical resources, the data query rate and the node performance index information of the proxy components in the service mesh obtained during subsequent stress testing of the service mesh can accurately reflect the performance data of the service mesh on a certain hardware structure, providing accurate information for adjusting the network architecture of the subsequent service mesh, and achieving the performance target with as few hardware structures as possible under the performance target of the application design. BRIEF DESCRIPTION OF DRAWINGS
[0044] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed in the embodiment description will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative labor.
[0045] Figure 1A is a scene diagram of the method for optimizing the architecture of the service mesh in an embodiment of the present application;
[0046] Figure 1B is a scene diagram of another method for optimizing the architecture of the service mesh in an embodiment of the present application;
[0047] Figure 2 is a flow diagram of the method for optimizing the architecture of the service mesh in an embodiment of the present application;
[0048] Figure 3 is a flow diagram of the step of adjusting the node parameters of the proxy components in the service mesh in an embodiment of the present application;
[0049] Figure 4 is a structure diagram of the device for optimizing the architecture of the service mesh in an embodiment of the present application;
[0050] Figure 5 FIG. 1 is a structural schematic diagram of a computer device in an embodiment of the present application. DETAILED DESCRIPTION
[0051] The technical solutions in the embodiments of the present application will be clearly and completely described in combination with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by a person skilled in the art without creative work are within the scope of protection of the present application.
[0052] In the description of the present application, the terms "first", "second" are used only for the purpose of description, and cannot be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined with "first", "second" can explicitly or implicitly include one or more of the features. In the description of the present application, the meaning of "multiple" is two or more, unless otherwise specifically limited.
[0053] In the description of the present application, the word "for example" is used to indicate "as an example, illustration or description". Any embodiment described as "for example" in the present application is not necessarily interpreted as more preferred or more advantageous than other embodiments. The following description is given in order to enable any person skilled in the art to implement and use the present application. In the following description, details are listed for the purpose of explanation. It should be understood that a person skilled in the art can realize the present application without using these specific details. In other examples, well-known structures and processes will not be described in detail in order to avoid unnecessary details making the description of the present application obscure. Therefore, the present application is not intended to be limited to the shown embodiments, but is consistent with the broadest scope of principles and features disclosed in the present application.
[0054] Before the embodiments of the present application are further described in detail, the terms and terms involved in the embodiments of the present application are explained, and the terms and terms involved in the embodiments of the present application are applicable to the following explanations.
[0055] Kubernetes (k8s for short): a container orchestration engine supporting automated deployment, large-scale scalability and application container management, which is a common cloud computing framework.
[0056] Node: the smallest computing hardware unit in a cloud computing system based on Kubernetes technology, which can be a single physical machine in a cloud computing system or a single virtual machine in a cloud computing system.
[0057] Container: The application / service to be run is packaged into a container. In Kubernetes technology, instead of directly running a container, one or more containers are encapsulated into a structure called a Pod.
[0058] POD: The basic unit of a cloud computing system based on Kubernetes technology, is a resource object that runs containerized applications, and the POD is deployed on a node.
[0059] Service Mesh: is an infrastructure layer for handling inter-service communication. It is responsible for composing complex service topologies of modern cloud-native applications to reliably deliver requests. In practice, Service Mesh is usually implemented in the form of an array of lightweight network proxies that are deployed with application code and are transparent to the application.
[0060] Istio: One of the service mesh governance frameworks, which provides network management functions such as traffic control, service discovery, seven-layer routing, network fusing, and telemetry recording.
[0061] On a cloud computing / service platform, monolithic applications are often split into smaller applications and deployed to a cloud computing / service platform based on Docker containerization technology and containerization orchestration frameworks such as Kubernetes. In addition, in order to better deploy large-scale services on a k8s-based cloud computing / service platform, a service mesh (a group of network proxies) is often used to control service-to-service communication to achieve traffic management, security management, and other functions. Among them, the service mesh can be implemented through Istio technology, and the service mesh includes service proxy components and gateway proxy components, wherein the service proxy components and gateway proxy components can be implemented based on the istio envoy component. Specifically, the service proxy component is deployed with a sidecar gateway and provides a reverse proxy service, wherein the sidecar gateway is used to control non-business-related functions (such as logs, monitoring, etc.) in the service mesh, and in the present application embodiment, the reverse proxy service can be implemented based on Nginx; the gateway proxy component includes an ingress gateway proxy component and an egress gateway proxy component, which are used to manage inbound traffic and outbound traffic.
[0062] In the present application embodiment, the architecture optimization method of the service mesh provided in the present application embodiment can be applied to the service mesh as shown in Figure 1A or Figure 1B as shown in Figure 1AThe service mesh shown includes three types of proxy components, specifically: using one node to run the ingress gateway (i.e., the ingress gateway proxy component 201), one node to run the egress gateway (i.e., the egress gateway proxy component 203), one node to run the sidecar gateway, and the nginx proxy service (i.e., the service proxy component 202); as Figure 1B The service mesh shown includes two types of proxy components, specifically: using one node to run the ingress gateway (i.e., the ingress gateway proxy component 201), one node to run the sidecar gateway, and the nginx proxy service (i.e., the service proxy component 202). The service mesh is subjected to stress testing, which can specifically be that the stress testing client 100 sends a service request to the service mesh, the service request is forwarded to the external server 300 through the service mesh, to receive the request result returned by the external server 300, wherein the external server 300 can be based on the nginx proxy service architecture.
[0063] Those skilled in the art can understand that Figure 1A or Figure 1B application environment shown in the foregoing Figure 1A or Figure 1B application environment shown in the foregoing Figure 1A or Figure 1B application environment shown in the foregoing
[0064] It should be noted that Figure 1A or Figure 1B The scenario diagram of the architecture optimization system of the service mesh shown is only an example, and the service mesh architecture optimization system and the scenario described in the embodiments of the present application are for more clearly illustrating the technical solutions of the embodiments of the present application, and do not constitute a limitation on the technical solutions provided by the embodiments of the present application. Those skilled in the art can know that, as the architecture optimization system of the service mesh evolves and new business scenarios appear, the technical solutions provided by the embodiments of the present application are also applicable to similar technical problems.
[0065] Referring to Figure 1A The embodiments of the present application provide a service mesh architecture optimization method, which is mainly applied to the foregoing Figure 1B The method includes steps S210 to S240, specifically as follows:
[0066] S210, obtaining basic configuration parameters, and deploying the service mesh based on the basic configuration parameters.
[0067] Specifically, the basic configuration parameters include network connection configuration parameters, mesh component deployment information, and mesh network configuration parameters.
[0068] The network connection configuration parameters include, but are not limited to, connection multiplexing parameters, port range parameters, hash table entry information, the number of connectable clients, file handle length, and the like.
[0069] For example, in the network connection configuration parameters, the connection multiplexing parameters can be tcp_tw_reused parameters of each proxy component in the service mesh, and the tcp_tw_reused parameters are adjusted to ensure that the ports in the time_wait state can be reused; the port range parameters can be tcp_local_port_range parameters, and the tcp_local_port_range parameters are adjusted to adjust the number of ports used to receive service requests; the hash table entry information can be conntrack_bucket parameters, and the conntrack_bucket parameters are adjusted to ensure the number of hash table entries; and the number of connectable clients can be sync_backlog parameters, and the sync_backlog parameters are adjusted to adjust the queue length. It can be understood that by adjusting each network connection configuration parameter, the network connection performance in the service mesh is maximized, and the influence of the network connection performance on subsequent service mesh performance testing is reduced.
[0070] The mesh component deployment information includes components required to be deployed in the service mesh, such as a performance index collection component for performance index data of a physical machine on which a proxy component is deployed, and a log collection component for running logs of the proxy component.
[0071] For example, a Node-exporter component, a Grafana component, and a Prometheus component can be deployed to implement collection, storage, and visual display of performance index data of the physical machine, an Elasticsearch component, a Filebeat component, and a Kibana component can be deployed to implement collection, storage, and visual display of running logs of each proxy component in the service mesh.
[0072] The mesh network configuration parameters include, but are not limited to, a cluster network mode of the service mesh and a network protocol type. The network protocol type is used to adjust a proxy protocol of the service mesh, such as an HTTP protocol, a TCP protocol, and the like; and the cluster network mode is used to adjust a gateway architecture of the service mesh, such as a Passtrough mode, an IP whitelist pass-through mode, a Registry_only mode, and the like.
[0073] S220, performing stress testing on the service mesh to obtain a data query rate of the service mesh.
[0074] The data query rate refers to the maximum value of the traffic processed by the service mesh in a specified time, that is, the number of responses to requests, which can be expressed in terms of Query Per Second (QPS).
[0075] The service mesh is subjected to stress testing, which can be performed by sending service requests to the service mesh through a stress testing client and obtaining the data query rate of the service mesh by obtaining the response status of the service mesh. Specifically, the service mesh can be subjected to multiple stress tests, and the average value of the Query Per Second obtained in each stress test is taken as the data query rate of the service mesh.
[0076] In S230, the node performance index information of the proxy components in the service mesh during the stress testing process is obtained.
[0077] The performance index information refers to the performance index information of the host machine on which the proxy component is deployed, such as the resource consumption of the host machine and the soft interrupt rate, the transmission time between different proxy components, the total resource consumption of the service mesh, and the like. In an embodiment, the performance index information at least includes the Central Processing Unit (CPU) resource consumption and the response time delay.
[0078] As described above, before stress testing, data collection components such as performance index collection components and log collection components can be deployed. During stress testing of the service mesh, the performance index information of the host machine on which the proxy component is located and the running log can be collected through the pre-deployed data collection components. Then, based on the related data of the performance index and the running log, the node performance index information of various proxy components in the service mesh is calculated.
[0079] Specifically, the response time delay of different proxy components is used to reflect the transmission time of a service request in different proxy components of the service mesh. For example, a service mesh includes an entry gateway proxy component, an exit gateway proxy component, and a service proxy component. In this service mesh, the full link of a service request is as follows: the entry gateway proxy component receives the service request and forwards it to the service proxy component, the service proxy component receives the service request and forwards it to the exit gateway proxy, the exit gateway proxy sends the service request to an external server, and the external server responds to the service request. Therefore, multiple transmission links are involved in the service mesh, including link 1 from the entry gateway proxy component to the service proxy component, link 2 from the service proxy component to the exit gateway proxy component, and link 3 from the exit gateway proxy component to the external server. In each response link, there is a transmission time delay, which is an important factor affecting the data query rate of the service mesh.
[0080] For the response time in the performance index information, the response time of the proxy component in the service mesh in the pressure test process is obtained, which can specifically include: collecting the running log of the proxy component; and calculating the response time of the proxy component according to the request duration in the running log. Wherein, taking Envoy as the deployment instance of the proxy component, the request duration can be obtained from the Duration field in the running log; and taking Nginx as the deployment instance of the proxy component, the request duration can be obtained from the Responstime field in the running log.
[0081] S240, adjusting the node parameter of the proxy component in the service mesh based on the data query rate and the node performance index information.
[0082] The node parameter of the proxy component includes the number of container groups of the proxy component and the number of nodes of the proxy component. The number of container groups of the proxy component refers to the number of PODs used to deploy a certain type of proxy component on the same node, and the number of nodes of the proxy component refers to the number of nodes used to deploy a certain type of proxy component.
[0083] After obtaining the data query rate of the service mesh and the node performance index information of the proxy component, the node parameter of the proxy component in the service mesh can be adjusted to optimize the network architecture of the service mesh. Under the preset performance target, the service mesh can achieve the data query rate corresponding to the performance target with as little resource consumption as possible.
[0084] In one embodiment, as shown in Figure 2 S240, adjusting the node parameter of the proxy component in the service mesh based on the data query rate and the node performance index information, includes:
[0085] S310, obtaining the benchmark query rate corresponding to the service mesh, and the benchmark performance index information corresponding to the proxy component in the service mesh.
[0086] The benchmark query rate and the benchmark performance index information are respectively the comparison benchmarks of the data query rate and the node performance index information, and can be the data query rate of the benchmark service mesh corresponding to the current service mesh and the performance index information of each proxy component in the benchmark service mesh. It should be noted that the benchmark service mesh refers to a service mesh in which the node parameter of a certain type of proxy component is different from that of the corresponding proxy component in the current service mesh, and the node parameter of other proxy components is the same as that of the corresponding proxy component in the current service mesh.
[0087] Specifically, in one embodiment, the acquiring the benchmark query rate corresponding to the service mesh and the benchmark performance index information corresponding to the proxy component in the service mesh can include: acquiring node parameters of the proxy component in the service mesh; querying a preset benchmark parameter data table according to the node parameters to obtain the benchmark query rate corresponding to the service mesh and the benchmark performance index information corresponding to the proxy component in the service mesh; wherein the preset benchmark parameter data table includes data query rates of basic service meshes of different network architectures and performance index information of the proxy component in the basic service meshes.
[0088] Wherein, the basic service meshes of different network architectures can be constructed in advance, and the pre-constructed basic service meshes are subjected to stress testing to obtain corresponding data query rates and performance index information of the proxy components, and then a benchmark parameter data table is constructed based on the node parameters of the proxy components in the basic service meshes, the data query rates of the basic service meshes and the performance index information of the proxy components in the basic service meshes. After determining the current service mesh, the basic service mesh with the smallest difference between the node parameters of the proxy component in the basic service mesh and the node parameters of the proxy component in the current service mesh can be determined as a benchmark service mesh based on the node parameters of the proxy component in the service mesh, and the data query rate and the performance index information of the proxy component of the benchmark service mesh are determined as the benchmark query rate and the benchmark performance index information.
[0089] For example, the proxy component of the current service mesh includes an entry gateway proxy component and a service proxy component, after the node parameters of the entry gateway proxy component and the node parameters of the service proxy component are acquired, the basic service mesh with the smallest difference in the node parameters of the entry gateway proxy component and the same node parameters of the service proxy component can be found in the benchmark parameter data table, and the data query rate and the performance index information of the found basic service mesh are taken as the benchmark query rate and the benchmark performance index information corresponding to the current service mesh.
[0090] Further, in one embodiment, the acquiring the benchmark query rate corresponding to the service mesh and the benchmark performance index information corresponding to the proxy component in the service mesh can further include: constructing a benchmark service mesh corresponding to the service mesh based on the node parameters of the proxy component in the service mesh; performing stress testing on the benchmark service mesh to obtain the benchmark query rate and the benchmark performance index information corresponding to the proxy component in the service mesh.
[0091] In the determination of the current service grid, the node parameters of the proxy components in the service grid can be obtained to construct a benchmark service grid corresponding to the service grid. For example, the proxy components of the current service grid include an entry gateway proxy component, a service proxy component, and an exit gateway proxy component. After obtaining the node parameters of the entry gateway proxy component, the node parameters of the service proxy component, and the node parameters of the exit gateway proxy component, the node parameters of the service proxy component and the node parameters of the exit gateway proxy component can be kept unchanged, and the node parameters of the entry gateway proxy component can be increased to construct a benchmark service grid corresponding to the service grid.
[0092] Further, as described above, the node parameters include the number of nodes and the number of container groups. Based on the node parameters of the proxy components in the service grid, the benchmark service grid corresponding to the service grid can be constructed, which can specifically include sequentially determining each type of proxy component as a target proxy component; increasing the number of container groups of the target proxy component in the service grid to obtain the benchmark service grid; or increasing the number of nodes of the target proxy component in the service grid to obtain the benchmark service grid.
[0093] Since different proxy components are deployed on different nodes, the physical resources of different proxy components are independent of each other. By increasing the number of nodes of the target proxy component in the service grid to obtain the benchmark service grid, it is convenient for subsequent analysis of which proxy component in the service grid limits the data query rate of the service grid. By increasing the number of container groups in the software configuration of different proxy components, the number of processed service requests and the utilization rate of physical resources are improved, which is convenient for subsequent analysis of which proxy component in the service grid limits the data query rate of the service grid.
[0094] By adjusting a single node parameter of a single proxy component, it is convenient for subsequent analysis of which link in the service grid can greatly improve the data query rate by increasing the physical resources or software resources, and thus the proxy component that causes the bottleneck of the current service grid is determined, which is convenient for subsequent adjustment of the network architecture.
[0095] S320, if the data query rate is less than the benchmark query rate, the node parameters of the proxy components in the service grid are adjusted according to the node performance index information and the benchmark performance index information until the data query rate of the service grid is greater than the preset target query rate.
[0096] The target query rate is a designed performance target of the service mesh. When the data query rate is less than the benchmark query rate, it indicates that there is a physical bottleneck or a software configuration bottleneck in the proxy component in the service mesh compared with the benchmark service mesh. Therefore, the node parameters of the proxy component in the service mesh can be adjusted according to the node performance index information and the benchmark performance index information, until the data query rate of the service mesh is greater than the preset target query rate, so that the data query rate of the service mesh reaches the preset target query rate.
[0097] Specifically, in one embodiment, adjusting the node parameters of the proxy component in the service mesh until the data query rate of the service mesh is greater than the preset target query rate according to the node performance index information and the benchmark performance index information includes: obtaining the component types of each proxy component in the service mesh; comparing the node performance index information and the benchmark performance index information corresponding to each component type to obtain a target component type whose benchmark performance index is greater than the node performance index information; and adjusting the node parameters of a target proxy component corresponding to the target component type until the data query rate of the service mesh is greater than the preset target query rate.
[0098] For example, the current service mesh includes 1 ingress gateway proxy component, 1 service proxy component, and 1 egress gateway component, and the service proxy component runs 10 PODs; the benchmark service mesh includes 1 ingress gateway proxy component, 2 service proxy components, and 1 egress gateway component, and the 2 service proxy components run 10 PODs. Among them, compared with the benchmark service mesh, the performance index information corresponding to the ingress gateway proxy component has no change in the central processor resource consumption, the performance index information of the egress gateway component has an increase in the central processor resource consumption, the performance index information of the service proxy component has a decrease in the central processor resource consumption, and the overall response delay of the intermediate proxy link is significantly increased, so it can be determined that the bottleneck is in the link corresponding to the service proxy component.
[0099] Due to the resource limitation of the bottleneck proxy component, the data query rate of the service mesh cannot meet the demand of the target query rate. The number of container groups of the bottleneck proxy component on the same node can be increased to increase the software resources of the bottleneck proxy component, so that the maximum query rate of the service mesh meets the demand of the target query rate; or the number of nodes deployed with the bottleneck proxy component can also be increased to increase the physical resources of the bottleneck proxy node, so that the maximum query rate of the service mesh meets the demand of the target query rate. In one embodiment, the node parameters include the number of nodes and the number of container groups; and adjusting the node parameters of the target proxy component corresponding to the target component type includes: increasing the number of nodes or the number of container groups of the target proxy component corresponding to the target component type by a preset growth step.
[0100] Specifically, when adjusting the node parameters of the bottleneck proxy component, the number of nodes or container groups of the bottleneck proxy component can be increased in steps. For example, when adjusting the number of nodes of the bottleneck proxy component, one node can be added each time; or, for example, when adjusting the number of container groups of the bottleneck proxy component, 10 container groups can be added each time.
[0101] In the aforementioned service mesh architecture optimization method, different types of proxy components are deployed on different nodes. After deploying the service mesh with basic configuration parameters, stress testing is performed on the service mesh to obtain its data query rate and the node performance indicators of various proxy components during the stress test. Based on the data query rate and the node performance indicators of various proxy components, the node parameters of various proxy components in the service mesh are then adjusted. By deploying different types of proxy components on different nodes, physical resource isolation is achieved. During subsequent stress testing of the service mesh, the obtained data query rate and node performance indicators accurately reflect the performance data of the service mesh under a given hardware structure, providing accurate information for subsequent adjustments to the service mesh's network architecture. This allows performance goals to be achieved with as little hardware as possible while meeting the application design's performance objectives.
[0102] The following section will further explain the above-mentioned service mesh architecture optimization method using a specific application scenario.
[0103] Step 1: Obtain basic configuration parameters and deploy the service mesh based on these parameters.
[0104] Specifically, the Kubernetes cluster consists of multiple physical machines, and a service mesh is deployed within the Kubernetes cluster using the following basic configuration parameters:
[0105] a) Use the network performance testing tool Ipef to perform end-to-end testing of the POD performance in the Kubernetes cluster to ensure that the network component network card in the Kubernetes cluster has the same performance as the physical machine network card.
[0106] b) Adjust the tcp_tw_reused parameter of Nginx POD (i.e., service proxy component), ingress gateway proxy component, and egress gateway proxy component to ensure that ports entering the time_wait state can be reused;
[0107] c) Adjust the cp_local_port_range parameter to ensure that there are enough ports to initiate requests;
[0108] d) Increase the conntrack_bucket parameter to ensure that during stress testing, conntrack_count accounts for 65% or more of the conntrack_max value, thus avoiding significant performance degradation of the hash table;
[0109] e) Increase the sync_backlog parameter to ensure that the proxy component has a sufficient queue length to handshake with the load testing client;
[0110] f) Increase the file handle length of the container to ensure that enough socket files can be created;
[0111] g) Deploy the Isito component and disable the telemetry function of the Isito component to avoid dynamically generating metrics and reduce unnecessary CPU resource consumption;
[0112] h) Deploy the node-exporter component, grafana component, and prometheus component to collect physical machine performance metrics;
[0113] i) Deploy Elasticsearch, Filebeat, and Kibana components to collect runtime logs. These logs will be used to calculate the response latency of each link in the network link. For an instance using Envoy as the proxy component, the response latency can be obtained from the Duration field in the runtime log; for an instance using Nginx as the proxy component, the response latency can be obtained from the Responstime field in the runtime log.
[0114] In addition, you can adjust the mesh network configuration parameters, such as network protocol type and cluster network mode.
[0115] Step 2: Perform stress testing on the service mesh to obtain the data query rate of the service mesh and acquire the node performance index information of various proxy components in the service mesh during the stress test.
[0116] Specifically, stress testing is achieved by sending service requests to the service mesh through a load testing client. The load testing client can be built based on the load testing tool wrk; the size of the service request can be set according to the actual situation of the business corresponding to the service mesh, such as setting it to 2k; the number of load testing threads and the number of connections must always be kept consistent, for example: 2 threads and 2000 connections.
[0117] It is understandable that different service mesh network architectures can be obtained using the basic configuration parameters mentioned above, for example:
[0118] a) Use one slave node to run the ingress gateway and one slave node to run the intermediate proxy nginx service. Configure the proxy service pod to fully utilize the machine resources of the slave node, and configure the Istio cluster network mode to passtrough.
[0119] b) Use one slave node to run the ingress gateway and one slave node to run the intermediate proxy nginx service. Configure the proxy service pod to fully utilize the machine resources of the slave node, and configure the Istio cluster network mode to allow IP whitelisting.
[0120] c) Use one slave node to run the ingress gateway and one slave node to run the intermediate proxy nginx service. Configure the proxy service pod to fully utilize the slave node resources, and configure the cluster network mode in iShito to be registry_only.
[0121] d) Use one slave node to run the ingress gateway, one slave node to run the egress gateway, and one slave node to run the proxy nginx service. Configure the proxy service pod to fully utilize the slave node resources, and configure the cluster network mode in iShito as registry_only. Configure the egress gateway as service entry, virtual service, and HTTP protocol.
[0122] e) Use one slave node to run the ingress gateway and one slave node to run the intermediate proxy nginx service. Configure the proxy service pod to fully utilize the slave node resources, and configure the cluster network mode in iShito to be registry_only.
[0123] By using different basic configuration parameters, service meshes ranging from simple to comprehensive can be constructed, enabling network architectures such as full access to external services, access to external services via mesh forwarding, restricted access to external services, and access to external services via gateways. By stress testing service meshes with different network architectures, data query rates and performance metrics such as CPU consumption of different nodes can be obtained (i.e., performance metrics of various proxy components).
[0124] Step 3: Based on the data query rate and the node performance metrics of various proxy components, adjust the node parameters of the proxy components in the service mesh.
[0125] Specifically, a target query rate can be set as the target performance, such as 50,000 queries per second or 100,000 queries per second. With the target query rate as the goal, the node parameters of the proxy components in the service mesh are adjusted to determine how much physical resources are needed to achieve the target query rate.
[0126] At this point, using the number of pods (container groups) in nodes of different proxy components or the number of nodes in different proxy components as variables, we gradually observe the impact of increasing the number of pods or nodes on the QPS growth in the service mesh. Specifically, by controlling variables to build a baseline service mesh (e.g., increasing the number of pods), and analyzing the performance metrics, data query rate, and other data corresponding to the service mesh and the baseline service mesh, we determine which proxy component's resource increase can more significantly improve the data query rate. This allows us to adjust the node parameters of that proxy component, ultimately determining the service mesh architecture that uses the least amount of hardware resources under certain performance targets.
[0127] For example, testing was conducted using the default settings of 2 CPUs and 2GB of memory from the official Istio website:
[0128] a) Current service mesh: 1 egress gateway proxy component, 1 service proxy component, running 10 pods, and one egress proxy component using the HTTP protocol.
[0129] Baseline Service Mesh 1: 1 ingress gateway proxy component, 1 service proxy component, running 20 pods, and 1 egress proxy component using the HTTP protocol.
[0130] Baseline Service Mesh 2: 1 ingress gateway proxy component, 1 service proxy component, running 1 pod, and 1 egress proxy component using the HTTP protocol.
[0131] b) Record the data query rate of the service mesh and the baseline service mesh, as well as the performance parameters (such as CPU consumption, response latency, etc.) of the host machines in the service mesh and the baseline service mesh where each proxy service component is deployed.
[0132] When the number of pods (PODs) is 1, the CPU of the sidecar gateway in the service proxy component quickly reaches the default resource limit, while the CPU resource consumption of the nginx proxy server is relatively low. Therefore, the bottleneck is determined to be the number of pod instances in the service proxy component. In a service mesh with 10 pods, compared to the baseline service mesh with 20 pods, the data query rate does not change significantly, the CPU resource consumption of the ingress gateway proxy component remains unchanged, the CPU resource consumption of the egress gateway proxy component increases, and the CPU resource consumption of the sidecar gateway in the service proxy component decreases. The response latency of the intermediate proxy links increases significantly, confirming that the bottleneck is in the service proxy component. Therefore, the number of service proxy component nodes in the service mesh is increased.
[0133] The updated service mesh consists of 1 egress gateway proxy component, 2 service proxy components, running 10 pods, and 1 egress proxy component using the HTTP protocol.
[0134] The updated service mesh corresponds to the base service mesh: 1 ingress gateway proxy component, 2 service proxy components, running 20 pods, and 1 egress proxy component using the HTTP protocol.
[0135] Analyze the performance metrics and data query rates of the service mesh and the baseline service mesh to determine which proxy component's resource increase can more significantly improve the data query rate, so as to adjust the node parameters of that proxy component; repeat the above steps until the performance target is achieved, then summarize the node parameters of each proxy component to determine the network architecture of the service mesh.
[0136] In addition, for external servers such as MySQL and Redis that use the TCP protocol, the network protocol of the egress gateway proxy component can be changed from HTTP to TCP, and the above test can be repeated to test different network protocols or adjust the network architecture of the service mesh.
[0137] To better implement the service mesh architecture optimization method provided in the embodiments of this application, based on the service mesh architecture optimization method proposed in the embodiments of this application, the embodiments of this application also provide a service mesh architecture optimization apparatus, such as... Figure 1A As shown, the service mesh architecture optimization device 400 includes:
[0138] Environment deployment module 410 is used to obtain basic configuration parameters and deploy the service mesh based on the basic configuration parameters.
[0139] The stress testing module 420 is used to stress test the service mesh and obtain the data query rate of the service mesh;
[0140] The performance metric acquisition module 430 is used to acquire node performance metric information of the proxy component in the service mesh during the stress test.
[0141] The service mesh adjustment module 440 is used to adjust the node parameters of the proxy components in the service mesh based on the data query rate and node performance indicators.
[0142] In some embodiments of this application, the service mesh adjustment module is used to obtain the baseline query rate corresponding to the service mesh and the baseline performance index information corresponding to the proxy component in the service mesh; if the data query rate is less than the baseline query rate, the node parameters of the proxy component in the service mesh are adjusted according to the node performance index information and the baseline performance index information until the data query rate of the service mesh is greater than the preset target query rate.
[0143] In some embodiments of this application, the service mesh adjustment module is used to obtain the component type of each proxy component in the service mesh; compare the node performance index information and the benchmark performance index information corresponding to each component type to obtain the target component type whose benchmark performance index is greater than the node performance index information; and adjust the node parameters of the target proxy component corresponding to the target component type until the data query rate of the service mesh is greater than the preset target query rate.
[0144] In some embodiments of this application, the node parameters include the number of nodes and the number of container groups; the service mesh adjustment module is used to increase the number of nodes or the number of container groups of the target proxy component corresponding to the target component type by a preset growth step.
[0145] In some embodiments of this application, the service mesh adjustment module is used to obtain node parameters of the proxy components in the service mesh; query a preset benchmark parameter data table based on the node parameters to obtain the benchmark query rate corresponding to the service mesh and the benchmark performance index information corresponding to the proxy components in the service mesh; wherein, the preset benchmark parameter data table includes the data query rate of the basic service mesh of different network architectures and the performance index information of the proxy components in the basic service mesh.
[0146] In some embodiments of this application, the service mesh adjustment module is used to construct a baseline service mesh corresponding to the service mesh based on the node parameters of the proxy components in the service mesh; perform stress testing on the baseline service mesh to obtain the baseline query rate and the baseline performance index information corresponding to the proxy components in the service mesh.
[0147] In some embodiments of this application, the node parameters include the number of nodes and the number of container groups; the service mesh adjustment module is used to sequentially determine various proxy components as target proxy components; increase the number of container groups of the target proxy components in the service mesh to obtain a baseline service mesh; or increase the number of nodes of the target proxy components in the service mesh to obtain a baseline service mesh.
[0148] In some embodiments of this application, the proxy components in the service mesh include an ingress gateway proxy component, an egress gateway proxy component, and a service proxy component.
[0149] In some embodiments of this application, node performance metrics include at least central processing unit resource consumption and response latency.
[0150] In some embodiments of this application, the service mesh architecture optimization apparatus 400 can be implemented as a computer program, which can be implemented in, for example... Figure 3 The computer device shown operates on this system. The computer device's memory can store the various program modules that make up the architecture optimization apparatus 400 of the service mesh, for example, Figure 4 The illustrated modules are environment deployment module 410, stress testing module 420, performance metric acquisition module 430, and service mesh adjustment module 440. The computer program comprised of these modules causes the processor to execute the steps in the service mesh architecture optimization methods of the various embodiments of this application described in this specification.
[0151] For example, Figure 5 The computer equipment shown can be used as follows Figure 4 The environment deployment module 410 in the service mesh architecture optimization apparatus 400 shown executes step S210. The computer device can execute step S220 via the stress testing module 420. The computer device can execute step S230 via the performance metric acquisition module 430. The computer device can execute step S240 via the service mesh tuning module 440. The computer device includes a processor, memory, and a network interface connected via a system bus. The processor of the computer device provides computing and control capabilities. The memory of the computer device includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage media. The network interface of the computer device is used to communicate with external computer devices via a network connection. When the computer program is executed by the processor, it implements a service mesh architecture optimization method.
[0152] Those skilled in the art will understand that Figure 5 Figure 4 Figure 5 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0153] In some embodiments of this application, a computer device is provided, including one or more processors; memory; and one or more application programs, wherein the one or more application programs are stored in the memory and configured to be executed by the processor to perform the following steps:
[0154] Obtain basic configuration parameters and deploy the service mesh based on these parameters;
[0155] Perform stress tests on the service mesh to obtain its data query rate;
[0156] Obtain node performance metrics information of proxy components in the service mesh during stress testing;
[0157] Adjust the node parameters of the proxy components in the service mesh based on data query rate and node performance metrics.
[0158] In some embodiments of this application, when the processor executes the computer program, it also performs the following steps: obtaining the baseline query rate corresponding to the service mesh and the baseline performance index information corresponding to the proxy component in the service mesh; if the data query rate is less than the baseline query rate, adjusting the node parameters of the proxy component in the service mesh according to the node performance index information and the baseline performance index information until the data query rate of the service mesh is greater than the preset target query rate.
[0159] In some embodiments of this application, when the processor executes the computer program, it also performs the following steps: obtaining the component type of each proxy component in the service mesh; comparing the node performance index information and the benchmark performance index information corresponding to each component type to obtain the target component type whose benchmark performance index is greater than the node performance index information; adjusting the node parameters of the target proxy component corresponding to the target component type until the data query rate of the service mesh is greater than the preset target query rate.
[0160] In some embodiments of this application, the node parameters include the number of nodes and the number of container groups; when the processor executes the computer program, it also implements the following steps: increasing the number of nodes or the number of container groups of the target proxy component corresponding to the target component type by a preset growth step.
[0161] In some embodiments of this application, when the processor executes the computer program, it also performs the following steps: obtaining node parameters of the proxy components in the service mesh; querying a preset benchmark parameter data table based on the node parameters to obtain the benchmark query rate corresponding to the service mesh and the benchmark performance index information corresponding to the proxy components in the service mesh; wherein, the preset benchmark parameter data table includes the data query rate of the basic service mesh of different network architectures and the performance index information of the proxy components in the basic service mesh.
[0162] In some embodiments of this application, when the processor executes the computer program, it also performs the following steps: constructing a baseline service mesh corresponding to the service mesh based on the node parameters of the proxy components in the service mesh; performing stress testing on the baseline service mesh to obtain the baseline query rate and the baseline performance index information corresponding to the proxy components in the service mesh.
[0163] In some embodiments of this application, the node parameters include the number of nodes and the number of container groups; when the processor executes the computer program, it also implements the following steps: sequentially determining various proxy components as target proxy components; increasing the number of container groups of the target proxy components in the service mesh to obtain a baseline service mesh; or increasing the number of nodes of the target proxy components in the service mesh to obtain a baseline service mesh.
[0164] In some embodiments of this application, the proxy components in the service mesh include an ingress gateway proxy component, an egress gateway proxy component, and a service proxy component.
[0165] In some embodiments of this application, node performance metrics include at least central processing unit resource consumption and response latency.
[0166] In some embodiments of this application, a computer-readable storage medium is provided, storing a computer program that is loaded by a processor, causing the processor to perform the following steps:
[0167] Obtain basic configuration parameters and deploy the service mesh based on these parameters;
[0168] Perform stress tests on the service mesh to obtain its data query rate;
[0169] Obtain node performance metrics information of proxy components in the service mesh during stress testing;
[0170] Adjust the node parameters of the proxy components in the service mesh based on data query rate and node performance metrics.
[0171] In some embodiments of this application, when the computer program is executed by the processor, it further implements the following steps: obtaining the baseline query rate corresponding to the service mesh and the baseline performance index information corresponding to the proxy component in the service mesh; if the data query rate is less than the baseline query rate, adjusting the node parameters of the proxy component in the service mesh according to the node performance index information and the baseline performance index information until the data query rate of the service mesh is greater than the preset target query rate.
[0172] In some embodiments of this application, when the computer program is executed by the processor, it further performs the following steps: obtaining the component type of each proxy component in the service mesh; comparing the node performance index information and the benchmark performance index information corresponding to each component type to obtain the target component type whose benchmark performance index is greater than the node performance index information; adjusting the node parameters of the target proxy component corresponding to the target component type until the data query rate of the service mesh is greater than the preset target query rate.
[0173] In some embodiments of this application, the node parameters include the number of nodes and the number of container groups; when the computer program is executed by the processor, it also implements the following steps: increasing the number of nodes or the number of container groups of the target proxy component corresponding to the target component type by a preset growth step.
[0174] In some embodiments of this application, when the computer program is executed by the processor, it further performs the following steps: obtaining node parameters of the proxy component in the service mesh; querying a preset benchmark parameter data table based on the node parameters to obtain the benchmark query rate corresponding to the service mesh and the benchmark performance index information corresponding to the proxy component in the service mesh; wherein, the preset benchmark parameter data table includes the data query rate of the basic service mesh of different network architectures and the performance index information of the proxy component in the basic service mesh.
[0175] In some embodiments of this application, when the computer program is executed by the processor, it further implements the following steps: constructing a baseline service mesh corresponding to the service mesh based on the node parameters of the proxy components in the service mesh; performing stress testing on the baseline service mesh to obtain the baseline query rate and the baseline performance index information corresponding to the proxy components in the service mesh.
[0176] In some embodiments of this application, the node parameters include the number of nodes and the number of container groups; when the computer program is executed by the processor, it also performs the following steps: sequentially determining various proxy components as target proxy components; increasing the number of container groups of the target proxy components in the service mesh to obtain a baseline service mesh; or increasing the number of nodes of the target proxy components in the service mesh to obtain a baseline service mesh.
[0177] In some embodiments of this application, the proxy components in the service mesh include an ingress gateway proxy component, an egress gateway proxy component, and a service proxy component.
[0178] In some embodiments of this application, node performance metrics include at least central processing unit resource consumption and response latency.
[0179] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the methods described above. Any references to memory, storage, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, or optical storage, etc. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc.
[0180] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0181] The above provides a detailed description of a service mesh architecture optimization method, apparatus, computer device, and storage medium provided in the embodiments of this application. Specific examples have been used to illustrate the principles and implementation methods of the present invention. The descriptions of the above embodiments are only for the purpose of helping to understand the method and core ideas of the present invention. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of the present invention. Therefore, the content of this specification should not be construed as a limitation of the present invention.
Claims
1. A service mesh architecture optimization method, characterized in that, Applied to a service mesh, wherein the service mesh includes at least two types of proxy components, and different types of proxy components are deployed on different nodes; the method includes: Obtain basic configuration parameters and deploy the service mesh based on the basic configuration parameters; The service mesh was stress-tested to obtain its data query rate. Obtain node performance metrics information of the proxy components in the service mesh during the stress test; Obtain the baseline query rate corresponding to the service mesh, and the baseline performance index information of the proxy components in the service mesh; If the data query rate is less than the baseline query rate, obtain the component type of each proxy component in the service mesh; Compare the node performance index information and the benchmark performance index information corresponding to each component type to obtain the target component type whose benchmark performance index is greater than the node performance index information. The number of nodes or container groups of the target proxy component corresponding to the target component type is increased by a preset growth step until the data query rate of the service mesh is greater than the preset target query rate.
2. The method according to claim 1, characterized in that, The step of obtaining the baseline query rate corresponding to the service mesh and the baseline performance metric information corresponding to the proxy components in the service mesh includes: Obtain the node parameters of the proxy components in the service mesh; Based on the node parameters, query the preset benchmark parameter data table to obtain the benchmark query rate corresponding to the service mesh and the benchmark performance index information corresponding to the proxy components in the service mesh; The preset benchmark parameter data table includes the data query rate of the basic service mesh for different network architectures, as well as the performance index information of the proxy components in the basic service mesh.
3. The method according to claim 1, characterized in that, The step of obtaining the baseline query rate corresponding to the service mesh and the baseline performance metric information corresponding to the proxy components in the service mesh includes: Based on the node parameters of the proxy components in the service mesh, a baseline service mesh corresponding to the service mesh is constructed; The benchmark service mesh is subjected to stress testing to obtain the benchmark query rate and the benchmark performance index information corresponding to the proxy components in the service mesh.
4. The method according to claim 3, characterized in that, The node parameters include the number of nodes and the number of container groups; The step of constructing a baseline service mesh corresponding to the service mesh based on the node parameters of the proxy components in the service mesh includes: Each type of proxy component is sequentially identified as the target proxy component; Increase the number of container groups of the target proxy component in the service mesh to obtain a baseline service mesh; or increase the number of nodes of the target proxy component in the service mesh to obtain a baseline service mesh.
5. The method according to claim 1, characterized in that, The proxy components in the service mesh include ingress gateway proxy components, egress gateway proxy components, and service proxy components.
6. The method according to any one of claims 1 to 5, characterized in that, The node performance metrics include at least the CPU resource consumption and response latency.
7. A service mesh architecture optimization apparatus, characterized in that, The device is applied to a service mesh, which includes at least two types of proxy components, with different types of proxy components deployed on different nodes; the device includes: The environment deployment module is used to obtain basic configuration parameters and deploy the service mesh based on the basic configuration parameters. The stress testing module is used to stress test the service mesh and obtain the data query rate of the service mesh; The performance metric acquisition module is used to acquire node performance metric information of the proxy components in the service mesh during the stress test. The service mesh tuning module is used for: Obtain the baseline query rate corresponding to the service mesh, and the baseline performance index information of the proxy components in the service mesh; If the data query rate is less than the baseline query rate, obtain the component type of each proxy component in the service mesh; Compare the node performance index information and the benchmark performance index information corresponding to each component type to obtain the target component type whose benchmark performance index is greater than the node performance index information. The number of nodes or container groups of the target proxy component corresponding to the target component type is increased by a preset growth step until the data query rate of the service mesh is greater than the preset target query rate.
8. A computer device, characterized in that, The computer device includes: One or more processors; Memory; and One or more applications, wherein the one or more applications are stored in the memory and configured to be executed by the processor to implement the service mesh architecture optimization method of any one of claims 1 to 6.
9. A computer-readable storage medium, characterized in that, It stores a computer program, which is loaded by a processor to perform the steps in the service mesh architecture optimization method according to any one of claims 1 to 6.
Citation Information
Patent Citations
Deployment method and system of cluster environment, computer equipment and storage medium
CN114095498A