问题标签 [redis-cache]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - 如何优雅地处理 Rails 缓存失败?(redis缓存)
我在我的应用程序中使用 redis-cache 进行片段缓存。当 redis 关闭或无法访问时,我会收到引发 500 错误的超时异常。
这种情况很少发生,但是对于缓存,我希望 rails 将超时视为:
- 写入无操作
- 读取时缓存未命中。
有什么建议么?这是可以在 rails 缓存中配置的东西,还是我需要做一些猴子补丁来优雅地处理这种情况?
我的堆栈跟踪的相关部分如下,以防它有任何帮助。. .
ruby-on-rails-3 - 在 Rails 中抢救 Redis 异常
我目前有一个Rails 3.2.13
应用程序使用redis
ascache_store
和 for Sidekiq
。
我也在使用redis主从。我遇到了一个问题,在故障转移期间,从属服务器将成为主服务器,Rails 然后连接到该节点,一旦它尝试写入该节点,即使该节点是 ,也会master
引发此异常:
我知道这个问题可以很容易地通过断开使用redis的任何东西(例如sidekiq
rails cache_store)来解决,这样任何写入该节点的后续命令都可以通过有效连接重新连接。
问题是在哪里捕获和处理异常?我最初的想法是进行airbrake
一种全球救援,但不确定这是否是最好的方法。
有没有人遇到过这个问题?
python - Redis 可以写出到像 PostgreSQL 这样的数据库吗?
我使用 PostgreSQL 的时间最长。我所有的数据都保存在 Postgres 中。我最近研究了 redis,它有很多强大的功能,否则在 Django (python) 中需要几行代码才能完成。只要运行它的机器不停机,Redis 数据就会持久存在,您可以将其配置为每 1000 个键或每 5 分钟左右将存储到磁盘的数据写入磁盘,具体取决于您的选择。
Redis 会做一个很好的缓存,它肯定会取代我在 python 中编写的许多功能(投票用户的帖子,查看他们的朋友列表等......)。但我担心的是,所有这些数据都需要翻译成 postgres。我不相信将这些数据存储在 redis 中。我将 redis 视为一种用于快速检索信息的临时存储解决方案。它非常快,这远远超过对 postgres 进行重复查询。
我假设我可以在技术上将redis数据写入数据库的唯一方法是将我从redis的'get'查询中获得的任何内容通过Django保存到postgres数据库中。
这是我能想到的唯一解决方案。你知道这个问题的任何其他解决方案吗?
ruby-on-rails - 省略,跳过redis缓存存储,如果它不可用
我使用 redis-store 作为 Rails 的缓存存储
当 redis-request 失败(redis 重启期间没有连接、redis down、超时等)时,整个应用程序都会失败。是否可以选择跳过 redis 并像没有这样的密钥一样行事?
谢谢和问候,菲尔
编辑: 可以在这里进行进一步讨论: https ://github.com/jodosha/redis-store/issues/175
问题已为我解答。(只能通过修补实现,请参阅问题 150)
redis - 调用方法时创建 Redis 对象和执行命令时出错
这是包含 rubygems 和 redis 后我的 rails 控制台的输出。
django - 如何安排 redis 缓存的失效?
我正在使用 django 作为框架来为带有博客的站点构建内容管理系统。
每篇博文都会有一个路由,其中包含博文的唯一标识符。这些博客文章可以安排并有一个到期日期。这意味着路线必须是动态的。
整个站点都需要缓存,我们已经将 redis 设置为后端缓存。我们目前针对静态路由缓存渲染页面,但需要找到一种针对动态路由缓存页面的方法(并在博客文章过期时使它们失效。)
我可以使用 cron 作业,但这不合适,因为... a) 新博客帖子很少发布,而且不定期发布 b) 用户可以将帖子安排到一分钟。这意味着 cron 作业必须每分钟运行一次,这似乎有点过分了!
我刚刚找到了django-cacheops库,它似乎完全符合我的需要(安排缓存失效并通过信号使它们失效)。这与我们现有的设置兼容吗?设置有多容易?
我认为这是一个非常普遍的问题 - 有没有人有比上述更好的想法?
azure - Windows azure redis 缓存迁移问题
我们将站点托管在 Windows azure 上,站点在多个实例上运行。由于多个实例,我们使用共享缓存来存储会话值。由于微软即将停止共享缓存,建议使用 redis 缓存来存储会话。我修改了项目以使用 redis 缓存,它适用于大多数页面。我的问题是,我们的站点中有一个非常重要的页面“搜索页面”(我们使用 lucene.net 进行搜索功能),它在会话中存储了大量数据,并且该页面无法正常工作。点击搜索按钮后,在地址栏中显示连接状态很长一段时间,然后进入网站的oops页面。我们正在 DB 中记录错误消息,所以在查看之后我们发现了以下错误消息。
我不确定这是否与我的问题有关,但似乎如果已解决,页面将正常工作。有谁知道为什么会发生此错误以及如何解决?
谢谢
spring - Spring-data-redis:cacheManager 配置问题
我使用 redis 作为我的 spring 缓存实现。官方文档说我们应该像这样配置缓存管理器:
当 jedis 版本 = 2.0.0 和 spring-data-redis 版本 = 1.0.2.RELEASE 时,它工作正常。
但在更新的版本中(例如 jedis = 2.5.2 和 spring-data-redis = 1.3.4.RELEASE),上面的配置不起作用。相反,它抛出一个异常,说“loadCaches 不能返回一个空的集合”。然后我引用它并再次谷歌它,现在配置文件是这样的:
现在它不再抱怨空集合,而是抱怨初始化。
所以这里还有两个问题:
- 在 cacheNames 属性中,我看到其他人正在使用“list”、“set”和“map”。有什么区别?
- 里面的bean怎么配置?
我已经在这个 bean 设置上苦苦挣扎了几天。你能帮我解决一下吗?提前致谢
redis - Redis Cache 数据备份
我已经开始阅读 Redis Cache。在非常基本的级别上,它像内存缓存中的任何其他数据一样将数据存储在内存中。所以我的问题是,如果它崩溃或重新启动,存储在其中的数据会发生什么。是否有任何持久性(数据回传策略)或数据会丢失?有关此功能的任何参考都会有所帮助。
提前致谢!!
caching - 为什么与 Azure Redis 缓存的连接如此之高?
我在单台机器查询缓存的高负载方案中使用 Azure Redis 缓存。这台机器大约每秒获取和设置大约 20 个项目。白天增加,夜间减少。
到目前为止,一切正常。今天我意识到“连接的客户端”的指标非常高,尽管我只有 1 个客户端经常获取和设置项目。这是我的意思的指标的屏幕截图:
我的代码如下所示:
我没有创建这个类的多个实例,所以这不是问题。也许我误解了连接指标,它们的真正含义是我访问缓存的次数,但是,在我看来,这并没有什么意义。有什么想法,或者有类似问题的人吗?