如何使用regex删除memcached中的键(使用Dalli + RoR).

Ilh*_*hom 5 ruby memcached ruby-on-rails ruby-on-rails-3.2 dalli

如何使用正则表达式删除memcached中的键(使用Dalli + Rails)

  def expire_all
   expire_fragment(Regexp.new("/customers/customers"))
   expire_fragment(Regexp.new("/customers/customers\/"))
   expire_fragment(Regexp.new("/agreements/agreements"))
   expire_fragment(Regexp.new("/agreements/agreements\/"))
  end
Run Code Online (Sandbox Code Playgroud)

不使用memcached.有任何想法吗?

Ilh*_*hom 3

安装 gem dalli-store-extensions https://github.com/defconomicron/dalli-store-extensions

在扫地机里

expire_fragment /#{Regexp.escape(restaurant.id)}\/stocks*/
Run Code Online (Sandbox Code Playgroud)

  • dalli-store-extensions 使用本地内存缓存,因此它可能会在应用程序实例之间不同步。(我认为这就是问题所在)。在这里查看我的问题http://stackoverflow.com/questions/11998762/expiring-memcache-via-regex (2认同)