在ubuntu16中部署Django使用memcached作为缓存
Django支持很多缓存系统,如 文件系统缓存、 数据库缓存、 内存缓存(Memcached),其中,Memcached是最快的,没有之一,是绝配。因为所有的缓存数据都放在内存,没有了IO延迟,也没有文件系统和数据库访问的开销,服务器也轻松了许多。下面介绍部署Django使用memcached作为缓存的关键步骤。
1、首先是安装相关的库和依赖。
sudo apt-get install memcached
pip install python-memcached
sudo apt-get install python-dev
sudo apt-get install libmemcached-dev
pip install pylibmc
这个过程中如果有安装报名,说明你很有可能是依赖包没有安装安全,站长之前遇到过这种情况。那么请好好检查一下。安装以下依赖:
sudo apt-get install libxml2-dev libxslt1-dev python-dev
sudo apt-get install zlib1g-dev
sudo apt-get install libevent-dev
安装成功后,查看一下memcached有没有后台运行。
ps -ef |grep memcached
以上是比较简单的方案,也是站长推荐的方式,当然你也可以按照以下步骤进行源码安装。
wget https://sourceforge.net/projects/levent/files/libevent/libevent-2.0/libevent-2.0.22-stable.tar.gz --no-check-certificate
tar zxvf libevent-2.0.22-stable.tar.gz
cd libevent-2.0.22-stable
./configure --prefix=/usr
make
make install
wget http://www.memcached.org/files/memcached-1.4.24.tar.gz
tar zxvf memcached-1.4.24.tar.gz
cd memcached-1.4.24
./configure --with-libevent=/usr
make
make install
pip install python-memcached
/usr/local/bin/memcached -u root -d -p 11211 -c 256 -P /tmp/memcached.pid
ps -ef |grep memcached
memcached成功运行后就可以进行第2步了。
2、配置好settings.py里CACHES 的配置项,加入以下代码:
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': '127.0.0.1:11211',
}
}
并在MIDDLEWARE_CLASSES 里面的最前面加上:
'django.middleware.cache.UpdateCacheMiddleware',
在最后面加上:
'django.middleware.cache.FetchFromCacheMiddleware',
重启服务器,有了memcached做缓存,体验django飞一般的速度吧。