Redis数据库

Redis是一种高性能的NoSQL数据库,常作为缓存工具使用,具备数据持久化和丰富的数据结构。本文介绍了Redis的特性、安装过程、启动与停止、主从复制及哨兵模式,深入探讨了Redis在高可用性方面的应用。
摘要由CSDN通过智能技术生成

目录

1.Redis简介

1.1Redis简介

1.2.Redis特点

1.3.为什么要用Redis

1.4.Redis与memcached的区别

2.Redis安装

2.1.yum安装

2.2.源码安装

 3.Redis启动和停止

3.1.Redis的启动和关闭

3.2.redis基础知识

4.Redis架构缓存实验

4.1.架构缓存准备

4.2.web服务器准备

5.Redis高可用概述

6.Redis主从复制

6.1.主从复制原理

6.2.主从复制实战

7.Redis哨兵模式

7.1.哨兵模式的定义

7.2.哨兵模式的作用

7.3.哨兵模式工作原理

7.4.哨兵模式搭建


1.Redis简介

1.1Redis简介

Redis 是当前互联网世界最为流行的 NoSQL(Not Only SQL)数据库。NoSQL 在互联网系统中的作用很大,因为它可以在很大程度上提高互联网系统的性能。

Redis 具备一定持久层的功能,也可以作为一种缓存工具。对于 NoSQL 数据库而言,作为持久层,它存储的数据 是半结构化的,这就意味着计算机在读入内存中有更少的规则,读入速度更快。

对于那些结构化、多范式规则的数据库系统而言,它更具性能优势。作为缓存,它可以支持大数据存入内存中,只 要命中率高,它就能快速响应,因为在内存中的数据读/写比数据库读/写磁盘的速度快几十到上百倍

1.2.Redis特点

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

Redis与其他key - value缓存产品有以下三个特点: 1. Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。 2. Redis不仅仅支持简单的key - value类型的数据,同时还提供list、set、zset、hash等数据结构的存储。 3. Redis支持数据的备份,即master - slave模式的数据备份。

1.3.为什么要用Redis

高性能: 假如用户第一次访问数据库中的某些数据。这个过程会比较慢,因为是从硬盘上读取的。将该用户访问的数据存在 缓存中,这样下一次再访问这些数据的时候就可以直接从缓存中获取了。操作缓存就是直接操作内存,所以速度相 当快。如果数据库中的对应数据改变的之后,同步改变缓存中相应的数据即可! 高并发: 直接操作缓存能够承受的请求是远远大于直接访问数据库的,所以我们可以考虑把数据库中的部分数据转移到缓存 中去,这样用户的一部分请求会直接到缓存这里而不用经过数据库。

1.4.Redis与memcached的区别

2.Redis安装

2.1.yum安装

yum install epel-release --下载fedora的epel仓库 yum install redis -- 安装redis数据库

2.2.源码安装

首先需要安装tcl8.5版本以上,以解决 make test报错问题

TCL8.6安装

wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz

tar xzvf tcl8.6.1-src.tar.gz -C /usr/local/

cd /usr/local/tcl8.6.1/unix/

./configure

make

make install 

安装完成后,再安装redis 

安装源码编译支持库:yum install gcc gcc-c++
下载包:wget https://download.redis.io/releases/redis-6.2.3.tar.gz
解压包:tar xzf redis-6.2.3.tar.gz
进入redis目录:cd redis-6.2.3
编译安装:make
编译测试:make test
编译安装历史清除:make distclean

 3.Redis启动和停止

3.1.Redis的启动和关闭

不指定配置文件启动

src/redis-server

会产生启动警告:

 解决办法如下:

echo 1024 > /proc/sys/net/core/somaxconn

在/etc/sysctl.conf 下添加如下内容:

net.ipv4.ip_forward = 1
vm.overcommit_memory=1

指定配置文件启动

src/redis-server redis.conf

        前端启动后,终端页面会进入redis控制台,无法进行其他操作,可以在redis.conf文件中修改为后台启动。

将文件中的daemonize no 修改为yes即可

daemonize yes

前台启动的关闭操作 

强制关闭:Ctrl+c

                   kill -9 进程

正常关闭:src/redis-cli shutdown

•强制关闭只需在Redis控制台直接执行即可(redis可能会丢失部分数据)。

•正常关闭需要另开一个终端窗口才可执行(redis不会丢失数据,推荐使用)。

一旦前端启动的关闭命令执行,则redis控制台关闭,redis服务也会停掉。

3.2.redis基础知识

1、单进程:单进程模型来处理客户端的请求。对读写等事件的相应。是通过epoll函数的包装来做到的。Redis的 实际处理速度完全依靠主进程的执行效率。Epoll是linux内核为处理大批量文件描述符而作了改进的epoll,是 linux下多路复用IO接口select/poll的增强版本,它能显著提高程序在大量并发连接中只有少量活跃的情况下的下 同CPU利用率。

2、默认16个库,类似数组下标从零开始,初始默认使用零号库。

3、select 命令切换

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值