CKAN使用Pylons,因此使用Beaker。因此,它似乎在磁盘上存储会话信息(和其他缓存信息)。有没有办法配置CKAN来存储除磁盘以外的其他地方的会话信息,例如DB或memcached?
我特别要问,因为a)你可能遇到在磁盘上存储会话的问题(如果你有很多会话)b)我想在像Heroku这样的东西上运行CKAN,其中磁盘上的会话会导致问题(特别是如果你有超过1个过程)
答案 0 :(得分:2)
使用以下命令安装memcached:
sudo apt-get install memcached
默认配置应具有在端口11211上侦听localhost的设置./etc/memcached.conf:
-l 127.0.0.1
-p 11211
对于CKAN / Beaker来说,你需要Python模块pylibmc和libmemcached。首先安装libmemcached2并查看发行版随附的版本:
sudo apt-get install libmemcached2
Lucid附带v0.31-1,需要pylibmc不迟于版本0.9。如果你有0.32,那么你可以使用更新的pylibmc。现在安装pylibmc:
pip install pylibmc==0.9
然后在你的ckan配置中,你设置Beaker与它交谈:
beaker.session.type = ext:memcached
beaker.session.url = 127.0.0.1:11211
重新启动后,您应该使用Beaker,而不是创建最终完全填满磁盘的文件。