检索缓存中的所有项目

Dea*_*ano 4 c# memcached caching enyim

我最近起步Enyim Memcached并且运行良好.使用该库,我能够存储和检索项目没有问题.

但是,我想知道是否有办法从缓存中检索所有项目.我知道您可以通过其键检索项目:

  MemcachedClient client = new MemcachedClient()
  object o = client.Get("key");
Run Code Online (Sandbox Code Playgroud)

但我似乎无法看到一个GetAll()或类似的方法,我错过了什么?

mik*_*ied 6

我想详细说明达森的答案.他是正确的,没有办法从标准memcached中获取所有密钥,但是还有其他类型的memcached允许您通过分流来完成此操作.如果您使用Membase服务器(如果您只使用缓存桶,Membase几乎只是memcached),您可以使用memcached的Membase分支,可以在这里找到https://github.com/membase/memcached.Membase分支绝对可以安全使用,许多顶级memcached贡献者都在为Membase(现在的Couchbase)工作,并将这个分支的东西贡献回主memcached分支.

另一方面,Enyim客户端不支持tap API,但有支持tap的Java,C/C++,python和ruby客户端.你要做的是创建一个tap转储流,这个流将发送给你memcached/Membase的所有键值对.