sql >> Database >  >> NoSQL >> Redis

Django REST-framework reageert nog steeds met gegevens in de cache, zelfs na lege redis-sleutels

Het verzoek van 4. bereikt niet eens de redis-cache, omdat het een lokale cache retourneert (let op de "Van schijfcache" in de antwoordcode).

U moet onderscheid maken tussen een openbare cache (d.w.z. de servercache die door alle gebruikers wordt gebruikt) en een privécache (de browsercache van de gebruiker).

Ik denk dat bij gebruik van cache_page decorator, behalve het cachen van het verzoek, stelt het ook "Cache-control" responsheaders in om een ​​privécache van het verzoek toe te staan. De browser gebruikt die headers om het verzoek lokaal in de cache te plaatsen en een lokaal in de cache opgeslagen antwoord terug te sturen tot max-age verloopt.

Om dit gedrag te voorkomen, kunt u op serverniveau @never_cache . gebruiken decorateur, die Cache-control . instelt responsheaders om lokale caching te voorkomen, of gebruik @cache_control(public=True) om alleen de openbare cache van het verzoek toe te staan ​​(dit past ook de responsheaders van het cachebeheer dienovereenkomstig aan).

Meer over Cache beheren.




  1. lente data mongodb groep door

  2. Hoe kan ik met Predis een multidimensionale associatieve array INSTELLEN (d.w.z. opslaan)?

  3. Wat is het verschil tussen de methode insert(), insertOne() en insertMany()?

  4. Hoe verhouden Morphia-, Mongo4j- en Spring-gegevens voor MongoDB zich tot elkaar?