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

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

3.解决死锁

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

Redis的简单了解以及主从复制的更多相关文章

  1. Redis集群方案之主从复制(待实践)

    Redis有主从复制的功能,一台主可以有多台从,从还可以有多台从,但是从只能有一个主.并且在从写入的数据不会复制到主. 配置 在Redis中,要实现主从复制架构非常简单,只需要在从数据库的配置文件中加 ...

  2. 深入学习Redis(3):主从复制

    前言 在前面的两篇文章中,分别介绍了Redis的内存模型和Redis的持久化. 在Redis的持久化中曾提到,Redis高可用的方案包括持久化.主从复制(及读写分离).哨兵和集群.其中持久化侧重解决的 ...

  3. redis 的简单命令

    以下实例讲解了如何启动 redis 客户端: 启动 redis 客户端,打开终端并输入命令 redis-cli.该命令会连接本地的 redis 服务. $redis-cli redis > re ...

  4. Redis Cluster 简单安装配置

    1 新建目录 “/app/redis”,输入命令 mkdir -p /app/redis 2 先安装ruby-2.3.1.tar.gz 3 测试ruby是否安装成功,输入命令:gem,如果显示以下信息 ...

  5. Redis 的简单运算

    Redis 的简单运算 命令 说明 备注 incr key 在原字段上加 1 只能对整数操作 incrby key increment 在原字段上加上整数 (increment) 只能对整数操作 de ...

  6. python redis 实现简单的消息订阅

    python + redis 实现简单的消息订阅 订阅端 import redis from functools import wraps class Subscribe: def __init__( ...

  7. Redis源码阅读之主从复制——Slave视角

    Redis主从复制 为了提高性能和系统可用,Redis都会做主从复制,一来可以分担主库压力,二来在主库挂掉的时候从库依旧可以提供服务.Redis的主从复制是异步复制,返回结果给客户端和同步命令到从库是 ...

  8. Redis数据库 02事务| 持久化| 主从复制| 集群

    1. Redis事务 Redis不支持事务,此事务不是关系型数据库中的事务: Redis事务是一个单独的隔离操作:事务中的所有命令都会序列化.按顺序地执行.事务在执行的过程中,不会被其他客户端发送来的 ...

  9. redis介绍(5)主从复制

    redis的主从复制: 主从复制介绍:redis的主从复制情况下,一个master节点下可以有多个slave节点,而且每个slave节点又可以有很多slave节点,形成很大的集群量级,我简单画个图,如 ...

随机推荐

  1. e554. 在浏览器状态栏中显示信息

    // See also e551 精简的Applet applet.showStatus("Your Message Here"); Related Examples

  2. CentOS系统资源常用命令

    系统: # uname -a   # 查看内核/操作系统/CPU信息 # cat /etc/issue # cat /etc/redhat-release # 查看操作系统版本 # cat /proc ...

  3. Linux基础知识之man手册的使用

    在Linux中man的使用频率应该是很高的,灵活运用它可以让自己快速的掌握一个不熟悉命令的使用方法.下面来介绍下man 环境CentOS6.8 man - format and display the ...

  4. cake build使用:

    开源地址: https://github.com/cake-build/cake 依赖 powershell 3.0 Windows 获取引导程序: Invoke-WebRequest http:// ...

  5. asp.net mvc中用angularJs写的增删改查的demo。初学者,求指点。。

    直接给个代码下载链接.... http://pan.baidu.com/s/1FfVgq 本人刚刚学习angularJs,感觉双向数据绑定蛮爽的... 之前的代码存在点问题,已修复

  6. 【Latex】数学公式排版

    http://www.cnblogs.com/houkai/p/3399646.html 常用latex数学符号表 https://zh.wikipedia.org/wiki/Help:%E6%95% ...

  7. CSS样式中” 大于号”

    CSS样式中” 大于号” 在一段CSS代码中见到一个大于号(>),代码如下: BODY#css-zen-garden > DIV#extraDiv2 { BACKGROUND-IMAGE: ...

  8. Java精选笔记_Java编程基础

    Java的基本语法 Java代码的基本格式 修饰符 class 类名 {   程序代码 } 一个Java源文件只定义一个类,不同的类使用不同的源文件定义:将每个源文件中单独定义的类都定义成public ...

  9. 数据库中存储js代码无法json解析

    .net-------------------Microsoft.JScript.GlobalObject.escape(); 编码 Mircorsoft.JScript.GlobalObject.u ...

  10. linux 安装 nodejs

    原文地址:https://nodejs.org/en/download/package-manager/#enterprise-linux-and-fedora 1)定位到nodejs的官方源(如果直 ...