Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
前言:Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
Redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。
Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。有字符串,链表,集合和有序集合。支持在服务器端计算集合的并,交和补集(difference)等,还支持多种排序功能。所以Redis也可以被看成是一个数据结构服务 器。
Redis的所有数据都是保存在内存中,然后不定期的通过异步方式保存到磁盘上(这称为“半持久化模式”);也可以把每一次数据变化都写入到一个usr/localend only file(aof)里面(这称为“全持久化模式”)。
为了提升redis高可用性,我们除了备份redis dump数据之外,还需要创建redis主从架构,可以利用从将数据库持久化(数据持久化通俗讲就是把数据保存到磁盘上,保证不会因为断电等因素丢失数据。
redis需要经常将内存中的数据同步到磁盘来保证持久化。redis支持两种持久化方式,一种是 Snapshotting(快照)也是默认方式,另一种是Append-only file(缩写aof)的方式。)
什么是redis的主从复制呢?
Redis主从复制,当用户往Master端写入数据时,通过Redis Sync机制将数据文件发送至Slave,Slave也会执行相同的操作确保数据一致;且实现Redis的主从复制非常简单。同时slave上还可以开启二级slave,三级slave从库,跟MySQL的主从类似。
安装redis可以参考上一次课程哦,这里直接安装slave,只需要在slave redis.conf配置文件中加入如下语句即可:
slaveof 192.168.33.10 6379 # slaveofmaster的ip master的端口。
一、安装Keepalived:
tar zxf keepalived-1.2.1.tar.gz
cd keepalived-1.2.1&&./configure --with-kernel-dir=/usr/src/kernels/2.6.18* &&make&& make install
DIR=/usr/local/ ;cp $DIR/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/
cp $DIR/etc/sysconfig/keepalived /etc/sysconfig/ &&mkdir -p /etc/keepalived
cp $DIR/sbin/keepalived /usr/sbin/
二、配置Keepalived:
vi /etc/keepalived/keepalied.conf
! Configuration File for keepalived
global_defs {
notification_email{
wgkgood@139.com
}
notification_email_fromwgkgood@139.com
smtp_server127.0.0.1
smtp_connect_timeout30
router_idLVS_DEVEL
}
# VIP1
vrrp_instance VI_1 {
state BACKUP
interface eth0
lvs_sync_daemon_inteface eth0
virtual_router_id151
priority 100
advert_int 5
nopreempt
authentication {
auth_typePASS
auth_pass2222
}
virtual_ipaddress{
192.168.33.100
}
}
virtual_server 192.168.33.100 6379 {
delay_loop 6
lb_algo wrr
lb_kind DR
persistence_timeout60
protocol TCP
real_server 192.168.33.10 6379 {
weight 100
notify_down/data/sh/redis.sh
TCP_CHECK {
connect_timeout10
nb_get_retry3
delay_before_retry3
connect_port6379
}
}
}
三、从Keepalived配置:
Redis从服务器配置keepalived.conf跟master一样,只需要把Realserver IP修改成:
real_server 192.168.33.11 ;优先级从100改成90即可。
vi /etc/keepalived/keepalied.conf
! Configuration File for keepalived
global_defs {
notification_email{
wgkgood@139.com
}
notification_email_fromwgkgood@139.com
smtp_server127.0.0.1
smtp_connect_timeout30
router_idLVS_DEVEL
}
# VIP1
vrrp_instance VI_1 {
state BACKUP
interface eth0
lvs_sync_daemon_inteface eth0
virtual_router_id151
priority 90
advert_int 5
nopreempt
authentication {
auth_typePASS
auth_pass2222
}
virtual_ipaddress{
192.168.33.100
}
}
virtual_server 192.168.33.100 6379 {
delay_loop 6
lb_algo wrr
lb_kind DR
persistence_timeout60
protocol TCP
real_server 192.168.33.11 6379 {
weight 100
notify_down/data/sh/redis.sh
TCP_CHECK {
connect_timeout10
nb_get_retry3
delay_before_retry3
connect_port6379
}
}
}
四、创建切换脚本:
在master、slave数据库上创建/data/sh/redis.sh脚本,内容为:
/etc/init.d/keepalived stop
然后分别重启两台Redis数据库上keepalived服务即可。
最后测试停止master Mysql服务,,是否会自动切换到Backup上即可。
下面关于Redis的文章您也可能喜欢,不妨参考下:
Ubuntu 14.04下Redis安装及简单测试
Redis主从复制基本配置
Redis集群明细文档
Ubuntu 12.10下安装Redis(图文详解)+ Jedis连接Redis
Redis系列-安装部署维护篇
CentOS 6.3安装Redis
Redis安装部署学习笔记
Redis配置文件redis.conf 详解
Redis 的详细介绍:请点这里
Redis 的下载地址:请点这里
本文永久更新链接地址:

