Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
缓存-Django rest框架_Django_Caching_Django Rest Framework_Redis - Fatal编程技术网

缓存-Django rest框架

缓存-Django rest框架,django,caching,django-rest-framework,redis,Django,Caching,Django Rest Framework,Redis,用例 例如,应用程序是数据密集型的,它必须在前端显示大量数据,如feed、趋势分析、概要文件等 所有这些数据都取决于位置 假设我有GetMyFeed API,我进行缓存的方式是:- 我正在缓存查询集 我将缓存密钥作为API有效负载,因为根据它将形成queryset 缓存密钥是API有效负载。 缓存值为queryset 我面临的问题是:- 数据库上的更改将是每秒大量的,所以要使缓存无效,我必须清除整个缓存。但我认为这不是进行缓存失效的正确方法 如何更新对象列表中作为缓存值的单个实例?主要问题

用例

例如,应用程序是数据密集型的,它必须在前端显示大量数据,如feed、趋势分析、概要文件等

所有这些数据都取决于位置

假设我有GetMyFeed API,我进行缓存的方式是:-

  • 我正在缓存查询集

  • 我将缓存密钥作为API有效负载,因为根据它将形成queryset

  • 缓存密钥是API有效负载。 缓存值为queryset

  • 我面临的问题是:-

    数据库上的更改将是每秒大量的,所以要使缓存无效,我必须清除整个缓存。但我认为这不是进行缓存失效的正确方法


    如何更新对象列表中作为缓存值的单个实例?主要问题是多个查询集中可能存在单个实例。那么,我将如何更新实例的每个副本,它存在于不同的查询集中,缓存中的

    您可以尝试一下,这将如何解决问题,我不明白