zoukankan      html  css  js  c++  java
  • Redis的简单了解以及主从复制

    1.Redis的简单了解

    Redis是一种高性能的分布式NoSql数据库,持久存储,高并发,数据类型丰富,通过现场申请内存空间,同时可以配置虚拟内存。
    五种数据类型:string(字符串,这种格式和memcache是一致的)、hash(哈希)、list(列表,包括队列和栈)、set(集合)、zset(有序集合),使用key-value对的时候,可以直接存入对象,无需进行序列化,默认的使用了.net中自己的序列化,进行处理,所以也会出现对象循环引用的问题,此时需要使用json.net序列化为字符串,然后在存入字符串即可
    持久化的两种方式:快照(默认)和AOF
    快照是设置每个某个时间,就将数据写到dump.rdb文件中
    AOF:将数据写到内存中,然后紧跟着将数据写到磁盘上

    快照配置(数据保存在dump.rdb文件)

    900s内修改一个数据,保存一次,300s内修改10次,保存一次,60s内修改10000次保存一次

    AOF配置(数据保存在aof文件)

     默认的AOF方式是关闭的,开启的时候需要改为yes

    默认的采用的是everysec,这是一种性能折中的方式,每秒后持久到磁盘的aof文件中,一秒可以做很多操作的。

    随着每次向aof执行保存操作,这个文件会变得越来越大,Redis中默认的机制是当服务器的负载低的时候,进行这个文件的重写。我们可以采取的方案:将主服务器的持久化机制全部关掉,(save关掉,aof日志记录关掉),只是在从服务器上开启这些功能,因为从服务器的负载能力比较大

    2.Redis的主从复制


    memcache无法实现主从复制,Redis可以实现主从复制,可以进行读写分离,一个主多从,只要修改一下配置文件即可,memchae进行读写的时候,是通过哈希算法,选择出任意一个来执行操作,无法实现主服务器和从服务器的区分。

    具体的操作步骤:

    (1).首先在磁盘上创建两个文件夹,Master服务器文件夹和Slave服务器文件夹

    (2).修改主服务器的配置,在redis.windows.conf中修改。例如:bind 127.0.0.1,端口号默认的使用6379

    (3)修改从服务器的相关配置,如端口号等

               port  6699

              bind 127.0.0.1

              slaveof 127.0.0.1 6379

    # slaveof <masterip> <masterport>
    slaveof 127.0.0.1 6379

    (4)分别启动Master服务和Slave服务

    3.解决死锁


    解决并发:
    1.使用缓存和静态页
    2.使用Nosql数据库
    3.可以做数据库集群,读写分离
    4.尽量访问方向一致
    5.使用临时表

  • 相关阅读:
    Oracle rownum用法、分页
    Oracle 序列(查询序列的值,修改序列的值)
    Photoshop 更换证件照底色
    Oracle 新建用户、赋予权限
    Oracle-SQL 建表
    SQL decode 函数的用法
    英语词汇800常用20类
    c语言常用排序
    js时间戳总结
    Javascript之编译器
  • 原文地址:https://www.cnblogs.com/XZhao/p/7294678.html
Copyright © 2011-2022 走看看