Redis如何实现数据库读写分离详解

 更新时间:2018年03月07日 09:56:50   作者:罗兵漂流记   我要评论
Redis的主从架构,能帮助我们实现读多,写少的情况,下面这篇文章主要给大家介绍了关于Redis如何实现数据库读写分离的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。

前言

Redis是一种NoSQL的文档数据库,通过key-value的结构存储在内存中,Redis读的速度是110000次/s,写的速度是81000次/s,性能很高,使用范围也很广。Redis是一个key-value存储系统。和Memcached类似,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。在部分场合可以对关系数据库起到很好的补充作用。它提供了Java,C/C++(hiredis),C#,PHP,JavaScript,Perl,Object-C,Python,Ruby等客户端,使用很方便。

下面用一个实例实现redis的读写分离,步骤如下:

第一步:下载redis

官网下载地址: https://redis.io/download

本地下载地址://www.jb51.net/softs/541181.html

下载最新的稳定版,解压拷贝到 ~/redis 中

编译代码:

$ make
$ test

第二步:配置redis

编辑redis.conf文件

bind 127.0.0.1
port 6379

拷贝redis.conf文件,改名为slave.conf,打开编辑

bind 127.0.0.1
port 6380
slaveof 127.0.0.1 6379  

第三步:运行服务

开启【主服务】

$ src/redis-server

开启【从服务】

$ src/redis-server slave.conf

 运行【主服务】的客户端

$ src/redis-cli

运行【从服务】的客户端

$ src/redis-cli -h 127.0.0.1 -p 6380

查看主从服务的关系

$ src/redis-cli info replication  

第四步:测试服务器

下面实例演示:在主服务器中存储一些数据,然后在从服务器中查询出来

 

 

可以看出,从服务器成功的获取到了主服务器的备份数据。

假如我们在从服务器中保存数据,看结果如何?

 

提示错误:

(error) READONLY You can't write against a read only slave.

 说明从服务器只能读数据,而不能写入数据。

数据在【从服务器】里【读】,在【主服务器】里【写】。

这样就实现了redis数据库的读写分离功能。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

您可能感兴趣的文章:

相关文章

  • 在ssm项目中使用redis缓存查询数据的方法

    在ssm项目中使用redis缓存查询数据的方法

    本文主要简单的使用Java代码进行redis缓存,即在查询的时候先在service层从redis缓存中获取数据。如果大家对在ssm项目中使用redis缓存查询数据的相关知识感兴趣的朋友跟随脚本之家小编一起看看吧
    2018-03-03
  • Redis 数据类型的详解

    Redis 数据类型的详解

    这篇文章主要介绍了Redis 数据类型的详解的相关资料,支持五种数据类型,字符串,哈希,列表,集合及zset,需要的朋友可以参考下
    2017-08-08
  • Redis教程(十二):服务器管理命令总结

    Redis教程(十二):服务器管理命令总结

    这篇文章主要介绍了Redis教程(十二):服务器管理命令总结,本文讲解了CONFIGGETparameter、CONFIG SETparameter value、FLUSHALL等命令,需要的朋友可以参考下
    2015-04-04
  • Redis实现分布式锁的几种方法总结

    Redis实现分布式锁的几种方法总结

    这篇文章主要介绍了Redis实现分布式锁的几种方法总结的相关资料, Redis实现与Zookeeper实现和数据库实现,需要的朋友可以参考下
    2017-07-07
  • Redis实现多人多聊天室功能

    Redis实现多人多聊天室功能

    这篇文章主要为大家详细介绍了Redis实现多人多聊天室功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-11-11
  • redis发布和订阅_动力节点Java学院整理

    redis发布和订阅_动力节点Java学院整理

    这篇文章主要为大家详细介绍了redis发布和订阅的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • linux安装配置及使用redis

    linux安装配置及使用redis

    本文主要跟大家讲解的是在Linux环境下,Redis的安装与部署,非常的简单实用,有需要的小伙伴可以参考下
    2018-04-04
  • 为啥懒 Redis 是更好的 Redis

    为啥懒 Redis 是更好的 Redis

    本文是由zicode, 李中凯, 无若翻译的英文文章Lazy Redis is better Redis,小编认为非常不错,这里推荐给大家
    2018-07-07
  • Python的Flask框架使用Redis做数据缓存的配置方法

    Python的Flask框架使用Redis做数据缓存的配置方法

    Redis数据库依赖于主存,在关系型数据库以外再配套Redis管理缓存数据将对性能会有很大的提升,这里我们就来看一下Python的Flask框架使用Redis做数据缓存的配置方法
    2016-06-06
  • Redis Sentinel实现哨兵模式搭建小结

    Redis Sentinel实现哨兵模式搭建小结

    这篇文章主要介绍了Redis Sentinel实现哨兵模式搭建小结,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12

最新评论