随着互联网的迅速发展,高并发的问题也愈发突出。针对这个问题,Redis的出现成为了一个重要的方案,它通过内存读写的方式,解决了传统关系型数据库读写压力过大的问题。然而,单节点Redis在高并发情况下仍然存在性能瓶颈,因此需要使用Redis集群。本文将讲述如何使用ThinkPHP6实现Redis集群。一、Redis集群介绍Redis集群是Redis官方提供的分

Redis与Node.js的集群方案:如何实现高可用性引言:随着互联网的快速发展,数据的处理变得越来越庞大和复杂。为了保证系统的高可用性和可扩展性,我们需要使用分布式集群架构来处理存储和处理大量数据的需求。Redis作为一种高性能的内存数据库,结合Node.js作为后端编程语言,可以构建高可用的分布式集群方案。本文将介绍如何使用Redis与Node.js实现

Redis是一款强大的内存键值对存储数据库。与常规的RDBMS(关系型数据库管理系统)相比,它具有更高的性能和更好的伸缩性。Redis的优点之一是它可以作为分布式系统的核心技术。在这篇文章中,我们将探讨Redis集群的概念以及如何在PHP中使用Redis集群。Redis集群是什么?简单来说,Redis集群即为多个Redis实例的聚合体。Redis集群允许我们

学习Go语言中的数据库函数并实现Redis集群的读写操作引言:数据库是当今互联网应用不可或缺的一部分,而Go语言作为一门开发简洁高效的编程语言,也具备了良好的数据库操作能力。本文将介绍如何在Go语言中使用数据库函数,并实现Redis集群的读写操作。一、Go语言中的数据库函数Go语言中对数据库的操作主要通过database/sql包来实现。该包提供了基本的数据

如何通过Redis实现PHP数据缓存的集群部署?简介:PHP应用在面对高并发和大流量时,经常会遇到数据库性能瓶颈的问题,这时候使用缓存技术能很好地提升系统的性能和并发能力。Redis作为一个高性能的内存键值数据库,被广泛应用于缓存方案的实现。本文将介绍如何通过Redis实现PHP数据缓存的集群部署,以进一步提升性能和可扩展性。一、Redis集群概述Redis

Redis与PHP的集群方案:如何实现高可用性和扩展性引言:Redis是一种开源的高性能内存数据库,常用于构建快速、可扩展的应用程序。而PHP作为一门流行的服务器端脚本语言,与Redis配合使用能够实现高可用性和扩展性的集群方案。本文将介绍如何使用Redis与PHP搭建一个高可用性和扩展性的集群,并通过代码示例详细说明。一、Redis集群的搭建安装和配置Re

如何利用Redis和Julia语言实现高可用集群功能引言:随着互联网业务的发展,对于系统的可用性要求越来越高。为了确保系统在出现故障时能够继续提供服务,高可用性成为了各个行业中的关键需求之一。本文将介绍如何利用Redis和Julia语言实现高可用集群功能,并提供具体的代码示例。一、什么是高可用集群高可用集群是通过将多个节点组织在一起,从而形成一个整体的系统,

Redis是一个高性能的开源内存数据存储服务,因其快速读写速度、可持久化存储和多种数据结构支持,越来越受到开发者们的青睐。随着业务的不断壮大,Redis的存储容量已经无法满足需求,这时需要进行扩容。本文将介绍Redis集群扩容的方案及其实现细节。Redis集群的概念Redis集群是指将多个Redis实例连接在一起,形成一个大的Redis实例集合,可以提高Re


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

SublimeText3 Mac version
God-level code editing software (SublimeText3)

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.