2012-12-08 1 views
1

CKAN utilise des pylônes et donc Beaker. Il semble donc stocker des informations de session (et d'autres informations de cache) sur le disque. Y a-t-il un moyen de configurer CKAN pour stocker des informations de session ailleurs que sur un disque, par ex. DB ou memcached? Je demande particulièrement parce que a) vous pouvez rencontrer des problèmes de stockage de sessions sur disque (si vous avez beaucoup de sessions) b) Je voudrais lancer CKAN sur quelque chose comme Heroku où avoir des sessions sur le disque cause des problèmes (en particulier si vous avez plus de 1 processus)Comment configurer CKAN pour stocker des sessions ailleurs que sur un disque (par exemple, DB ou memcached)?

Répondre

2

memcached avec Install:

sudo apt-get install memcached 

config par défaut devrait avoir des paramètres d'écouter localhost sur le port 11211. /etc/memcached.conf:

-l 127.0.0.1 
-p 11211 

Pour que CKAN/Beaker en parle, vous aurez besoin du module Python pylibmc et de libmemcached. Installez libmemcached2 d'abord et voir quelle version est livré avec votre distro:

sudo apt-get install libmemcached2 

Lucid est livré avec v0.31-1 qui a besoin pylibmc au plus tard à la version 0.9. Si vous avez 0.32 alors vous pouvez utiliser un pylibmc plus récent. Maintenant, installez pylibmc:

pip install pylibmc==0.9 

Ensuite, dans votre config ckan vous configurez Beaker pour parler comme ceci:

beaker.session.type = ext:memcached 
beaker.session.url = 127.0.0.1:11211 

Une fois que vous redémarrez, vous devriez utiliser Beaker, au lieu de créer ces fichiers par la suite remplissez complètement votre disque.

Questions connexes