redis入门介绍及在linux下的安装

一,redis入门介绍

1、Redis:REmote DIctionary Server(远程字典服务器)

    是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(key/value)分布式内存数据库,基于内存运行并支持持久化的NoSQL数据库,是当前最热门的NoSql数据库之一,也被人们称为数据结构服务器

2、Redis 与其他 key - value 缓存产品有以下三个特点

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

(2)Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储

(3)Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储

3、作用

(1)内存存储和持久化:redis支持异步将内存中的数据写到硬盘上,同时不影响继续服务

(2)取最新N个数据的操作,如:可以将最新的10条评论的ID放在Redis的List集合里面

(3)模拟类似于HttpSession这种需要设定过期时间的功能

(4)发布、订阅消息系统

(5)定时器、计数器

4.重要知识

(1)数据类型、基本操作和配置

(2)持久化和复制,RDB/AOF

(3)事务的控制

(4)复制

5、CAP

    C:Consistency(强一致性)

    A:Availability(可用性)

    P:Partition tolerance(分区容错性)

 CAP理论的核心是:一个分布式系统不可能同时很好的满足一致性,可用性和分区容错性这三个需求,
最多只能同时较好的满足两个。
因此,根据 CAP 原理将 NoSQL 数据库分成了满足 CA 原则、满足 CP 原则和满足 AP 原则三 大类:
CA - 单点集群,满足一致性,可用性的系统,通常在可扩展性上不太强大。
CP - 满足一致性,分区容忍必的系统,通常性能不是特别高。

AP - 满足可用性,分区容忍性的系统,通常可能对一致性要求低一些。

6、CAP理论就是说在分布式存储系统中,最多只能实现上面的两点。

而由于当前的网络硬件肯定会出现延迟丢包等问题,所以分区容忍性是我们必须需要实现的。

所以我们只能在一致性和可用性之间进行权衡,没有NoSQL系统能同时保证这三点。
=================================================================
C:强一致性 A:高可用性 P:分布式容忍性
 CA 传统Oracle数据库
 AP 大多数网站架构的选择

 CP Redis、Mongodb


 注意:分布式架构的时候必须做出取舍。
一致性和可用性之间取一个平衡。多余大多数web应用,其实并不需要强一致性。
因此牺牲C换取P,这是目前分布式数据库产品的方向
=================================================================
一致性与可用性的决择

对于web2.0网站来说,关系数据库的很多主要特性却往往无用武之地

数据库事务一致性需求 
  很多web实时系统并不要求严格的数据库事务,对读一致性的要求很低, 有些场合对写一致性要求并不高。允许实现最终一致性。

数据库的写实时性和读实时性需求
  对关系数据库来说,插入一条数据之后立刻查询,是肯定可以读出来这条数据的,但是对于很多web应用来说,并不要求这么高的实时性,比方说发一条消息之 后,过几秒乃至十几秒之后,我的订阅者才看到这条动态是完全可以接受的。

对复杂的SQL查询,特别是多表关联查询的需求 

  任何大数据量的web系统,都非常忌讳多个大表的关联查询,以及复杂的数据分析类型的报表查询,特别是SNS类型的网站,从需求以及产品设计角 度,就避免了这种情况的产生。往往更多的只是单表的主键查询,以及单表的简单条件分页查询,SQL的功能被极大的弱化了。


二、在linux下安装

1、页面http://www.redis.net.cn/download/中下载获得redis-3.0.4.tar.gz,后将它放入我们的Linux目录/opt

2、/opt目录下,解压命令:tar -zxvf redis-3.0.4.tar.gz

3、解压完成后出现文件夹:redis-3.0.4

4、进入目录:cd redis-3.0.4

5、在redis-3.0.4目录下执行make命令(需要有gcc编译器,如果没有yum search gcc        yum install  gcc~~~)

6、如果make完成后继续执行make install

7、查看默认安装目录:usr/local/bin

  (1)redis-benchmark:性能测试工具,可以在自己本子运行,看看自己本子性能如何

  (2)redis-check-aof:修复有问题的AOF文件

  (3)redis-check-dump:修复有问题的dump.rdb文件

  (4)redis-cli:客户端,操作入口

  (5)redis-sentinel:redis集群使用

  (6)  redis-server:Redis服务器启动命令

8、修改redis.conf文件将里面的daemonize no 改成 yes,让服务在后台启动

9、将默认的redis.conf拷贝到自己定义好的一个路径下,比如

                mkdir    /myconf

                cp   /opt/redis-3.0.4/redis.conf        /myconf/redis.conf

10、启动  redis-server    /myconf/redis.conf

                redis-cli   

11、测试    ping       返回PONG

        







猜你喜欢

转载自blog.csdn.net/qq_27339781/article/details/80698130