redis是啥?

Redis的全称是REmote DIctionary Server,是一个高效的内存键值数据库,常被用来做分布式的高速缓存,相比较我们常规使用的Mysql、MongoDB等数据库,Redis的最大特点在于数据读写全部在内存中进行,进而带来极大的效率优势。

redis数据持久化?

Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。

redis数据类型

Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)

redis和Memcahe比较

1.redis采用的是单线程异步非阻塞的异步处理机制可以减少线程切换的代价

2.redis支持持久化,redis不仅可以用来当缓存还能用来做持久化数据库

3.支持多种数据格式

redis基础操作

启动服务:redis-server &  启动并后台运行,也可以直接去安装目录配置和启动
连接数据库:redis-cli -h ip -p port -n dbname
切换数据库:select 1 2 3...

redis其他操作-菜鸟

https://www.runoob.com/redis/redis-data-types.html

python操作redis

安装

pip install redis

使用

import redis

r = redis.Redis(host='127.0.0.1', port=6379, db=12)

r.set('name','zx')
print(r.get('name'))

r.rpush('wl','1','2','3')
print(r.lrange('wl', 0, -1))

r.zadd('game', {'a': 10, 'b': 20, 'c': 15, 'd':20})
print(r.zrevrange('game', 0, -1))
print(r.zrange('game', 0, -1))

b'zx'
[b'1', b'2', b'3', b'1', b'2', b'3', b'1', b'2', b'3']
[b'd', b'b', b'c', b'a']
[b'a', b'c', b'b', b'd']

取代Django默认的Me

安装

pip install django-redis

注意

要在有django环境的情况下才能运行

# 缓存配置redis数据库
CACHES = {
    "default": {
        "BACKEND": "django_redis.cache.RedisCache",
        "LOCATION": "redis://127.0.0.1:6379/12",
        "OPTIONS": {
            "CLIENT_CLASS": "django_redis.client.DefaultClient",
            "CONNECTION_POOL_KWARGS": {"max_connections": 100}
        }
    }
}

使用

使用的时候和原来的方式相同,只是取代了之前的缓存数据库

import os, django
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "lufeiapi.settings.dev")
django.setup()


from django.core.cache import cache

cache.set('name', 'bob', 20)
print(cache.get('name'))

bob