Django缓存优化之redis
Redis 概述
Redis 是一个开源的Inmemory key-value 存储系统,性能高,很大程度上补偿了 memcached 的不足。支持多种存储类型,包括 string, list, set, zset(sorted set -- 有序集合)和 hash。
Redis 优点
1)异常快速:Redis的速度非常快,每秒能执行约11万集合,每秒约81000+条记录。
2)支持丰富的数据类型:Redis支持最大多数开发人员已经知道的像列表,集合,有序集合,散列数据类型。这使得它非常容易解决各种各样的问题,因为我们知道哪些问题特定数据类型处理得更好。
3)操作都是原子性:所有Redis操作是原子的,这保证了如果两个客户端同时访问的Redis服务器将获得更新后的值。 (不会产生冲突,也不会产生旧数据)
4)多功能实用工具:Redis是一个多实用的工具,可以在多个用例如缓存,消息,队列使用(Redis原生支持发布/订阅),任何短暂的数据,应用程序,如Web应用程序会话,网页命中计数等。
Redis 安装与配置
Ubuntu 上安装 Redis server:
# sudo apt-get install redis-server
启动 redis-server:
# redis-server
检查 Redis 是否正常工作:
# redis-cli
127.0.0.1:6379>
成功进入命令行,代表我们的redis是正常工作的
Redis 在没有配置文件的情况下会使用内置的默认配置,但这只适合于测试和开发阶段。
产品使用,需要提供配置文件redis.conf,配置文件内容格式如下:
keyword argument1 argument2 … argumentN
示例:
slaveof 127.0.0.1 6380
如果参数是字符串,且内容包含空白,则需要使用引号
requirpass “hello world”
配置项详解,请查看版本文档:
The self documented redis.conf for Redis 2.8 //2.8为版本号
The self documented redis.conf for Redis 2.6
The self documented redis.conf for Redis 2.4
也可以通过命令行传递参数,配置 Redis 服务,比如启动Redis 服务的时候可以设置端口号,slaveof这些参数
示例:
# ./redis-server --port 6380 --slaveof 127.0.0.1 6379
还可以使用命令在 Redis 运行时修改 Redis 部分配置:
CONFIG SET 和 CONFIG GET
注意:通过命令修改后的配置,重启 Redis 后失效。因为它没有保存