redis特点及持久化

redis特点及持久化

1、Redis概述

  • Redis是一个开源,先进的key-value存储,并用于构建高性能,可扩展的应用程序的完美解决方案。
  • Redis从它的许多竞争继承来的三个主要特点:
  • Redis数据库完全在内存中,使用磁盘仅用于持久性。
  • 相比许多键值数据存储,Redis拥有一套较为丰富的数据类型。String,List,set,map,sortSet
  • Redis可以将数据复制到任意数量的从服务器。

2、Redis 优势

  • 异常快速:Redis的速度非常快,每秒能执行约11万集合,每秒约81000+条记录。
  • 支持丰富的数据类型:Redis支持字符串、列表、集合、有序集合散列数据类型,这使得它非常容易解决各种各样的问题。
  • 操作都是原子性:所有Redis操作是原子的,这保证了如果两个客户端同时访问的Redis服务器将获得更新后的值。----计数器
  • 多功能实用工具:Redis是一个多实用的工具,可以在多个用例如缓存,消息,队列使用(Redis原生支持发布/订阅),任何短暂的数据,应用程序,如Web应用程序会话,网页命中计数等。

3、Redis安装部署

3.1、Redis下载、编译、安装

  • 下载redis3.0.5

                  wget http://download.redis.io/releases/redis-3.0.5.tar.gz

  • 解压文件,并创建软件连接

                  tar -zxvf  redis-3.0.5.tar.gz -C /export/servers/

                  ln  –s  redis-3.0.5/  redis

  • 编译redis源码

                  cd /export/servers/redis

                  make(先安装gcc)

  • 将编译后的可执行文件安装到/user/local/redis

                  make PREFIX=/usr/local/redis install

3.2、启动Redis

  • 启动方式一:Redis前台默认启动

进入redis安装目录,并启动Redis服务

                            cd /usr/local/redis/bin/

                            ./redis-server

  • 启动方式二:Redis使用配置文件启动

拷贝源码中的redis.conf文件到redis的安装目录

                           cp /export/servers/redis/redis.conf        /usr/local/redis/

修改redis.conf的属性

                           daemonize no  è daemonize yes

启动redis服务

                            cd  /usr/local/redis

                             bin/redis-server    ./redis.conf

3.3、日志文件及持久化文件配置

  • 修改生成默认日志文件位置

                  logfile "/usr/local/redis/logs/redis.log"

  • 配置持久化文件存放位置

                 dir /usr/local/redis/data/redisData

3.4、Redis客户端使用

         <dependency>

         <groupId>redis.clients</groupId>

         <artifactId>jedis</artifactId>

         <version>2.8.0</version>

         </dependency>

        

4、Redis持久化

有两种持久化方案:RDB和AOF

  1. RDB方式按照一定的时间间隔对数据集创建基于时间点的快照。

                  2)AOF方式记录Server收到的写操作到日志文件,在Server重启时通过回放这些写操作来重建数据集。该方式类似于MySQL中基于语句格式的binlog。当日志变大时Redis可在后台重写日志。

  • AOF持久化配置

                  1)修改redis.config配置文件,找到appendonly。默认是appendonly no。改成appendonly yes

                  2)再找到appendfsync 。默认是 appendfsync everysec

                            appendfsync always  

                           #每次收到写命令就立即强制写入磁盘,最慢的,但是保证完全的持久化,不推荐使用  

                            appendfsync everysec    

                             #每秒钟强制写入磁盘一次,在性能和持久化方面做了很好的折中,推荐  

                            appendfsync no    

                            #完全依赖os,性能最好,持久化没保证  

  • RDB持久化配置

         默认情况下,Redis保存数据集快照到磁盘,名为dump.rdb的二进制文件。可以设置让Redis在N秒内至少有M次数据集改动时保存数据集,或者你也可以手动调用SAVE或者BGSAVE命令。 

例如,这个配置会让Redis在每个60秒内至少有1000次键改动时自动转储数据集到磁盘

         save 60 1000 

5、Redis数据结构

见代码

猜你喜欢

转载自blog.csdn.net/wangwenzhe222/article/details/88549109