All Products
Search
Document Center

Alibaba Cloud Service Mesh:Gunakan ASMGlobalRateLimiter untuk mengonfigurasi pembatasan laju global terhadap lalu lintas masuk ke layanan aplikasi

Last Updated:Aug 30, 2026

Pembatasan laju membatasi jumlah permintaan yang dapat dikirim klien ke server dalam periode tertentu, misalnya 300 per menit atau 10 per detik. Gunakan ASMGlobalRateLimiter di Alibaba Cloud Service Mesh (ASM) untuk menerapkan batas laju global terhadap lalu lintas masuk ke layanan aplikasi dengan sidecar yang telah disuntikkan.

Proxy Envoy menerapkan pembatasan laju melalui dua pendekatan: pembatasan laju global dan pembatasan laju lokal. Topik ini hanya membahas pembatasan laju global. Untuk konsep pembatasan laju dan petunjuk mengenai pembatasan laju lokal, lihat Configure local rate limiting in the Traffic Management Center.

Dua skenario dalam topik ini menunjukkan tingkat granularitas yang dapat diterapkan oleh batas laju global pada layanan aplikasi: semua permintaan pada port layanan (Skenario 1), atau hanya permintaan yang mengakses path tertentu pada port tersebut (Skenario 2). Kedua skenario menggunakan nama resource ASMGlobalRateLimiter yang sama (global-svc-test) dan ConfigMap yang sama (ratelimit-config).

Prasyarat

Catatan

ASM mendukung pengonfigurasian pembatasan laju global untuk lalu lintas masuk ke gerbang masuk dan ke layanan aplikasi dengan sidecar yang telah disuntikkan mulai dari versi 1.18.0.131. Field limit_overrides, yang digunakan Skenario 2 untuk membatasi laju pada path tertentu, hanya didukung oleh instans ASM versi 1.19.0 atau lebih baru.

Terapkan layanan pembatas laju

Pembatasan laju global hanya berlaku setelah layanan pembatas laju berjalan di kluster pada bidang data. Terapkan layanan pembatas laju dan layanan Redis yang menjadi dependensinya sebelum Anda mengonfigurasi aturan pembatasan laju.

  1. Buat file bernama ratelimit-svc.yaml dengan konten berikut.

    apiVersion: v1
    kind: ServiceAccount
    metadata:
      name: redis
    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: redis
      labels:
        app: redis
    spec:
      ports:
      - name: redis
        port: 6379
      selector:
        app: redis
    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: redis
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: redis
      template:
       metadata:
          labels:
            app: redis
            sidecar.istio.io/inject: "false"
       spec:
          containers:
          - image: redis:alpine
            imagePullPolicy: Always
            name: redis
            ports:
            - name: redis
              containerPort: 6379
          restartPolicy: Always
          serviceAccountName: redis
    ---
    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: ratelimit-config
    data:
      config.yaml: |
        {}
    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: ratelimit
      labels:
        app: ratelimit
    spec:
      ports:
      - name: http-port
        port: 8080
        targetPort: 8080
        protocol: TCP
      - name: grpc-port
        port: 8081
        targetPort: 8081
        protocol: TCP
      - name: http-debug
        port: 6070
        targetPort: 6070
        protocol: TCP
      selector:
        app: ratelimit
    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: ratelimit
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: ratelimit
      strategy:
        type: Recreate
      template:
        metadata:
          labels:
            app: ratelimit
            sidecar.istio.io/inject: "false"
        spec:
          containers:
            # Latest image from https://hub.docker.com/r/envoyproxy/ratelimit/tags
          - image: envoyproxy/ratelimit:e059638d 
            imagePullPolicy: Always
            name: ratelimit
            command: ["/bin/ratelimit"]
            env:
            - name: LOG_LEVEL
              value: debug
            - name: REDIS_SOCKET_TYPE
              value: tcp
            - name: REDIS_URL
              value: redis:6379
            - name: USE_STATSD
              value: "false"
            - name: RUNTIME_ROOT
              value: /data
            - name: RUNTIME_SUBDIRECTORY
              value: ratelimit
            - name: RUNTIME_WATCH_ROOT
              value: "false"
            - name: RUNTIME_IGNOREDOTFILES
              value: "true"
            ports:
            - containerPort: 8080
            - containerPort: 8081
            - containerPort: 6070
            volumeMounts:
            - name: config-volume
              # $RUNTIME_ROOT/$RUNTIME_SUBDIRECTORY/$RUNTIME_APPDIRECTORY/config.yaml
              mountPath: /data/ratelimit/config
          volumes:
          - name: config-volume
            configMap:
              name: ratelimit-config
  2. Dalam konteks kubeconfig kluster ACK, jalankan perintah berikut untuk membuat layanan pembatas laju dan layanan Redis yang menjadi dependensinya di kluster.

    kubectl apply -f ratelimit-svc.yaml

