通过正则表达式使内存缓存过期

2024-01-10

我在 Rails 应用程序中使用 memcache。我想说

使所有带有“foo-123-*”等键的条目过期

其中 * 是任意字符串。当然,没有 memcache 发行版直接支持这一点(对吗?),因为它的构建简单而快速,因此没有索引。

有几个项目通过保留本地密钥列表来解决这个问题:

  • https://github.com/defcononomicron/dalli-store-extensions https://github.com/defconomicron/dalli-store-extensions
  • https://github.com/jkassemi/memcache-store-extensions https://github.com/jkassemi/memcache-store-extensions

但是,将列表保留在内存中......该列表可能会在应用程序实例之间变得不同步......因此它不可靠。

这个问题是否已通过其他方式解决?我是否缺少一个通用的解决方案?


正如你所说,像你想要的那样查询 memcached 是不可能的......但这里是一个我发现返回键列表的 php 示例

http://snipt.org/xtP http://snipt.org/xtP

it sends

  • “统计项目”

然后迭代返回的项目并发送

  • “统计缓存转储 42 100”

42 是商品编号,100 是要退回的商品数量

然后您可以迭代返回的键并删除不再需要的键。

(但这无论如何都是一个丑陋的解决方法......)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通过正则表达式使内存缓存过期 的相关文章

  • Rails - 动态构建深度嵌套对象(Cocoon /nested_form)

    我目前有一个具有深层嵌套的复杂形式 并且我正在使用Cocoon https github com nathanvda cocoongem 根据需要动态添加部分 例如 如果用户想要在销售表单中添加另一辆车 代码如下所示 div class a
  • 在本地mysql数据库中拉取mysql数据库时出错

    我试图将 heroku mysql 数据库拉入我的本地 mysql 数据库 但它给了我一些错误 我已将问题发布到 github 上 Here https github com heroku heroku issues 457这是我在gith
  • Rails 3.1 使用 app/assets/images/subdirectory 下的图像

    在我的 Rails 3 1 应用程序中 我将图像存储在app assets images jquery ui 我不知道如何在 CSS 中访问这些 assets image name png and assets jquery ui imag
  • Ruby 电子表格 gem,如何居中对齐数字

    我在用着http spreadsheet rubyforge org http spreadsheet rubyforge org生成电子表格 但我遇到了一些问题 我正在打开现有工作簿并向其中添加数据 我已经设法在某种程度上使数字格式正常工
  • ActiveRecord oracle_enhanced 适配器无法加载 ruby​​-oci8 库

    rails g scaffold失败 但 oci 脚本和 irb 数据查询有效 无法弄清楚出了什么问题 rails g scaffold table field1 integer field2 string invoke active re
  • Rails 3.0.0.beta 和 Facebooker:还有其他人看到以下内容吗?

    我的 Rails 服务器在安装 facebooker 插件后似乎崩溃了 任何有关解决此问题的建议都会很棒 我正在使用 Rails 3 0 0 beta 和 facebooker 以下是我看到的步骤和错误 rails v Rails 3 0
  • 从 ActiveRecord 获取表名

    I used ActiveRecord Base set table name在动态创建的 ActiveRecord 类上设置我的表名称 现在我需要知道稍后如何获得该值 api 文档没有提及如何执行此操作 另外 我无法从 ActiveRec
  • 在代码中的其他地方设计渲染符号=>向上/形式部分

    我刚刚开始使用 Devise 和 Rails3 我已经完成了身份验证并正在工作并了解基础知识 截至目前 在代表我的主页 首页的主控制器中 我有两个链接 一个链接到 注册 gt sign up 另一个链接根据登录 注销 gt sign in
  • 如何在 Rails 6 中禁用 TurboLinks?

    所以我面临这个问题 我的服务器实际上从客户端的请求中检索了正确的数据 并将这些数据发送到浏览器 我可以清楚地看到它可用于浏览器 CTRL SHIFT C gt Network gt my request 但是 浏览器不会刷新 所以我现在看到
  • 如何使用 RSpec 检查 JSON 响应?

    我的控制器中有以下代码 format json render json gt flashcard gt flashcard lesson gt lesson success gt true 在我的 RSpec 控制器测试中 我想验证特定场景
  • 如何使用 ruby​​ 的循环和 haml 创建表?

    我正在尝试制作一个如下所示的 html 表 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 我的数据结构是这样的 f ary 1 250 这是我的哈姆尔代码 table border gt 1 tbody tr cnt 0 f
  • Rails 中的并行方法

    我的 Rails Web 应用程序有数十种方法 从调用 API 到处理查询结果 这些方法具有以下结构 def method one batch query API process data end def method nth batch
  • 从部分重定向回具有部分的同一页面后保留验证错误

    因此 我试图从我的表单中获取错误 该表单在我的 root path 中呈现为部分内容 在我尝试发布它但失败 或成功 后 我想重定向回 root path 但是 redirect to 决定不保存任何验证信息 想知道如何做到这一点 class
  • Eventmachine start_tcp_server 无接受器 - 端口正在使用或需要 root 权限(运行时错误)

    我已经 3 天无法运行本地服务器了 重新启动我的计算机没有帮助 有几次 在反复尝试大约 40 50 次之后 它随机地起作用了 我不明白为什么 我尝试过一次不同的端口并且有效 但从那以后 没有端口有效 每次我尝试运行我的 Rails 服务器时
  • Ruby on Rails 3 - 为每个请求重新加载 lib 目录

    我正在为 Rails 3 应用程序创建一个新引擎 正如您所猜测的 该引擎位于我的应用程序的 lib 目录中 但是 我在开发它时遇到了一些问题 事实上 每次更改引擎中的某些内容时 我都需要重新启动服务器 有办法避免这种情况吗 我可以强制rai
  • Rails 3:使用 Simple_form 如何创建一个向specialities#create 发布帖子的表单?

    如何使用 Simple form 创建一个向specialities create 发布帖子的表单 我试过这个
  • 使用复选框过滤列表

    我有一个电影列表及其评级 在我的页面顶部 我有一个表单 其中提供了一个复选框列表 其中显示了每个可用的评级 G PG 13 等 一旦用户单击复选框并点击提交 我只想显示所选的电影 在我的索引方法中 我有一个名为的实例变量 filtered
  • 自定义通用 Rails 错误消息

    我们的 Rails 应用程序被设计为链接到多个客户端数据库的单个代码库 根据子域 应用程序确定要连接到哪个数据库 我们使用液体模板为每个客户定制演示文稿 我们无法为每个客户定制通用的 我们很抱歉 出了点问题 消息 谁能推荐一种方法让我们能够
  • 回滚后是否应该删除迁移

    我对 ruby 和 Rails 相当陌生 刚刚开始了解迁移 我的问题是回滚后删除迁移的最佳实践或正确时间是什么 到目前为止 我读到的内容是回滚后是否删除迁移的观点问题 但是在团队中工作时删除迁移是否有任何重大影响 以及保留迁移文件相对于删除
  • 通过 ESI:include 设置 Cookie,如何?

    我正在尝试使用 esi 在我的网站上创建忍者缓存 这个想法是 该网站大部分是静态的 我只需要在用户是否登录时做一些花哨的事情 所以我试图在页面A上放置一个 并在页面B的应用程序中设置触发器 这样我就可以将页面 A 缓存在 varnish 上

