草庐IT

django-caching

全部标签

caching - 使用 redis 缓存管理器、redisTemplate 和多个序列化器进行缓存

我需要缓存多种类型,例如:publicCountryfindCountry(StringcountryName)和:publicListfindAllDestinations(StringcountryName)我正在使用RedisCacheManager,而RedisTemplate只支持一个序列化程序。 最佳答案 经过一番研究,现在解决了。将spring-data-redis更改为1.4.2.RELEASE使用您的类扩展RedisCacheManager,将缓存映射到序列化程序(cacheName->serializer)并缓存

django - 如何找出 Celery 设置中缺少的内容?

对于我们的一个Django网站,我们需要运行Celery。我们在settings.py中对Celery使用以下设置:BROKER_URL="redis://:6379/0"CELERY_RESULT_BACKEND="redis"CELERY_REDIS_HOST=""CELERY_REDIS_PORT=6379CELERY_REDIS_DB=0Redis正常运行:$redis-clipingPONG我们用这个命令启动Celery服务器:$nohuppythonmanage.pycelerydstart我们还有一个带有Celery任务的测试应用程序,但是当我们尝试使用它时,结果从未给出

caching - 如何检查redis缓存表是否为空?

我正在使用redis在MVC应用程序中缓存。我想检查redis缓存为空(无数据)然后触发将填充redis的Web作业缓存来自sql的表数据数据库。如何检查redis缓存中特定表中的空数据? 最佳答案 我不同意@bitoiu。不要将keys命令作为常规操作运行。key不打算以这种方式运行-它应该仅用于调试操作。同样,使用INFO不会告诉您特定数据是否存在,只是告诉您那里有东西。如果您只有一个键,那么可以肯定这似乎有效-直到您发现作业运行出错并存储了空字符串或错误数据。如果您只打算存储一个key,则可能有更好的选择。如果您几乎肯定要从S

caching - 像redis一样使用Elasticsearch作为键值缓存是否有意义

我最近遇到一个问题,因为redis不是分布式的,不支持并行(多核),Elasticsearch不是一个更好的选择来代替redis用于缓存目的。这都是引用一个简单的网络,我们在其中使用redis来缓存数据库查询。我有点明白了here,但仍然不确定它是否有任何真正的好处。打开此线程讨论这样做的优点/缺点。 最佳答案 这不是您真正想要的,但您可能想看看Aerospike.Redisisanin-memorydatastructurestoreknownforspeedandoftenusedasacache.BothRedisandAer

caching - Redis 缓存关系数据的正确策略

我们有以下用例示例:我们有用户、商店、friend(用户之间的关系)和喜欢。我们将这些表存储在MySQL中,并作为键值存储在Redis中,以便从Redis缓存中读取而不是命中数据库。对两个数据存储都进行了写入。因此,我们的应用程序非常快且可扩展,因为我们很少访问数据库进行读取。我们将AWS用于可扩展的Redis。但是,当用户登录时我们会遇到问题,我们必须显示商店列表,以及他的哪些friend喜欢该商店。这是一个join,Redis不支持直接join。我们想知道存储和显示这些数据的最佳方式是什么。例如:如果这应该存储在Redis表中,其中键值为“store/user_wholikes”并

django - 如何设置 Haystack 的 QueuedSignalProcessor 以使用 Redis?

我有一个项目,我想从使用Haystack的queued_search库迁移过来,使用Redis作为队列后端。在此之前,Haystack和Django一切正常,我只是在更换信号处理器时遇到了问题。我的理解是这实际上需要几层代码:Redis::这是数据存储RQ::这是使用Redis实现的队列(https://code.google.com/p/queues/)django-rq::这是RQ的Django包装器,我可以在其中指定连接设置queued_search::这是Haystack信号处理库。这将查找设置为“rq”的通用QUEUE_BACKEND。1)我已经在本地安装了Redis。它似乎

三十九、Django单元测试:unittest、测试用例、断言方法总结

为什么编写单元测试单元测试是软件工程中降低开发成本,提高软件质量常用方式之一,单元测试是一项由开发人员或者测试人员来对程序模块的正确性进行检验测试的工作,用于检查被测试代码的功能是否正确,养成单元测试的习惯,不但可以提高代码的质量,还可以提升自己的编程和技巧。Django单元测试使用的是Python标准库unittest模块来定义相应的测试用例。注意:后续技术分享,第一时间更新,以及更多更及时的技术资讯和学习技术资料,将在公众号CTOPlus发布,欢迎关注公众号:CTOPlus关于Articulate“做一个知识和技术的搬运工。做一个终身学习的爱好者。做一个有深度和广度的技术圈。”一直以来都想

caching - Redis 缓存 lru 启动 softlimit

我知道redis可以用作LRU缓存,但是否有softlimit标志,我们可以在达到特定条件后声明“redis将开始清理LRU项”。实际上我在redis上遇到OOM错误,我已将redis设置为LRU缓存,但它达到了OOM限制并且应用程序停止了。我知道“maxmemory”标志,但是否有一个软限制,我们有大约10%的空间,我们可以开始驱逐一些项目,这样应用程序就不会停止! 最佳答案 您是否设置了特定的驱逐政策?参见:驱逐政策http://redis.io/topics/lru-cache然后我会检查,以确保您没有无意中在您的redis对

Django + 雷迪斯 : How to invalidate cache for just one specific element

在我正在开发的网站中,用户可以提交图像(头像)。当用户想要更新他们的图片时,上传的图片会被调整大小、优化并生成一些缩略图。只有经过处理后,图像才会显示在网站中。我打算使用redis来长时间缓存图片,当上述过程完成后,我想只对上传的图片使缓存失效。我找不到教我们如何实现这些目标的文档/教程。有人能给我指点一些教程/文档来解释如何缓存图像以及如何使特定图像的缓存无效吗?谢谢。 最佳答案 您可以使用solr-thumbnail包来完成所有这些工作,包括缓存。您也可以将redis定义为kvstore。Docshere