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]