Redis入门
Redis是什么:
①Redis:REmote DIctionary Server(远程字典服务器)
②是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(key/value)分布式内存数据库,基于内存运行
并支持持久化的NoSQL数据库,是当前最热门的NoSql数据库之一,也被人们称为数据结构服务器
能干嘛:
①内存存储和持久化:redis支持异步将内存中的数据写到硬盘上,同时不影响继续服务
②取最新N个数据的操作,如:可以将最新的10条评论的ID放在Redis的List集合里面
③模拟类似于HttpSession这种需要设定过期时间的功能
④发布、订阅消息系统
⑤定时器、计数器
官网:
①.官网http://redis.io/
②.中文翻译的官网http://www.redis.cn/
功能:(重要)
数据类型、基本操作和配置
持久化和复制,RDB/AOF
事务的控制
主从复制
在Linux上安装可能出现的问题:
运行make命令时故意出现的错误解析:
gcc是linux下的一个编译程序,是C程序的编译工具。 GCC(GNU Compiler Collection) 是 GNU(GNU's Not Unix) 计划提供的编译器家族,它能够支持 C, C++, Objective-C, Fortran,
Java 和 Ada 等等程序设计语言前端,同时能够运行在 x86, x86-64, IA-64, PowerPC, SPARC 和 Alpha 等等几乎目前所有的硬件平台
上。鉴于这些特征,以及 GCC 编译代码的高效性,使得 GCC 成为绝大多数自由软件开发编译的首选工具。虽然对于程序员们来说,编译器只是一个
工具,除了开发和维护人员,很少有人关注编译器的发展,但是 GCC 的影响力是如此之大,它的性能提升甚至有望改善所有的自由软件的运行效率,
同时它的内部结构的变化也体现出现代编译器发展的新特征。
首先安装gcc
yum install gcc-c++
二次make:jemalloc/jemalloc.h:没有那个文件或目录
如果之前使用make安装之后,报了这个错,一定要将原来文件删除再次进行安装
不然会报错找不到文件夹
安装:
下载,解压,安装
$ wget http://download.redis.io/releases/redis-3.2.4.tar.gz $ tar xzf redis-3.2.4.tar.gz $ cd redis-3.2.4 $ make $make install
安装成功之后,下面的命令启动服务器
$ src/redis-server
客户端测试命令:
$ src/redis-cli redis> set key val1 OK redis> get key "val1"
一般不建议直接使用源码,所以此时:在根目录建立myredis文件夹
赋值配置文件的代码
cp redis.conf /myredis
启动:
redis-server /myredis/redis.conf
进入客户端的编译测试系统:
redis-cli -p 6379
测试:
此时可以说安装成功!
启动之后的讲解:
查看默认安装目录:usr/local/bin
redis-benchmark
1.单进程
单进程模型来处理客户端的请求。对读写等事件的响应 是通过对epoll函数的包装来做到的。Redis的实际处理速度完全依靠主进程的执行效率
epoll是Linux内核为处理大批量文件描述符而作了改进的epoll,是Linux下多路复用IO接口select/poll的增强版本,
它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率。
2.默认16个数据库,类似数组下表从零开始,初始默认使用零号库
设置数据库的数量,默认数据库为0,可以使用SELECT <dbid>命令在连接上指定数据库id databases 16
3.select命令切换数据库
默认第一个库是0
不同库之间的数据是不相通的
4.dbsize查看当前数据库的key的数量
系统默认自带的有key
5.flushdb:清空当前库
6.Flushall;通杀全部库
7.统一密码管理,16个库都是同样密码,要么都OK要么一个也连接不上
8.Redis索引都是从零开始