榕叶 发表于 2017-4-15 10:07:04

memcached+libmemcached+memcache_client

  ubuntu下安装memcached非常简单
  运行也很简单

./memcached -d -m 2048 -l 10.0.0.40 -p 11211
  如果要使用caffeine,请参考
  http://blog.methodmissing.com/2007/6/4/get-your-caffeine-on/
  本人是使用的 memcache-client
  gem install memcache-client
  后就可以在项目中使用了
  首先在environment.rb中要配置连接哪台memcached
  下面的是一个例子:

CACHE=MemCache.new :namespace=>'memcache_recipe',
:c_threshold=>10_000,
:compression=>true,
:debug=>false,
:readonly=>false,
:urlencode=>false
CACHE.servers='192.168.0.46:11211,192.168.0.185:11211'
ActionController::Base.session_options[:expires]=1800
ActionController::Base.session_options[:cache]=CACHE
  程序中就可以

@a=CACHE.get 'a'
unless @a then
aa=News.find(1,2,3,4,5,6,7,8,9)   
CACHE.set 'a',aa
@a=aa
end
  请注,如果缓存的是一个model的话,它会提示无法找到这个model的CLASS或Module,那是因为在查询缓存前它并没有执行到model类的装载,我们可手工新建这个model的新类如

@a=News.new
@a=CACHE.get 'a'
unless @a then
aa=News.find(1)   
CACHE.set 'a',aa
@a=aa
end
  测试例中使用了多台memcached服务器。
页: [1]
查看完整版本: memcached+libmemcached+memcache_client