更新现有的Memcached记录

时间:2012-02-22 17:16:33

标签: ruby-on-rails memcached

我有一个需要执行多个网络查询的应用程序,每个查询返回100条记录。

我想将所有结果(几千个左右)放在一个根据用户请求命名的Memcached记录中。

有没有办法将数据附加到Memcached记录,还是需要来回读取和写入,并通过我的应用程序将旧结果与新结果相结合?

谢谢!

P.S。我正在使用Rails 3.2

2 个答案:

答案 0 :(得分:2)

无法将任何内容附加到memcached密钥。您每次都必须在存储中读取它。

redis确实允许这种操作,但是,如同rubish指出的那样 - 它有一个本机列表类型,允许您将新数据推送到它上面。查看redis list documenation以获取有关如何执行此操作的信息。

答案 1 :(得分:0)

你可以编写一个在memcached中模拟列表的类(这实际上是我所做的)...追加到记录不是原子操作,所以它会产生随时间累积的错误(至少在memcached)。除此之外它会很慢。

正如所指出的,Redis有本机列表,但可以在任何noSQL / K-V存储解决方案中进行模拟。