随机推荐

  • 如何在查询字符串中使用回车或换行?

    客户可以在文本区域中输入行 并将其保存在数据库中 如果客户返回站点 他可以加载之前输入的数据 但是 换行符和回车符不会显示在文本区域中 我可以将它们放在查询字符串中 例如通过 ASCII 编码 A 或 D 但 java 不喜欢这样并抛出 I
  • Swift 中块参数的文档标记格式是什么?

    如果您添加文档标记 则 Swift 中块的参数会显示该块的参数表 但我不知道如何填写该表 我已经在Xcode 标记参考格式 https developer apple com library ios documentation Xcode
  • 更改 Mac Catalyst 上 UITextField 或 UITextView 的提示颜色

    如何以编程方式更改 mac Catalyst 上 UITextField 提示的颜色 提示存在 但颜色与 UITextField 相同 提示在 iOS 上显示正确的颜色 我尝试失败 tintColor 代码 iOS 和 Mac Cataly
  • firebase的app token在什么时期发生变化以及如何管理?

    我是 firebase 的新手 我就像一个小孩学走路一样学习它 到目前为止 我已经成功使用 firebase 框架为我的手机生成的令牌向我自己的手机发送消息 现在这就是棘手的地方 在我看来 有一种方法叫做onTokenRefresh in
  • AWS Dynamo 不会自动缩小规模

    Here are the parameters I have set on the table And here is what I see for the capacity over time 为什么它仍保持在 25 个写入单元 难道不应
  • 将对象转换为类似类型

    在斯卡拉 我有两个 Any 类型的对象 如果可能的话 我想将对象转换为正确的 Ordered 特征 然后将它们与 你可以通过以下方式实现Ordering类型类别 def compare T Ordering Manifest a AnyRe
  • 如何使用 FireDAC 在 Firebird 3.0 上启用 WireCompression [重复]

    这个问题在这里已经有答案了 我希望使用 WireCompression 连接到 Firebird Server 3 0 这是自 3 0 版以来的新功能 我很难做到这一点 我能找到的唯一记录说明是在 firebird conf 中将 Wire
  • Firefox 扩展中的 IP 地址查找

    我正在编写一个 Firefox 扩展 我需要找到当前加载页面的 IP 地址 我可以使用 window location host 获取页面的主机名 但是有什么方法可以找到该主机名的 ip 吗 我尝试在 Mozilla 开发人员中心寻找答案
  • 使用 mod_wsgi 在 Apache 上部署多个 django 应用程序

    我想在同一主机中部署两个不同的 django 应用程序 第一个对应于 url site1 第二个对应于 url site2 这是我的配置 LoadModule wsgi module modules mod wsgi so WSGIScri
  • 如何编写 a-> b -> b -> b 类型的函数来折叠树

    一些背景 我在Haskell中有一个以下类型的foldT函数 类似于foldr 但用于树 foldT a gt b gt b gt b gt b gt Tree a gt b 该foldT仅将类型 a gt b gt b gt b 作为输入
  • Overflow-x:hidden 仍然可以滚动

    问题是 我有一个全宽的栏菜单 它是通过在右侧和左侧创建一个大边距来制作的 该边距应裁剪为overflow x hidden 而且它是 没有滚动条 一切 视觉上 都很好 但是 如果您拖动页面 使用 Mac Lion 或向右滚动 页面会显示一个
  • Bootstrap模式:关闭当前,打开新的

    我已经寻找了一段时间 但找不到解决方案 我想要以下内容 在 Bootstrap 模式中打开 URL 我当然有这个工作 所以内容是动态加载的 当用户按下此模式内的按钮时 我希望当前的模式隐藏 之后立即 我希望使用新的 URL 用户单击的 打开
  • 如何获取chrome当前版本的当前URL

    我想获取 chrome 当前版本的当前 URL 所以 我尝试使用这种方式 http www codeproject com Questions 648906 how to get current URL for chrome ver 29
  • + 不支持的操作数类型:“float”和“datetime.timedelta”,“出现在索引 5”)

    我有一个数据集 其中一个输入包含日期和时间 首先 我编写了代码来查找 X3 列中 5 值的第一个时间 然后将该时间转换为 0 然后我尝试将 timedelta hours 1 添加到范围为 6 的内容中 然后它给了我这个错误 unsuppo
  • 如何将错误 403 重定向到 .htaccess 中的 root

    我对 Apache 不是很坚定 所以如果这个问题看起来有点明显 请原谅 我想通过 htaccess 文件将特定目录中导致错误 403 的请求重定向到我的网络服务器根目录 所以https thedomain com secretlair ht
  • 分配器和工作线程端点队列在同一台机器上

    我正在使用 NServiceBus 3 2 2 0 尝试在同一台机器上测试分配器和工作人员 我注意到经销商正在创建以下队列 端点队列 EndPointQueue distributor control EndPointQueue distr
  • Google Mock:使用全局模拟对象可以吗?

    在所有有关的文档中gmock我总是发现模拟对象在测试中被实例化 如下所示 TEST Bim Bam MyMockClass myMockObj EXPECT CALL MyMockObj foo 因此 每次测试都会创建和销毁该对象 我相信创
  • Tensorflow:服务模型始终返回相同的预测

    我需要你的帮助 我现在有点陷入困境 我重新训练了一个分类张量流模型 它给出了非常好的结果 现在我想通过张量流服务来服务它 我设法提供了它 但是当我使用它时 无论输入是什么 它总是给我相同的结果 我认为导出模型的方式有问题 但我不知道是什么
  • pandas 用左引号和右引号解析 csv

    我正在尝试读取 pandas 中的一个文件 其结构如下
  • 通过正则表达式使内存缓存过期

    我在 Rails 应用程序中使用 memcache 我想说 使所有带有 foo 123 等键的条目过期 其中 是任意字符串 当然 没有 memcache 发行版直接支持这一点 对吗 因为它的构建简单而快速 因此没有索引 有几个项目通过保留本