码迷,mamicode.com
首页 > 其他好文 > 详细

django-redis和py-redis

时间:2016-05-05 00:29:59      阅读:179      评论:0      收藏:0      [点我收藏+]

标签:

项目之前使用memcache做缓存,现在转到redis,改写几个语句的事情,然后就这种我把django-redis和py-redis搞混了,记录一下。

django默认使用memcache做缓存,这里的操作一般是cache.get()  cache.set()这种,要想操作使用from django.core.cache import cache就可以了。

具体安装及操作见:http://blog.beginman.cn/blog/83/  (好像跑题了啊喂)

 

django现在可以使用redis做缓存,但是使用cache默认不能操作redis,这个时候就出现了django-redis了,一个开源的。

这个是要安装的,然后配置就可以使用了,但是据说性能不够高,官方文档见https://niwinz.github.io/django-redis/latest/

 

而py-redis是一个python的库,用来操作redis,效率已经不错了,操作也比较简单。

类似与import redis              r.set()   r.get()   r.lpush()  r.lpop() 这种操作。

文档见:https://github.com/andymccurdy/redis-py

示例:

In [2]: import redis

In [3]: r = redis.StrictRedis(host=‘localhost‘, port=6379, db=0)

In [4]: r.set(‘a‘, ‘abc‘)
Out[4]: True

In [5]: r.get(‘a‘)
Out[5]: ‘abc‘

In [6]: r.get(‘b‘)

In [7]: r.setex(‘b‘, 30, ‘bcd‘)   # 设置过期时间,第一次读在30s内,有结果,第二次过了30s就没有内容了
Out[7]: True

In [8]: r.get(‘b‘)
Out[8]: ‘bcd‘

In [9]: r.get(‘b‘)

In [10]: r.lpush(‘l‘, 1)
Out[10]: 1L

In [11]: r.lpop(‘l‘)
Out[11]: ‘1‘

In [12]: r.llen()
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-12-e38b57a801ea> in <module>()
----> 1 r.llen()

TypeError: llen() takes exactly 2 arguments (1 given)

In [13]: r.llen(‘l‘)
Out[13]: 0

In [14]: 

  

django-redis和py-redis

标签:

原文地址:http://www.cnblogs.com/wswang/p/5460070.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!