性能指南

本指南描述了 Connectors 系统在负载下的性能表现特征,并针对高并发环境提供了相关建议。

INFO

以下观察结果来自内部测试。实际性能可能会因您的集群资源和工作负载而有所不同。

  • Connector 状态更新:同时管理 1,000 个 connector 时无明显延迟。
  • 正向代理(HTTPS):在 50 个并发请求时引入少量额外延迟,随着并发增加延迟逐渐上升。
  • 正向代理(HTTP):在 50 个并发请求时引入少量额外延迟,随着并发增加延迟缓慢上升。
  • 反向代理:在 50 个并发请求时引入极少额外延迟,负载增加时延迟缓慢增长。
  • 所有代理模式在 100 个并发请求时:延迟有所增加,但系统保持稳定,无错误或崩溃。
  • OCI/Harbor 镜像推送/拉取(HTTP 正向代理):在广泛的并发操作范围内未观察到显著性能下降;已通过 Harbor 官方基准测试工具验证。

性能配置

如果您在高负载下遇到代理请求缓慢或偶发失败,请应用以下配置以提升吞吐量。

  • 扩展 connectors-proxyconnectors-controller-managerconnectors-api 及插件组件的副本数
  • 增加 -kube-api-qps-kube-api-burst,以提高对 Kubernetes API 的请求速率限制。

ConnectorsCore 和 ConnectorsOCI 的示例配置:

apiVersion: operator.connectors.alauda.io/v1alpha1
kind: ConnectorsCore
metadata:
  name: connectors-core
  namespace: connectors-system
spec:
  workloads:
  - name: connectors-proxy
    replicas: 2
    template:
      spec:
        containers:
        - name: proxy
          args:
          - --metrics-bind-address=:8443
          - -kube-api-qps=60
          - -kube-api-burst=80
          resources:
            requests:
              cpu: 100m
              memory: 100Mi
            limits:
              cpu: 250m
              memory: 250Mi
  - name: connectors-controller-manager
    replicas: 2
  - name: connectors-api
    replicas: 2
---
apiVersion: operator.connectors.alauda.io/v1alpha1
kind: ConnectorsOCI
metadata:
  name: connectors-oci
  namespace: connectors-system
spec:
  workloads:
  - name: connectors-oci-plugin
    replicas: 2
    template:
      spec:
        containers:
        - name: plugin
          args:
          - -metrics-bind-address=:8082
          - -kube-api-qps=60
          - -kube-api-burst=80