Perbedaan antara masa hidup cache Minimum dan Kedaluwarsa halaman yang di-cache

35

Pada Drupal Performance Page, di bawah fieldset Cache Anda memiliki dua opsi. Salah satunya adalah Seumur Hidup Cache Minimum dan yang lainnya adalah Kedaluwarsa halaman yang di-cache.

masukkan deskripsi gambar di sini

Apa perbedaan keduanya.

Gokul NK
sumber
Lihatlah lebih dekat pada kata "eksternal";)
Mołot
1
Saya agak tahu jawabannya. Saya berpikir untuk menulis sedikit jawaban terperinci hanya untuk memvalidasi pemikiran saya dan berharap itu dapat membantu orang lain.
Gokul NK
Untuk jawaban terperinci, periksa drupal.stackexchange.com/questions/83315/...
Gokul NK

Jawaban:

39

Saya telah melakukan pengamatan berikut setelah menghabiskan beberapa jam. Jika ada celah atau kesalahan, beri tahu saya. Saya akan senang membuat edisi.

Pengamat pertama bahwa tidak ada Opsi di bawah CACHING yang saling bergantung. Jika ya, Anda akan melihatnya di set bidang yang berbeda (atau sebagai bidang dependen). Catat observasi ini dan kami akan mengunjungi lagi nanti.

masukkan deskripsi gambar di sini

Mari kita mulai dengan halaman Cache opsi pertama untuk pengguna anonim . masukkan deskripsi gambar di sini

Ketika Anda memeriksa opsi ini pada dasarnya Anda memberi tahu Drupal

Hei Binatang mendengarkan, ketika pengguna anonim mengunjungi situs saya,

  1. Simpan HTML yang dihasilkan dalam tabel cache
  2. Sehingga saya dapat menampilkan hasil yang sama untuk semua pengguna karena halaman saya tetap sama untuk semua pengguna anonim.
  3. Dan jangan hapus halaman cache sampai saya katakan hapus semua cache.

Bahkan ketika Anda tidak mengaktifkan Cache Pages for anonymous users halaman tersebut masih bisa di-cache oleh sistem cache eksternal. Misalnya: Tingkatkan

Sekarang mari kita beralih ke opsi berikutnya yang akhirnya Anda gunakan secara umum.

Kedaluwarsa halaman yang di-cache

masukkan deskripsi gambar di sini

  1. Perhatikan bahwa pengaturan ini tidak ada hubungannya dengan Database Drupal atau tabel cache.
  2. Baca deskripsi The maximum time an external cache can use an old version of a page.Seperti yang ditunjukkan Molot, kata kunci itu eksternal.
  3. Jadi apa yang dilakukan opsi ini pada dasarnya adalah mengatur Kontrol Cache header ke publicdan nilai usia maks di header ke nilai yang ditentukan (1 hari dalam kasus ini).
  4. Header ini memberi tahu externalsistem Caching untuk tidak melakukan panggilan ke server untuk halaman ini hingga usia maksimal, karena mereka dapat menampilkan halaman ini dari cache mereka sendiri. Setelah usia maksimum, sistem Caching harus memeriksa kembali dengan server Drupal untuk melihat apakah konten telah berubah.

  5. Jika ini server Varnish, itu tidak membuat panggilan ke Apache dan mengembalikan halaman dari cache. Jadi asumsikan bahwa Varnish telah membuat cache halaman dan ribuan pengguna yang berbeda membuat permintaan ke halaman itu. Jadi itu berarti bahwa 1000 permintaan telah diproses tanpa mengenai Server Apache sekali pun.

Waktu Hidup Cache Minimum masukkan deskripsi gambar di sini

Jika situs Anda tidak memiliki traffic yang besar atau jika Anda tidak yakin apa nilai ini, lebih baik meninggalkan nilai ini karena tidak ada.

  1. Nilai ini berlaku tidak hanya untuk halaman. Tetapi semua objek cache.
  2. Apa yang dikatakan nilai ini adalah "Tidak masalah untuk melayani objek cache yang sudah basi"
  3. Dalam kasus kami, nilainya diatur ke 5 menit.
  4. Jika Anda memiliki halaman yang mencantumkan lima blog terbaru di halaman rumah Anda. Apa artinya nilai-nilai di atas adalah bahwa, jika sebuah blog baru dibuat tidak masalah untuk blog tidak muncul pada daftar selama lima menit.
  5. Ketika nilai ini disetel, agar cache diperbarui / diciptakan kembali minimum, sebanyak ini waktu yang harus dilewati dan tindakan pembersihan cache harus dijalankan [Fungsi pembersihan cache harus dijalankan].
Gokul NK
sumber
1
Terima kasih atas jawaban ini. Saya agak bingung: untuk "Halaman Cache untuk pengguna anonim" , Anda mengatakan itu berarti "jangan hapus cache halaman sampai saya mengatakan hapus semua cache." Apa yang dilambangkan oleh "Saya katakan" ini ? Apa yang akan memicu cache untuk dihapus?
s427
1
@ s427 silakan periksa drupal.stackexchange.com/questions/102976/... untuk rincian tentang apa yang akan memicu cache untuk dihapus.
Gokul NK
1
Apa yang saya temukan menarik adalah bahwa ini benar hanya jika "Halaman cache untuk pengguna anonim" diaktifkan. Jika tidak, mengubah "Kedaluwarsa halaman yang di-cache" tidak melakukan apa-apa, dan mengaktifkan "Umur cache minimum" menetapkan header. Hanya jika caching untuk pengguna anonim diaktifkan dan HANYA KEMUDIAN "Berakhirnya halaman yang di-cache" menetapkan header. Ini agak membingungkan ...
Łukasz Zaroda
19

Artikel ini memiliki ikhtisar yang baik tentang terminologi caching Drupal: http://www.phase2technology.com/blog/caching-in-drupal/

Ringkasan poin-poin yang relevan:

Cache minimum seumur hidup sering disalahartikan sebagai makna "halaman akan dibuat kembali setelah banyak waktu berlalu". Apa artinya sebenarnya adalah bahwa halaman tidak akan dibuat ulang sampai setidaknya waktu sebanyak ini berlalu dan peristiwa pembersihan cache telah terjadi.

Kedaluwarsa halaman yang di-cache juga terkadang disalahartikan. Nilai ini mengontrol apa yang dikirim sebagai nilai usia maks di header Kontrol-Cache dan dengan demikian memberi tahu server proxy berapa lama mereka dapat melayani halaman tanpa meminta Drupal Anda menginstal salinan baru. Ini tidak berarti bahwa halaman akan dibuat ulang setelah waktu yang lama ini, itu hanya berarti bahwa server proxy harus memeriksa kembali dengan Drupal untuk melihat apakah versi baru dari halaman ada setelah banyak waktu ini. Drupal hanya akan membuat ulang halaman setelah peristiwa pembersihan cache terjadi.

jazzdrive3
sumber