一 入门概述
1.是什么
- Redis: REmote DIctionary Server(远程字典服务器)
- 是一个完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(key/value)分布式内存数据库,基于内存运行并支持持久化的NoSQL数据库,是当前最热门的NoSql数据库之一,也被人们称为数据结构服务器
- Redis与其他key-value缓存产品有以下三个特点
- Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用
- Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储
- Redis支持数据的备份,即master-slave模式的数据备份
2.能干吗
1.内存存储和持久化:redis支持异步将内存中的数据写到硬盘上,同时不影响继续服务
2.取最新的N个数据的操作
3.模拟类似于HttpSession这种需要设定过期时间的功能
4.发布,订阅消息系统
5.定时器,计数器
3.去哪下
Http://redis.io/
Http://www.redis.cn/
4.怎么玩
- 数据类型、基本操作和配置
- 持久化和复制,RDB/AOF
- 事务的控制
- 复制
二 VMWare+VMTools
三 Redis的安装
四 Redis启动后杂项基础知识讲解
1.单进程
- 单进程模型来处理客户端的请求,对读写等事件的响应是通过对epoll函数的包装来做到的.Redis的实际处理速度完全依靠主进程的执行效率
- Epoll是Linux内核为处理大批量文件描述符而作了改进的epoll,是Linux下多路复用IO接口select/poll的增强版本,它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率
2.默认16个数据库
类似数组下标从0开始,初始默认使用零号库
3.select命令切换数据库
4.Dbsize查看当前数据库的key的数量
5.Flushdb,Flushall
flushdb:清空当前库
flushall:清空全部库
6.统一密码管理
16个库都是统一密码,要么都OK要么一个也连不上