Gunakan layanan pembatas laju yang dikelola ASM (opsional)

Catatan

Fitur ini hanya didukung oleh instans ASM versi 1.25 atau lebih baru. Jika instans ASM Anda menggunakan versi sebelum 1.25, lanjutkan dengan menerapkan layanan pembatas laju seperti yang dijelaskan sebelumnya dan perbarui ConfigMap yang digunakan oleh layanan pembatas laju secara manual.

Di ASM 1.25 dan versi selanjutnya, Anda dapat menggunakan ASMMeshConfig untuk mengaktifkan layanan pembatas laju yang dikelola ASM. Dengan metode ini, Anda tidak perlu mengonfigurasi rateLimitService saat membuat ASMGlobalRateLimiter. ASM secara otomatis menggunakan layanan pembatas laju yang dikirimkan ke kluster pada bidang data dan memperbarui ConfigMap yang digunakan oleh layanan pembatas laju berdasarkan aturan pembatasan laju global.

  1. Siapkan Redis yang menjadi dependensi layanan pembatas laju. ASM menerapkan layanan pembatas laju tetapi tidak menerapkan Redis. Anda dapat terus menggunakan Redis yang telah diterapkan sebelumnya atau menggunakan instans Redis yang sudah ada. Untuk terus menggunakan ratelimit-svc.yaml dari langkah sebelumnya, terapkan hanya ServiceAccount, Service, dan Deployment Redis di dalamnya. Jangan terapkan ConfigMap ratelimit-config, Service ratelimit, atau Deployment ratelimit.

  2. Dalam konteks kubeconfig instans ASM, jalankan perintah berikut untuk memverifikasi bahwa ASMMeshConfig/default ada.

    kubectl get asmmeshconfig default

    Buat file bernama ratelimit-service-patch.yaml. Contoh berikut menggunakan Redis yang diterapkan di namespace default pada langkah sebelumnya.

    spec:
      rateLimitService:
        enabled: true
        replicas: 1
        redis:
          type: single
          url: redis.default.svc.cluster.local:6379

    Jalankan perintah berikut untuk mengaktifkan layanan pembatas laju dengan merge patch agar tidak menimpa pengaturan lain di ASMMeshConfig/default.

    kubectl patch asmmeshconfig default \
      --type=merge \
      --patch-file ratelimit-service-patch.yaml

    Dalam konfigurasi ini, enabled harus diatur ke true. replicas menentukan jumlah replika layanan pembatas laju. redis.type mendukung single, cluster, dan sentinel. redis.url harus berupa alamat Redis yang dapat diakses dari layanan pembatas laju di kluster pada bidang data.

  3. Saat membuat ASMGlobalRateLimiter dalam skenario berikut, hapus seluruh field spec.rateLimitService. Jangan konfigurasi objek kosong seperti rateLimitService: {}. Biarkan pengaturan aturan pembatasan laju lainnya tetap tidak berubah.

    Jika Anda menghilangkan spec.rateLimitService, ASM secara default menggunakan ratelimit.istio-system.svc.cluster.local:8081 dan secara otomatis membuat atau memperbarui ConfigMap istio-system/ratelimit-service-config di kluster ACK. ConfigMap ini dikelola oleh ASM. Jangan ubah secara manual.

    Dalam konteks kubeconfig kluster ACK, jalankan perintah berikut untuk melihat konfigurasi pembatasan laju yang dihasilkan secara otomatis.

    kubectl -n istio-system get configmap ratelimit-service-config -o yaml
Catatan

Skenario berikut masih menunjukkan metode penerapan manual yang kompatibel dengan semua versi ASM. Jika Anda menggunakan layanan pembatas laju yang dikelola ASM, hilangkan rateLimitService seperti yang dijelaskan dalam bagian ini dan lewati langkah-langkah yang menyalin konfigurasi dari field status serta memperbarui ConfigMap secara manual. Semua pengaturan aturan pembatasan laju lainnya dan metode verifikasi tetap tidak berubah.

Skenario 1: Konfigurasikan pembatasan laju global untuk port layanan

Terapkan batas laju pada port 8000 layanan httpbin. Setelah Anda membuat aturan pembatasan laju, batas laju tersebut berlaku untuk semua permintaan yang dikirim ke port 8000 layanan httpbin.

  1. Buat file bernama global-ratelimit-svc.yaml dengan konten berikut.

    apiVersion: istio.alibabacloud.com/v1beta1
    kind: ASMGlobalRateLimiter
    metadata:
      name: global-svc-test
      namespace: default
    spec:
      workloadSelector:
        labels:
          app: httpbin
      rateLimitService:
        host: ratelimit.default.svc.cluster.local
        port: 8081
        timeout:
          seconds: 5
      isGateway: false
      configs:
      - name: httpbin
        limit:
          unit: MINUTE
          quota: 1
        match:
          vhost:
            name: '*'
            port: 8000

    Tabel berikut menjelaskan beberapa field tersebut. Untuk deskripsi semua field, lihat ASMGlobalRateLimiter fields.

    Parameter

    Deskripsi

    workloadSelector

    Mencocokkan workload tempat pembatasan laju berlaku. Dalam skenario ini, pembatasan laju global berlaku pada workload layanan httpbin, sehingga nilainya diatur ke app: httpbin.

    isGateway

    Menentukan apakah konfigurasi berlaku untuk gateway. Dalam contoh ini, nilainya diatur ke false.

    rateLimitService

    Nama domain, port, dan pengaturan timeout koneksi layanan pembatas laju. Untuk layanan pembatas laju yang diterapkan di Deploy the rate-limiting service, gunakan konfigurasi yang mengikuti tabel ini.

    limit

    Parameter pembatasan laju yang berlaku. unit menentukan satuan waktu deteksi pembatasan laju, dan quota menentukan jumlah total permintaan yang diizinkan dalam satu satuan waktu. Contoh ini mengatur unit ke MINUTE dan quota ke 1, yang berarti hanya satu permintaan per menit yang dapat dikirim pada rute yang cocok. Permintaan berlebih akan dibatasi lajunya.

    vhost

    Pengaturan nama domain dan rute yang dicocokkan oleh pembatasan laju. Saat konfigurasi berlaku pada layanan aplikasi, atur name ke '*' dan atur port ke port Service layanan tersebut.

    Gunakan konfigurasi rateLimitService berikut:

    host: ratelimit.default.svc.cluster.local
    port: 8081
    timeout:
      seconds: 5
  2. Dalam konteks kubeconfig instans ASM, jalankan perintah berikut untuk membuat aturan pembatasan laju global yang berlaku pada lalu lintas masuk ke layanan aplikasi httpbin.

    kubectl apply -f global-ratelimit-svc.yaml
  3. Jalankan perintah berikut untuk mendapatkan konfigurasi yang telah direkonsiliasi dari aturan pembatasan laju global.

    kubectl get asmglobalratelimiter global-svc-test -o yaml
    apiVersion: istio.alibabacloud.com/v1
    kind: ASMGlobalRateLimiter
    metadata:
      name: global-svc-test
      namespace: default
    spec:
      configs:
      - limit:
          quota: 1
          unit: MINUTE
        match:
          vhost:
            name: '*'
            port: 8000
        name: httpbin
      isGateway: false
      rateLimitService:
        host: ratelimit.default.svc.cluster.local
        port: 8081
        timeout:
          seconds: 5
      workloadSelector:
        labels:
          app: httpbin
    status:
      config.yaml: |
        descriptors:
        - key: generic_key
          rate_limit:
            requests_per_unit: 1
            unit: MINUTE
          value: RateLimit[global-svc-test.default]-Id[3833670472]
        domain: ratelimit.default.svc.cluster.local
      message: ok
      status: successful
  4. Buat file bernama ratelimit-config.yaml untuk menyimpan konfigurasi layanan pembatas laju global. Tempel string di field config.yaml di bawah field status resource ASMGlobalRateLimiter, apa adanya, ke field config.yaml dengan nama yang sama di bawah data dalam ConfigMap. ConfigMap ini memiliki nama yang sama dengan ConfigMap ratelimit-config di ratelimit-svc.yaml, sehingga string yang ditempelkan menggantikan konfigurasi awal kosong ({}).

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: ratelimit-config
    data:
      config.yaml: |
        descriptors:
        - key: generic_key
          rate_limit:
            requests_per_unit: 1
            unit: MINUTE
          value: RateLimit[global-svc-test.default]-Id[3833670472]
        domain: ratelimit.default.svc.cluster.local

    Nilai-nilai dalam contoh ini berasal dari output yang diharapkan pada langkah sebelumnya. Gunakan nilai yang dikembalikan untuk resource ASMGlobalRateLimiter Anda sendiri, termasuk nilai Id di value.

  5. Dalam konteks kubeconfig kluster ACK, jalankan perintah berikut untuk memperbarui konfigurasi layanan pembatas laju global di kluster.

    kubectl apply -f ratelimit-config.yaml
  6. Jalankan perintah berikut untuk memulai sesi bash di aplikasi sleep.

    kubectl exec -it deploy/sleep -- sh
  7. Jalankan perintah berikut untuk mengakses layanan httpbin dua kali berturut-turut.

    curl httpbin:8000/get -v
    curl httpbin:8000/get -v

    Permintaan pertama diizinkan. Output berikut dikembalikan untuk permintaan kedua:

    < HTTP/1.1 429
    < x-envoy-ratelimited: true
    < x-ratelimit-limit: 1, 1;w=60
    < x-ratelimit-remaining: 0
    < x-ratelimit-reset: 5
    < date: Thu, 26 Oct 2023 04:23:54 GMT
    < server: envoy
    < content-length: 0
    < x-envoy-upstream-service-time: 2
    < 
    * Connection #0 to host httpbin left intact

    Konfigurasi pembatasan laju global hanya mengizinkan satu permintaan ke layanan httpbin dalam satu menit, sehingga permintaan kedua dibatasi lajunya. Pembatasan laju global kini berlaku pada lalu lintas masuk ke port layanan httpbin.

