- 使用 memcached
- 使用单节点memcached
- 使用memcached集群
使用 memcached
安装 Memcached 能够显著提高系统性能。
首先你需要保证 libmemcached 库已经安装在你的系统中。要想使用memcached集群,我们要求使用 1.0.18 或者更新的版本。
使用单节点memcached
在CentOS 7 上
sudo yum install gcc libffi-devel python-devel openssl-devel libmemcached libmemcached-develsudo pip install pylibmcsudo pip install django-pylibmc
将以下配置添加到 seahub_settings.py 中:
CACHES = {'default': {'BACKEND': 'django_pylibmc.memcached.PyLibMCCache','LOCATION': '127.0.0.1:11211',}}
最后重启 Seahub 以使更改生效:
./seahub.sh restart
如果更改没有生效,请删除seahub_setting.pyc缓存文件.
使用memcached集群
在 Ubuntu 16.04 或者更新的系统上,可以直接使用 apt-get 来安装。
sudo apt-get install libmemcached-dev
在其他比较老的系统,比如 CentOS 7 或者 Ubuntu 14.04 上,你需要从源代码编译安装这个库。
sudo apt-get install build-essential # or sudo yum install gcc gcc-c++ make openssl-devel libffi-devel python-develwget https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gztar zxf libmemcachedcd libmemcached-1.0.18./configuremakesudo make install
然后安装相关的 Python 库。
sudo pip install pylibmcsudo pip install django-pylibmc
使用的是 memcached 集群(即同时使用多台 memcached 服务器),CACHES 变量应该设置如下。这个配置使用一致性哈希的方式把 key 分布在多个 memcached 服务器上。更多的信息可以参考 pylibmc 文档 和 django-pylibmc 文档
CACHES = {'default': {'BACKEND': 'django_pylibmc.memcached.PyLibMCCache','LOCATION': ['192.168.1.134:11211', '192.168.1.135:11211', '192.168.1.136:11211',],'OPTIONS': {'ketama': True,'remove_failed': 1,'retry_timeout': 3600,'dead_timeout': 3600}}}
最后重启 Seahub 以使更改生效:
./seahub.sh restart
如果更改没有生效,请删除seahub_setting.pyc缓存文件.
