Redis
 sql >> Teknologi Basis Data >  >> NoSQL >> Redis

Kerangka kerja Django REST masih merespons dengan data yang di-cache bahkan setelah kunci redis kosong

Permintaan dari 4. bahkan tidak mengenai cache redis, karena mengembalikan cache lokal (perhatikan "Dari cache disk" dalam kode respons).

Anda harus membedakan antara cache publik (yaitu cache server yang digunakan oleh semua pengguna) dan cache pribadi (cache browser pengguna).

Saya pikir, saat menggunakan cache_page dekorator, selain men-cache permintaan, itu juga mengatur header respons "Cache-control" untuk mengizinkan cache pribadi dari permintaan. Browser menggunakan header tersebut untuk menyimpan permintaan secara lokal, dan mengembalikan respons cache lokal hingga max-age kedaluwarsa.

Untuk mencegah perilaku ini, di tingkat server, Anda dapat menggunakan @never_cache dekorator, yang menyetel Cache-control header respons untuk mencegah caching lokal, atau gunakan @cache_control(public=True) untuk mengizinkan hanya cache publik dari permintaan (ini juga menyesuaikan header respons kontrol cache yang sesuai).

Selengkapnya tentang Mengontrol cache.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Redis - Bagaimana kunci HASH dan SET dan ZSET terkait pada penyimpanan CrudRepository?

  2. Bagaimana cara menggunakan redis untuk menyimpan data hierarkis?

  3. Pengantar Struktur Data Redis:Set

  4. Apa cara paling efisien waktu untuk membuat serial/deserialisasi DataTable ke/dari Redis?

  5. Kesalahan:Koneksi redis ke 127.0.0.1:6379 gagal - sambungkan ECONNREFUSED 127.0.0.1:6379