Skenario 2: Konfigurasikan pembatasan laju global untuk path tertentu pada port layanan

Terapkan batas laju pada port 8000 layanan httpbin, dan batasi batas laju tersebut sehingga hanya berlaku pada permintaan yang mengakses path /headers. Setelah Anda membuat aturan pembatasan laju, batas laju tersebut berlaku untuk semua permintaan yang dikirim ke port 8000 layanan httpbin dan mengakses path /headers.

  1. Buat file bernama global-ratelimit-svc.yaml dengan konten yang sesuai versi ASM Anda.

    YAML untuk versi ASM sebelum 1.19.0

    apiVersion: istio.alibabacloud.com/v1beta1
    kind: ASMGlobalRateLimiter
    metadata:
      name: global-svc-test
      namespace: default
    spec:
      workloadSelector:
        labels:
          app: httpbin
      rateLimitService:
        host: ratelimit.default.svc.cluster.local
        port: 8081
        timeout:
          seconds: 5
      isGateway: false
      configs:
      - name: httpbin
        limit:
          unit: MINUTE
          quota: 1
        match:
          vhost:
            name: '*'
            port: 8000
            route:
              header_match:
              - name: ":path"
                prefix_match: "/headers"

    YAML untuk versi ASM 1.19.0 atau lebih baru

    apiVersion: istio.alibabacloud.com/v1beta1
    kind: ASMGlobalRateLimiter
    metadata:
      name: global-svc-test
      namespace: default
    spec:
      workloadSelector:
        labels:
          app: httpbin
      rateLimitService:
        host: ratelimit.default.svc.cluster.local
        port: 8081
        timeout:
          seconds: 5
      isGateway: false
      configs:
      - name: httpbin
        limit:
          unit: SECOND
          quota: 100000
        match:
          vhost:
            name: '*'
            port: 8000
        limit_overrides:
        - request_match:
            header_match:
            - name: ":path"
              prefix_match: "/headers"
          limit:
            unit: MINUTE
            quota: 1

    Tabel berikut menjelaskan beberapa field tersebut. Untuk deskripsi semua field, lihat ASMGlobalRateLimiter fields.

    Parameter

    Deskripsi

    workloadSelector

    Mencocokkan workload tempat pembatasan laju berlaku. Dalam skenario ini, pembatasan laju global berlaku pada workload layanan httpbin, sehingga nilainya diatur ke app: httpbin.

    isGateway

    Menentukan apakah konfigurasi berlaku untuk gateway. Dalam contoh ini, nilainya diatur ke false.

    rateLimitService

    Nama domain, port, dan pengaturan timeout koneksi layanan pembatas laju. Untuk layanan pembatas laju yang diterapkan di Deploy the rate-limiting service, gunakan konfigurasi yang mengikuti tabel ini.

    limit

    Parameter pembatasan laju yang berlaku. unit menentukan satuan waktu deteksi pembatasan laju, dan quota menentukan jumlah total permintaan yang diizinkan dalam satu satuan waktu. Untuk instans ASM versi sebelum 1.19.0, contoh ini mengatur unit ke MINUTE dan quota ke 1, yang berarti hanya satu permintaan per menit yang dapat dikirim pada rute yang cocok, dan permintaan berlebih akan dibatasi lajunya. Untuk instans ASM versi 1.19.0 atau lebih baru, parameter pembatasan laju diatur ke 100.000 permintaan per detik, yang kira-kira setara dengan tanpa pembatasan laju, karena batas laju untuk permintaan yang memenuhi kondisi tertentu berlaku di field limit_overrides.

    vhost

    Pengaturan nama domain dan rute yang dicocokkan oleh pembatasan laju. Saat konfigurasi berlaku pada layanan aplikasi, atur name ke '*' dan atur port ke port Service layanan tersebut. Untuk instans ASM versi sebelum 1.19.0, Anda juga dapat mengonfigurasi aturan pencocokan header untuk permintaan di route. Contoh ini mencocokkan header khusus bernama :path, yang mencocokkan path permintaan. Dengan kata lain, aturan ini mencocokkan semua permintaan yang path-nya dimulai dengan /headers. Untuk instans ASM versi 1.19.0 atau lebih baru, aturan pencocokan header untuk permintaan dipindahkan dari route ke field limit_overrides.

    limit_overrides

    Konfigurasi penggantian batas laju, yang hanya didukung oleh instans ASM versi 1.19.0 atau lebih baru. Fitur ini mendukung pencocokan atribut berbeda dari permintaan dan menerapkan konfigurasi pembatasan laju terpisah pada permintaan spesifik yang cocok. Dalam contoh ini, field limit_overrides menentukan pencocokan header khusus :path, yang mencocokkan path permintaan. Dengan kata lain, penggantian ini mencocokkan semua permintaan yang path-nya dimulai dengan /headers.

    Gunakan konfigurasi rateLimitService berikut:

    host: ratelimit.default.svc.cluster.local
    port: 8081
    timeout:
      seconds: 5
  2. Dalam konteks kubeconfig instans ASM, jalankan perintah berikut untuk membuat aturan pembatasan laju global yang berlaku pada lalu lintas masuk ke layanan aplikasi httpbin.

    kubectl apply -f global-ratelimit-svc.yaml
  3. Jalankan perintah berikut untuk mendapatkan konfigurasi yang telah direkonsiliasi dari aturan pembatasan laju global.

    kubectl get asmglobalratelimiter global-svc-test -o yaml
    apiVersion: istio.alibabacloud.com/v1
    kind: ASMGlobalRateLimiter
    metadata:
      name: global-svc-test
      namespace: default
    spec:
      configs:
      - limit:
          quota: 100000
          unit: SECOND
        limit_overrides:
        - limit:
            quota: 1
            unit: MINUTE
          request_match:
            header_match:
            - name: :path
              prefix_match: /headers
        match:
          vhost:
            name: '*'
            port: 8000
        name: httpbin
      isGateway: false
      rateLimitService:
        host: ratelimit.default.svc.cluster.local
        port: 8081
        timeout:
          seconds: 5
      workloadSelector:
        labels:
          app: httpbin
    status:
      config.yaml: |
        descriptors:
        - descriptors:
          - key: header_match
            rate_limit:
              requests_per_unit: 1
              unit: MINUTE
            value: RateLimit[global-svc-test.default]-Id[2613586978]
          key: generic_key
          rate_limit:
            requests_per_unit: 100000
            unit: SECOND
          value: RateLimit[global-svc-test.default]-Id[2613586978]
        domain: ratelimit.default.svc.cluster.local
      message: ok
      status: successful
  4. Buat file bernama ratelimit-config.yaml untuk menyimpan konfigurasi layanan pembatas laju global. Tempel string di field config.yaml di bawah field status resource ASMGlobalRateLimiter, apa adanya, ke field config.yaml dengan nama yang sama di bawah data dalam ConfigMap. ConfigMap ini memiliki nama yang sama dengan ConfigMap ratelimit-config di ratelimit-svc.yaml, sehingga string yang ditempelkan menggantikan konfigurasi awal kosong ({}).

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: ratelimit-config
    data:
      config.yaml: |
        descriptors:
        - descriptors:
          - key: header_match
            rate_limit:
              requests_per_unit: 1
              unit: MINUTE
            value: RateLimit[global-svc-test.default]-Id[2613586978]
          key: generic_key
          rate_limit:
            requests_per_unit: 100000
            unit: SECOND
          value: RateLimit[global-svc-test.default]-Id[2613586978]
        domain: ratelimit.default.svc.cluster.local

    Nilai-nilai dalam contoh ini berasal dari output yang diharapkan pada langkah sebelumnya. Gunakan nilai yang dikembalikan untuk resource ASMGlobalRateLimiter Anda sendiri, termasuk nilai Id di value.

  5. Dalam konteks kubeconfig kluster ACK, jalankan perintah berikut untuk memperbarui konfigurasi layanan pembatas laju global di kluster.

    kubectl apply -f ratelimit-config.yaml
  6. Jalankan perintah berikut untuk memulai sesi bash di aplikasi sleep.

    kubectl exec -it deploy/sleep -- sh
  7. Jalankan perintah berikut untuk mengakses path /headers layanan httpbin dua kali berturut-turut.

    curl httpbin:8000/headers -v
    curl httpbin:8000/headers -v

    Permintaan pertama diizinkan. Output berikut dikembalikan untuk permintaan kedua:

    < HTTP/1.1 429 Too Many Requests
    < x-envoy-ratelimited: true
    < x-ratelimit-limit: 1, 1;w=60
    < x-ratelimit-remaining: 0
    < x-ratelimit-reset: 5
    < date: Thu, 26 Oct 2023 04:23:54 GMT
    < server: envoy
    < content-length: 0
    < x-envoy-upstream-service-time: 2
    < 
    * Connection #0 to host httpbin left intact

    Konfigurasi pembatasan laju global hanya mengizinkan satu permintaan ke path /headers layanan httpbin dalam satu menit, sehingga permintaan kedua dibatasi lajunya. Pembatasan laju global kini berlaku pada lalu lintas masuk ke path /headers layanan httpbin.

  8. Jalankan perintah berikut untuk mengakses path /get layanan httpbin.

    curl httpbin:8000/get -v

    Output yang diharapkan:

    *   Trying 192.168.243.21:8000...
    * Connected to httpbin (192.168.243.21) port 8000 (#0)
    > GET /get HTTP/1.1
    > Host: httpbin:8000
    > User-Agent: curl/8.1.2
    > Accept: */*
    >
    < HTTP/1.1 200 OK
    < server: envoy
    < date: Thu, 11 Jan 2024 06:25:09 GMT
    < content-type: application/json
    < content-length: 431
    < access-control-allow-origin: *
    < access-control-allow-credentials: true
    < x-envoy-upstream-service-time: 7
    <
    {
      "args": {},
      "headers": {
        "Accept": "*/*",
        "Host": "httpbin:8000",
        "User-Agent": "curl/8.1.2",
        "X-Envoy-Attempt-Count": "1",
        "X-Forwarded-Client-Cert": "By=spiffe://cluster.local/ns/default/sa/httpbin;Hash=be10819991ba1a354a89e68b3bed1553c12a4fba8b65fbe0f16299d552680b29;Subject=\"\";URI=spiffe://cluster.local/ns/default/sa/sleep"
      },
      "origin": "127.0.0.6",
      "url": "http://httpbin:8000/get"
    }
    * Connection #0 to host httpbin left intact

    Permintaan yang dikirim ke path lain layanan httpbin tidak terpengaruh oleh konfigurasi pembatasan laju global dan masih dapat diakses secara normal.

Referensi