All Products
Search
Document Center

Alibaba Cloud Service Mesh:Aktifkan kompresi untuk gerbang masuk ASM

Last Updated:Jun 22, 2026

Dengan mengaktifkan kompresi pada gerbang masuk ASM, respons HTTP akan dikompresi sehingga meningkatkan kecepatan respons dan mengurangi penggunaan bandwidth. Topik ini menjelaskan cara mengaktifkan kompresi untuk gerbang masuk ASM.

Prasyarat

Prosedur

  1. Terapkan Nginx di kluster ACK.

    1. Buat file bernama nginx.yaml dengan konten berikut.

      Nginx.yaml

      apiVersion: apps/v1 # for versions before 1.9.0 use apps/v1beta2
      kind: Deployment
      metadata:
        name: nginx-deployment
      spec:
        selector:
          matchLabels:
            app: nginx
        replicas: 1
        template:
          metadata:
            labels:
              app: nginx
              sidecarset-injected: "true"
          spec:
            containers:
            - name: nginx
              image: nginx:1.14.2
              ports:
              - containerPort: 80
      ---
      apiVersion: v1
      kind: Service
      metadata:
        name: nginx
      spec:
        ports:
          - name: http
            port: 80
            protocol: TCP
            targetPort: 80
        selector:
          app: nginx
        type: ClusterIP
    2. Jalankan perintah berikut untuk menerapkan aplikasi Nginx.

      kubectl apply -f nginx.yaml
  2. Buat VirtualService dan Gateway.

    1. Masuk ke Konsol ASM. Di panel navigasi kiri, pilih Service Mesh > Mesh Management.

    2. Pada halaman Mesh Management, temukan instans ASM yang ingin Anda konfigurasi. Klik nama instans ASM atau klik Manage di kolom Actions.

    3. Di halaman detail instans ASM, pilih Traffic Management Center > VirtualService di panel navigasi kiri. Di halaman yang muncul, klik Create from YAML.

    4. Di halaman Create, pilih Namespaces yang dituju, tempel konten berikut ke editor kode, lalu klik Create.

      apiVersion: networking.istio.io/v1beta1
      kind: VirtualService
      metadata:
        name: nginx
        namespace: default
      spec:
        gateways:
          - nginx-gateway
        hosts:
          - '*'
        http:
          - match:
              - uri:
                  exact: /
            route:
              - destination:
                  host: nginx
                  port:
                    number: 80
    5. Di halaman detail instans ASM, pilih ASM Gateways > Gateway di panel navigasi kiri. Di halaman yang muncul, klik Create from YAML.

    6. Di halaman Create, pilih Namespaces yang dituju, tempel konten berikut ke editor kode, lalu klik Create.

      apiVersion: networking.istio.io/v1beta1
      kind: Gateway
      metadata:
        name: nginx-gateway
        namespace: default
      spec:
        selector:
          istio: ingressgateway
        servers:
          - hosts:
              - '*'
            port:
              name: http
              number: 80
              protocol: HTTP
  3. Aktifkan kompresi untuk gerbang masuk ASM.

    1. Di panel navigasi kiri, pilih ASM Gateways > Ingress Gateway.

    2. Di halaman Ingress Gateway, temukan ingressgateway dan klik View YAML di kolom Actions.

    3. Di kotak dialog Edit, tambahkan konten berikut, lalu klik OK.

      compression:
        content_type:
          - text/html
        enabled: true
        gzip:
          memory_level: 9
        remove_accept_encoding_header: true

      Tabel berikut menjelaskan bidang-bidang kompresi utama. Untuk informasi selengkapnya tentang bidang kompresi, lihat Kelola gerbang masuk menggunakan Kubernetes API.

      Parameter

      Deskripsi

      compression.content_type

      Daftar tipe konten yang akan dikompresi.

      compression.enabled

      Menentukan apakah kompresi diaktifkan untuk gerbang masuk.

      compression.gzip

      Tingkat memori untuk kompresi Gzip.

      compression.remove_accept_encoding_header

      • Jika diatur ke true, gerbang masuk akan menghapus header Accept-Encoding dari permintaan klien sebelum meneruskannya ke layanan hulu.

      • Jika diatur ke false, gerbang masuk akan mempertahankan header Accept-Encoding dalam permintaan klien sebelum meneruskannya ke layanan hulu.

Verifikasi kompresi

  1. Buka developer tools browser Anda. Panduan ini menggunakan Google Chrome sebagai contoh.

    1. Di pojok kanan atas Google Chrome, klik ikon 设置.

    2. Pilih More tools > Developer tools.

  2. Akses aplikasi Nginx.

    1. Masuk ke Konsol ACK atau . Di panel navigasi kiri, klik Clusters.

    2. Di halaman Clusters, klik nama kluster Anda. Di panel navigasi kiri, klik Network > Services.

    3. Di halaman Services, atur Namespace ke istio-system, lalu temukan alamat IP layanan istio-ingressgateway (port 80) di kolom External IP.

    4. Di bilah alamat browser Anda, masukkan alamat IP eksternal layanan istio-ingressgateway.

      Anda dapat melihat bahwa Content-Encoding dalam respons adalah gzip, yang menunjukkan bahwa kompresi telah berhasil diaktifkan untuk gerbang masuk ASM. Di panel Network, pilih salah satu permintaan dan periksa Response Headers untuk memastikan bahwa header tersebut berisi content-encoding: gzip. Hal ini menunjukkan bahwa gerbang masuk ASM telah berhasil mengaktifkan kompresi gzip.