Redis培训
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
的最前面, # 以避免在运行时覆盖配置的改变,相反,你就把它放在后面(外国人真啰嗦)。 # # include /path/to/local.conf # include /path/to/other.conf
GENERAL通用配置
daemonize no pidfile /var/run/redis.pid port 6379 bind 127.0.0.1 timeout 300 loglevel verbose logfile “” databases 16
Redis配置文件
units单位 INCLUDES包含 GENERAL通用 SNAPSHOTTING快照 REPLICATION复制 SECURITY安全 LIMITS限制 APPEND ONLY MODE追加 常见配置redis.conf介绍
units单位
# 当你需要为某个配置项指定内存大小的时候,必须要带上单位, # 通常的格式就是 1k 5gb 4m 等酱紫: # # 1k => 1000 bytes # 1kb => 1024 bytes # 1m => 1000000 bytes # 1mb => 1024*1024 bytes # 1g => 1000000000 bytes # 1gb => 1024*1024*1024 bytes # # 单位是不区分大小写的,你写 1K 5GB 4M 也行
例如在评级系统中,比如社会化新闻网站 reddit.com,你可以把每个新提交的链接添 加到一个list,用LRANGE可简单的对结果分页。
在博客引擎实现中,你可为每篇日志设置一个list,在该list中推入博客评论,等等。
Redis能干嘛?
内存存储和持久化:redis支持异步将内存中的数据写到硬盘上,同时不影响继续 服务;取最新N个数据的操作,如:可以将最新的10条评论的ID放在Redis的List 集合里面;模拟类似于HttpSession这种需要设定过期时间的功能;发布、订阅消 息系统;定时器、计数器
添加的数据有空间存放。 (6)noeviction:不进行移除。针对写操作,只是返回错误信息 maxmemory-samples:每次回收时检查的采样数量
单机版的Redis怎么玩?
查询redis的版本号:redis-server –v和redis-cli –v ps –ef|grep redis:查看当前redis进程状态 为什么默认端口为6379 redis-cli –p 6379 Redis测试并发性能:./redis-benchmark -p 6379 Redis有多少个数据库?Select命令的使用 基本指令:dbsize( key的数量),type(key的类型)keys *(所有key值),set
Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、 缓存和消息中间件。 它支持多种类型的数据结构,如 字符串(strings), 散列 (hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询。 Redis 内置了 复 制(replication),LUA脚本(Lua scripting), LRU驱动事件(LRU eviction),事 务(transactions) 和不同级别的 磁盘持久化(persistence), 并通过 Redis哨兵 (Sentinel)和自动 分区(Cluster)提供高可用性(high availability)。
据使用 (2)allkeys-lru:尝试回收最少使用的键(LRU),使得新添加的数据有空间存放。 (3)volatile-random:从已设置过期时间的数据集中任意选择数据淘汰,以供新数据使用 (4)allkeys-random:回收随机的键使得新添加的数据有空间存放。 (5)volatile-ttl:回收在过期集合的键,并且优先回收存活时间(TTL)较短的键,使得新
Redis学习分享
思路
1.是什么 2.能干嘛 3.去哪下 4.怎么玩
Redis的诞生
出生于西西里岛的意大利人(antirez)发明的。 早年是系统管理员,2004到2006年做嵌入式工作,之后接触web,2007年和朋友
共同创建一个网站LLOOGG.com,并为了解决这个网站的负载问题,而在2009年 开发了Redis数据库。 LLOOGG.com网站是一个访客信息网站,网站可以通过javascript脚步,将访客IP 地址、所属的国家、阅览信息、访问网页地址传送给LLOOGG.com网站。 随着LLOOGG的用户越来愈多,LLOOGG需要维护的列表数量也越来越多,要执 行的弹出和推入操作也越来越多,当时LLOOGG使用的数据库是mysql,而每次 mysql执行推入或弹出操作,都需要进行硬盘的读写操作,程序的性能严重受制 于硬盘的I/O,很多操作都堆在那里,然后网站就没法运作了。
Redis怎么玩?
Redis下载和安装 Redis几个重要的文件 配置 基本操作指令 持久化 Redis集群 Redis复制
Redis下载和安装
安装 下载,解压,编译: $ wget http://download.redis.io/releases/redis-4.0.9.tar.gz $ tar xzf redis-4.0.9.tar.gz $ cd redis-4.0.9 $ make 二进制文件是编译完成后在src目录下,通过下面的命令启动Redis服务: $ src/redis-server Redis的启动方式(1) ./redis-server &(2)./redis-server ../redis.conf
(新增一个key),get(查看key对应的value),incr(递增),expire (过期), ttl(剩余存活时间),del(删除key), flushdb(清空当前库), flushall(通杀全 部库), CONFIG get(配置文件查询), CONFIG SET(配置文件设置), CONFIG REWRITE(配置文件重写),save和bgsave Key模糊查询的三个通配符:keys ???;keys a*;keys *a;keys a[abc] 关闭redis:shutdown和kill 源自文库9(pkill -9 redis是清掉所有redis进程) 重启redis:redis-server
Redis支持的几大数据类型
字符串(strings):set;get 列表(lists):lpush mylist 1 2 3 4 1 ; lrange mylist 0 -1 集合(sets):sadd a1 1 2 3 ; SMEMBERS a1(差集:sdiff,交集:sinter,并
SECURITY安全配置
相关配置默认都被注释掉了 Redis的密码设置
LIMITS限制配置
maxclients maxmemory <bytes> maxmemory-policy noeviction(默认设置) (1)volatile-lru: 从已设置过期时间的数据集中挑选最近最少使用的数据淘汰,以供新数
Nosql(Redis,memcache,Mongdb)
新浪:BerkeleyDB+redis;美团:redis+tair;阿里、百度:memcache+redis
Redis的一些简单描述
是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(key/value)分 布式内存数据库,基于内存运行并支持持久化的NoSQL数据库,是当前最热门的NoSql 数据库之一,也被人们称为数据结构服务器
集:sunion)(共同关注的好友) 有序集合(sorted sets):zadd a2 60 k1 50 k2 70 k3 ;ZRANGE myzset 0 -1;
我们目前对redis的应用:存token,查余额,短信验证码的过期时间,短信验证 码的累计发送次数,会务系统的最新十条评论
去哪里下载?
英文:http://redis.io/ 中文:http://www.redis.cn/ 文档:http://redisdoc.com/ Redis版本:windows和linux版本 目前最新稳定版本4.0.9 最新下载版是正在开发中的版本,供大家研究测试用
Redis是什么?
Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. It supports data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs and geospatial indexes with radius queries. Redis has built-in replication, Lua scripting, LRU eviction, transactions and different levels of on-disk persistence, and provides high availability via Redis Sentinel and automatic partitioning with Redis Cluster.
Value最大可支持512M
字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合 (sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询
List的常用案例
list可被用来实现聊天系统。还可以作为不同进程间传递消息的队列。关键是,你可以 每次都以原先添加的顺序访问数据。这不需要任何SQL ORDER BY 操作,将会非常快, 也会很容易扩展到百万级别元素的规模。
Redis几个重要的文件
redis.conf:配置文件 redis-benchmark:性能测试工具,可以在自己本子运行,看看自己本子性能如何 redis-check-aof:修复有问题的AOF文件,rdb和aof后面讲 redis-check-rdb:修复有问题的dump.rdb文件 redis-cli:客户端,操作入口 redis-sentinel:哨兵模式,redis集群使用 redis-server:Redis服务器启动命令
INCLUDES包含
################################## INCLUDES ###################################
# 假如说你有一个可用于所有的 redis server 的标准配置模板, # 但针对某些 server 又需要一些个性化的设置, # 你可以使用 include 来包含一些其他的配置文件,这对你来说是非常有用的。 # # 但是要注意哦,include 是不能被 config rewrite 命令改写的 # 由于 redis 总是以最后的加工线作为一个配置指令值,所以你最好是把 include 放在这个文件
GENERAL通用配置
daemonize no pidfile /var/run/redis.pid port 6379 bind 127.0.0.1 timeout 300 loglevel verbose logfile “” databases 16
Redis配置文件
units单位 INCLUDES包含 GENERAL通用 SNAPSHOTTING快照 REPLICATION复制 SECURITY安全 LIMITS限制 APPEND ONLY MODE追加 常见配置redis.conf介绍
units单位
# 当你需要为某个配置项指定内存大小的时候,必须要带上单位, # 通常的格式就是 1k 5gb 4m 等酱紫: # # 1k => 1000 bytes # 1kb => 1024 bytes # 1m => 1000000 bytes # 1mb => 1024*1024 bytes # 1g => 1000000000 bytes # 1gb => 1024*1024*1024 bytes # # 单位是不区分大小写的,你写 1K 5GB 4M 也行
例如在评级系统中,比如社会化新闻网站 reddit.com,你可以把每个新提交的链接添 加到一个list,用LRANGE可简单的对结果分页。
在博客引擎实现中,你可为每篇日志设置一个list,在该list中推入博客评论,等等。
Redis能干嘛?
内存存储和持久化:redis支持异步将内存中的数据写到硬盘上,同时不影响继续 服务;取最新N个数据的操作,如:可以将最新的10条评论的ID放在Redis的List 集合里面;模拟类似于HttpSession这种需要设定过期时间的功能;发布、订阅消 息系统;定时器、计数器
添加的数据有空间存放。 (6)noeviction:不进行移除。针对写操作,只是返回错误信息 maxmemory-samples:每次回收时检查的采样数量
单机版的Redis怎么玩?
查询redis的版本号:redis-server –v和redis-cli –v ps –ef|grep redis:查看当前redis进程状态 为什么默认端口为6379 redis-cli –p 6379 Redis测试并发性能:./redis-benchmark -p 6379 Redis有多少个数据库?Select命令的使用 基本指令:dbsize( key的数量),type(key的类型)keys *(所有key值),set
Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、 缓存和消息中间件。 它支持多种类型的数据结构,如 字符串(strings), 散列 (hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询。 Redis 内置了 复 制(replication),LUA脚本(Lua scripting), LRU驱动事件(LRU eviction),事 务(transactions) 和不同级别的 磁盘持久化(persistence), 并通过 Redis哨兵 (Sentinel)和自动 分区(Cluster)提供高可用性(high availability)。
据使用 (2)allkeys-lru:尝试回收最少使用的键(LRU),使得新添加的数据有空间存放。 (3)volatile-random:从已设置过期时间的数据集中任意选择数据淘汰,以供新数据使用 (4)allkeys-random:回收随机的键使得新添加的数据有空间存放。 (5)volatile-ttl:回收在过期集合的键,并且优先回收存活时间(TTL)较短的键,使得新
Redis学习分享
思路
1.是什么 2.能干嘛 3.去哪下 4.怎么玩
Redis的诞生
出生于西西里岛的意大利人(antirez)发明的。 早年是系统管理员,2004到2006年做嵌入式工作,之后接触web,2007年和朋友
共同创建一个网站LLOOGG.com,并为了解决这个网站的负载问题,而在2009年 开发了Redis数据库。 LLOOGG.com网站是一个访客信息网站,网站可以通过javascript脚步,将访客IP 地址、所属的国家、阅览信息、访问网页地址传送给LLOOGG.com网站。 随着LLOOGG的用户越来愈多,LLOOGG需要维护的列表数量也越来越多,要执 行的弹出和推入操作也越来越多,当时LLOOGG使用的数据库是mysql,而每次 mysql执行推入或弹出操作,都需要进行硬盘的读写操作,程序的性能严重受制 于硬盘的I/O,很多操作都堆在那里,然后网站就没法运作了。
Redis怎么玩?
Redis下载和安装 Redis几个重要的文件 配置 基本操作指令 持久化 Redis集群 Redis复制
Redis下载和安装
安装 下载,解压,编译: $ wget http://download.redis.io/releases/redis-4.0.9.tar.gz $ tar xzf redis-4.0.9.tar.gz $ cd redis-4.0.9 $ make 二进制文件是编译完成后在src目录下,通过下面的命令启动Redis服务: $ src/redis-server Redis的启动方式(1) ./redis-server &(2)./redis-server ../redis.conf
(新增一个key),get(查看key对应的value),incr(递增),expire (过期), ttl(剩余存活时间),del(删除key), flushdb(清空当前库), flushall(通杀全 部库), CONFIG get(配置文件查询), CONFIG SET(配置文件设置), CONFIG REWRITE(配置文件重写),save和bgsave Key模糊查询的三个通配符:keys ???;keys a*;keys *a;keys a[abc] 关闭redis:shutdown和kill 源自文库9(pkill -9 redis是清掉所有redis进程) 重启redis:redis-server
Redis支持的几大数据类型
字符串(strings):set;get 列表(lists):lpush mylist 1 2 3 4 1 ; lrange mylist 0 -1 集合(sets):sadd a1 1 2 3 ; SMEMBERS a1(差集:sdiff,交集:sinter,并
SECURITY安全配置
相关配置默认都被注释掉了 Redis的密码设置
LIMITS限制配置
maxclients maxmemory <bytes> maxmemory-policy noeviction(默认设置) (1)volatile-lru: 从已设置过期时间的数据集中挑选最近最少使用的数据淘汰,以供新数
Nosql(Redis,memcache,Mongdb)
新浪:BerkeleyDB+redis;美团:redis+tair;阿里、百度:memcache+redis
Redis的一些简单描述
是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(key/value)分 布式内存数据库,基于内存运行并支持持久化的NoSQL数据库,是当前最热门的NoSql 数据库之一,也被人们称为数据结构服务器
集:sunion)(共同关注的好友) 有序集合(sorted sets):zadd a2 60 k1 50 k2 70 k3 ;ZRANGE myzset 0 -1;
我们目前对redis的应用:存token,查余额,短信验证码的过期时间,短信验证 码的累计发送次数,会务系统的最新十条评论
去哪里下载?
英文:http://redis.io/ 中文:http://www.redis.cn/ 文档:http://redisdoc.com/ Redis版本:windows和linux版本 目前最新稳定版本4.0.9 最新下载版是正在开发中的版本,供大家研究测试用
Redis是什么?
Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. It supports data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs and geospatial indexes with radius queries. Redis has built-in replication, Lua scripting, LRU eviction, transactions and different levels of on-disk persistence, and provides high availability via Redis Sentinel and automatic partitioning with Redis Cluster.
Value最大可支持512M
字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合 (sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询
List的常用案例
list可被用来实现聊天系统。还可以作为不同进程间传递消息的队列。关键是,你可以 每次都以原先添加的顺序访问数据。这不需要任何SQL ORDER BY 操作,将会非常快, 也会很容易扩展到百万级别元素的规模。
Redis几个重要的文件
redis.conf:配置文件 redis-benchmark:性能测试工具,可以在自己本子运行,看看自己本子性能如何 redis-check-aof:修复有问题的AOF文件,rdb和aof后面讲 redis-check-rdb:修复有问题的dump.rdb文件 redis-cli:客户端,操作入口 redis-sentinel:哨兵模式,redis集群使用 redis-server:Redis服务器启动命令
INCLUDES包含
################################## INCLUDES ###################################
# 假如说你有一个可用于所有的 redis server 的标准配置模板, # 但针对某些 server 又需要一些个性化的设置, # 你可以使用 include 来包含一些其他的配置文件,这对你来说是非常有用的。 # # 但是要注意哦,include 是不能被 config rewrite 命令改写的 # 由于 redis 总是以最后的加工线作为一个配置指令值,所以你最好是把 include 放在这个文件