是否可以在 Rails 中同时使用两种会话类型?Memcached 是为了加快读取速度,还是说 SQL 是为了持久化?
我讨厌在重新启动时丢失所有会话的想法。
下面提到的 MemcacheDB 看起来很有希望,但其想法是将所有写入都写入磁盘,如果可能,所有读取都来自内存。
是否可以在 Rails 中同时使用两种会话类型?Memcached 是为了加快读取速度,还是说 SQL 是为了持久化?
我讨厌在重新启动时丢失所有会话的想法。
下面提到的 MemcacheDB 看起来很有希望,但其想法是将所有写入都写入磁盘,如果可能,所有读取都来自内存。
Redis FTW ( http://code.google.com/p/redis/ )
看看MongoDB。它使用内存映射文件,因此速度非常快,并且应该在与 MemCached 相当的水平上执行,但也会持久存储您的数据。
MongoDB 是一个无模式的数据库,它应该支持您正在寻找的所有内容,并证明了对这些数据做任何您喜欢的事情的灵活性。
对于持久性,您可以使用 MemcacheDB 而不是 SQL。
查看缓存货币。它是一个通读、通写缓存,可以附加到大多数 rails 模型并将结果存储在 memcache 中......
通读:像 User.find(:all, :conditions => ...) 这样的查询将首先在 Memcached 中查找,然后在数据库中查找该查询的结果。如果缓存未命中,它将填充缓存。
直写:在创建、更新和删除对象时,所有缓存都会自动保持最新和一致。
我在几个项目中使用它,它按描述工作,似乎正是你想要的。许多环境的重大胜利。