Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Cara menggunakan Nginx untuk caching kandungan dinamik

Cara menggunakan Nginx untuk caching kandungan dinamik

PHPz
PHPzasal
2023-08-03 16:42:241862semak imbas

Cara menggunakan Nginx untuk caching kandungan dinamik

Nginx ialah pelayan web berprestasi tinggi dan pelayan proksi terbalik yang digunakan secara meluas untuk membina tapak web dan aplikasi berprestasi tinggi. Selain sebagai pelayan, Nginx juga boleh digunakan sebagai pelayan cache untuk cache kandungan statik dan dinamik. Artikel ini akan memperkenalkan cara menggunakan Nginx untuk cache kandungan dinamik dan meningkatkan prestasi tapak web serta pengalaman pengguna.

Nginx menggunakan modul proxy_cache untuk melaksanakan fungsi caching. Berikut ialah contoh fail konfigurasi mudah:

http {
  proxy_cache_path /path/to/cache keys_zone=my_cache:10m;

  server {
    listen 80;
    server_name example.com;

    location / {
      proxy_pass http://backend;
      proxy_cache my_cache;
      proxy_cache_key $scheme$host$request_uri;
      proxy_cache_valid 200 302 10m;
      proxy_cache_valid 404 1m;
    }
  }

  upstream backend {
    server backend.example.com;
  }
}

Dalam fail konfigurasi di atas, kami telah menentukan direktori cache /path/to/cache,并给它分配了一个名为my_cache的keys_zone,这样Nginx就可以将缓存内容保存到该目录中。然后,我们在server块中的location中开启了代理模式,并将请求转发给了后端服务器backend.example.com.

Dalam konfigurasi berkaitan proxy_cache, kami menggunakan arahan proxy_cache_key untuk menentukan kunci cache Di sini kami menggunakan skema yang diminta, hos dan request_uri sebagai kunci cache. Ini memastikan permintaan yang sama akan dicache dan mengelak daripada menghantar permintaan yang sama ke pelayan bahagian belakang beberapa kali.

Kami juga menggunakan arahan proxy_cache_valid untuk menentukan masa sah cache. Untuk respons dengan kod pulangan 200 dan 302, kami menetapkan masa sah kepada 10 minit untuk respons dengan kod pulangan 404, kami menetapkan masa sah kepada 1 minit; Dengan cara ini, masa cache yang berbeza boleh ditetapkan berdasarkan kod pulangan yang berbeza.

Selepas konfigurasi selesai, simpan fail dan muat semula konfigurasi Nginx. Seterusnya, apabila permintaan tiba, Nginx terlebih dahulu akan menyemak sama ada terdapat cache Jika ada, ia akan mengembalikan kandungan cache secara terus.

Perlu diperhatikan bahawa cache Nginx adalah berasaskan fail, yang bermaksud kandungan dinamik biasanya disimpan sebagai fail statik. Oleh itu, jika kandungan dinamik kerap berubah, atau kandungan perlu dikembalikan berdasarkan maklumat khusus pengguna, anda perlu memberi perhatian kepada strategi kemas kini cache.

Dengan menggunakan Nginx untuk caching kandungan dinamik, prestasi dan pengalaman pengguna tapak web boleh dipertingkatkan dengan ketara. Apabila cache mencecah, ia boleh mengelakkan pemprosesan permintaan berulang dan mengurangkan beban pada pelayan bahagian belakang Pada masa yang sama, kerana fail statik dihantar lebih cepat, masa memuatkan halaman juga boleh dipendekkan dan pengalaman akses pengguna boleh. bertambah baik.

Saya harap artikel ini dapat membantu semua orang memahami cara menggunakan Nginx untuk caching kandungan dinamik. Jika anda mempunyai sebarang pertanyaan, sila tinggalkan mesej untuk perbincangan.

Atas ialah kandungan terperinci Cara menggunakan Nginx untuk caching kandungan dinamik. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn