redis集群搭建

redis集群

风格不统一 提交于 2020-01-19 02:34:52
一、集群与分布式概述 1.什么是集群? 集群就是 很多服务器组成的一个网络。指的是将多台服务器集中在一起,实现同一业务。 2.为什么要集群? 一台服务器不能满足开发需要的时候,需要多台服务器来支持。这个时候就需要做集群,但是集群往往伴随着分布式; 3.什么是分布式? 分布式是指将不同的业务分布在不同的地方. web应用和数据库服务分开. 4.集群的优化 5.集群的两大关键特性及两大能力 集群提供了以下两个关键特性: 1、可扩展性--集群的性能不限于单一的服务实体,新的服务实体可以动态地加入到集群,从而增强集群的性能。动态添加服务器 2、高可用性--集群通过服务实体冗余使客户端免于轻易遇到out of service的警告。在集群中,同样的服务可以由多个服务实体提供。如果一个服务实体失败了,另一个服务实体会接管失败的服务实体。集群提供的从一个出错的服务实体恢复到另一个服务实体的功能增强了应用的可用性 当访问的服务器挂了时,集群要有能力找可以正常使用额服务器继续提供服务器。 两大能力: 1、负载均衡--负载均衡能把任务比较均衡地分布到集群环境下的计算和网络资源。 2、错误恢复--由于某种原因,执行某个任务的资源出现故障,另一服务实体中执行同一任务的资源接着完成任务。这种由于一个实体中的资源不能工作,另一个实体中的资源透明的继续完成任务的过程叫错误恢复。 当访问的服务器挂了时

redis伪集群搭建(亲测无坑)

自古美人都是妖i 提交于 2020-01-18 12:15:16
一、单机版安装部署 ,伪集群只需要操作前1-8步即可,再往下浏览找到:二、单机版-伪集群 安装部署继续搭建,如需设置密码参照第10步 1、安装基本工具 yum install -y gcc-c++ vim lrzsz wget 2、创建、进入目录 mkdir /opt/redis cd /opt/redis 3、下载 wget http://download.redis.io/releases/redis-5.0.5.tar.gz 4、解压、查看文件 tar zxvf redis-5.0.5.tar.gz ll 5、赋权 chmod 777 -R redis-5.0.5 6、进入目录,查看文件列表 cd redis-5.0.5 7、编译、安装文件 安装目录 /usr/local/redis make install PREFIX=/usr/local/redis 8、进入目录、查看文件列表 cd /usr/local/redis/ 9、控制台启动,使用命令./redis-server bin/redis-server 出现以下结果证明启动成功: 10、后台启动 (1)从redis解压目录复制redis.conf到redis安装目录 cp /opt/redis/redis-5.0.5/redis.conf /usr/local/redis/ (2)修改redis.conf vim

Redis 哨兵集群搭建

泪湿孤枕 提交于 2020-01-17 06:07:20
Redis 哨兵集群搭建 在搭建哨兵集群之前先搭建 redis主从服务器 redis主从复制详尽步骤 哨兵服务器的搭建最少要3台服务,这里是在上一篇的基础上搭建的是伪集群服务 如图 192.168.172.21 服务器上创建文件夹 从 redis源码里面复制一份 redis-sentinel.conf 各个端口文件夹下面并改名 [ root@localhost ~ ] # mkdir / opt / redis / redis - sentinel / { sentinel_26379 , sentinel_26380 , sentinel_26381 } [ root@localhost ~ ] # tree / opt / redis / / opt / redis / ├── redis - 5.0 .7 │ ├── bin │ │ ├── redis - benchmark │ │ ├── redis - check - aof │ │ ├── redis - check - rdb │ │ ├── redis - cli │ │ ├── redis - sentinel -> redis - server │ │ └── redis - server │ ├── conf │ │ └── redis . conf │ ├── logs │ │ └── redis_6379

redis集群

我只是一个虾纸丫 提交于 2020-01-17 01:07:47
redis集群 什么是集群? 集群就是多个服务器集中再一起 ,去处理同一个业务 集群和分布式概念 分布式是指将不同的业务分布在不同的地方,多个服务器去完成不同的业务功能 集群指的是将多台服务器集中在一起,实现同一业务 集群的好处-------- 解决 高并发 大数据的问题 集群的特点 (1) 扩展性 --可以动态的去扩展的服务器 (2) 高可用 --> 具备容错的功能 (错误恢复) (3) 负载均衡 -->把请求分配到不同的服务器里面 Redis集群方案 方案一 主从复制 优点: 支持主从复制,主机会自动将数据同步到从机,可以进行读写分离 缺点:不具备自动容错和恢复功能(keepalive) 获取 手动重启 扩展服务器比较麻烦 方案二: 哨兵模式 Redis 2.8中提供了哨兵工具来实现自动化的系统监控和故障恢复功能 哨兵的作用就是监控Redis系统的运行状况。它的功能包括以下两个。 (1)监控主服务器和从服务器是否正常运行。 (2)主服务器出现故障时自动将从服务器转换为主服务器 优点: 主从可以自动切换,系统更健壮,可用性更高 。 缺点: Redis较难支持在线扩容,在集群容量达到上限时在线扩容会变得很复杂 方案3 Redis-Cluster 集群 Redis-Cluster 采用无中心结构 好处:可以完成分布式存储问题,解决容量问题 redis集群搭建步骤

readis和es

爷,独闯天下 提交于 2020-01-16 20:52:46
readis集群 面试题 :集群和分布式区别?(理解) (1)相同点 解决高并发 和 大数据的问题 (2)不同点 集群 是 多个服务去实现同一个功能 分布式 不同的服务器实现不同的功能 1 什么是集群(理解) 多个服务器集中再一起 ,去处理同一个业务 集群和分布式概念(理解) 2 为什么需要集群 ,集群有什么好处?(理解) 解决 高并发 大数据的问题 3 集群的特点(理解) (1) 扩展性 --可以动态的去扩展的服务器 (2) 高可用 --> 具备容错的功能 (错误恢复) (3) 负载均衡 -->把请求 分配到不同的服务器里面 4 面试题 :集群和分布式区别?(理解) (1)相同点 解决高并发 和 大数据的问题 (2)不同点 集群 是 多个服务去实现同一个功能 分布式 不同的服务器实现不同的功能 5 如果要做集群 应该怎么做? 方案一 主从复制 好不好? 优点: 完成主从复制 , 缺点:不能完成容错或者恢复的功能(keepalive) 获取 手动重启 扩展服务器比较麻烦 方案二: 哨兵模式 Redis 2.8中提供了哨兵工具来 实现自动化的系统监控和故障恢复功能 。 好处:完成自动的主从切换 缺点:Redis较难支持在线扩容,在集群容量达到上限时在线扩容会变得很复杂 方案三: Redis-Cluster (搭建) 好处:可以完成分布式存储问题,解决容量问题 Redis

电商平台架构

感情迁移 提交于 2020-01-15 03:39:56
设计理念 1 时间换空间 1.1 多级缓存,静态化 客户端页面缓存(http header中包含Expires/Cache of Control,last modified(304,server不返回body,客户端可以继续用cache,减少流量),ETag), 反向代理缓存,应用端的缓存(memcache),内存数据库,Buffer、cache机制(数据库,中间件等)。 1.2 索引 哈希、B树、倒排、bitmap 哈希索引:适合综合数组的寻址和链表的插入特性,可以实现数据的快速存取。 B树索引:适合于查询为主导的场景,避免多次的IO,提高查询的效率。 倒排索引:实现单词到文档映射关系的最佳实现方式和最有效的索引结构,广泛用在搜索领域。 Bitmap:是一种非常简洁快速的数据结构,他能同时使存储空间和速度最优化(而不必空间换时间),适合于海量数据的的计算场景。 2. 并行与分布式计算 2.1 任务切分、分而治之(MR) 在大规模的数据中,数据存在一定的局部性的特征,利用局部性的原理将海量数据计算的问题分而治之。 MR模型是无共享的架构,数据集分布至各个节点。处理时,每个节点就近读取本地存储的数据处理(map),将处理后的数据进行合并(combine)、排序(shuffle and sort)后再分发(至reduce节点),避免了大量数据的传输,提高了处理效率。 2.2 多进程

redis集群

痴心易碎 提交于 2020-01-14 18:05:30
前言 上篇文章梳理了redis的哨兵,截止到目前redis的原理已经梳理了四篇文章,键的过期策略、持久化、主从复制和redis哨兵,今天接着来梳理redis集群模式,之前我们谈到了主从复制是为了提高并发,哨兵模式是为了高可用,那么redis集群的意义是什么呢?这里我们先不谈redis集群的意义,我们来想象我们自己的业务系统的集群部署。 如上图所示一个简单的集群部署方式,在单机无法满足我们并发需求时,我们最常见的方式就是将服务集群部署来实现。redis的集群的架构思想其实和我们的服务集群部署是一样的,就我个人理解redis的集群模式有以下两个最直接的优点: 提高并发 水平扩充内存 redis集群简介 redis集群和我们的服务集群部署一样,由不同的节点组成一个集群,与我们系统不同的是redis集群不需要我们自己维护负载均衡,而是不同的节点负责不同的槽点,这个槽点可以放大理解为分片,放小看也可以认为是key的集合,假设我们的在一个redis集群里有两台redis服务器组成,那么我们就可以将这两台redis所负责的key进行划分,比如共有1000个key,那么redis-01负责1-500,redis-02负责501-1000,至于一个key到底是属于1-500还是501-1000是通过算法实现的。 节点握手 搭建redis集群的第一步是节点握手

redis-cluster集群

谁说我不能喝 提交于 2020-01-14 09:09:32
redis-cluster集群搭建 1.环境准备,6个redis数据库节点 也就是准备6个配置文件,6匹马 redis-7000.conf redis-7001.conf redis-7002.conf redis-7003.conf redis-7004.conf redis-7005.conf #每个配置文件的内容,仅仅是端口的不同7000~7005 内容如下: port 7000 daemonize yes dir "/opt/redis/data/7000" logfile "7000.log" dbfilename "dump-7000.rdb" cluster - enabled yes #开启集群模式 cluster - config - file nodes - 7000. conf   #集群内部的配置文件 cluster - require - full - coverage no     #redis cluster需要16384个slot都正常的时候才能对外提供服务,换句话说,只要任何一个slot异常那么整个cluster不对外提供服务。 因此生产环境一般为no 2.快速生成6个节点的配置文件 1011 mkdir - p / opt / redis / data / { 7000 , 7001 , 7002 , 7003 , 7004 , 7005 }

redis集群搭建

99封情书 提交于 2020-01-14 03:34:03
1.单机安装(会的直接跳到下面集群安装) 下载,解压,安装 >> cd /usr/local/app >> wget http://download.redis.io/releases/redis-4.0.10.tar.gz >> tar -zxvf redis-4.0.10.tar.gz >> mv redis-4.0.10.tar.gz redis >> cd redis >> make MALLOC = libc >> make install 安装完成,这时候会在/usr/local/bin/目录下看到redis-server、redis-cli等可执行脚本,进入看一下,如果没有,就要去解压目录复制进去了。 修改配置 >> vim /usr/local/app/redis/redis.conf 修改以下两个地方 #默认是只有一个127.0.0.1,这个时候只能自己连接,其他局域网内是连接不上的。所以,需要配置多个 IP ,这样就可以局域网内进行连接了。我设置的0.0.0.0,虽然这不太安全,方便我在其它地方连接。 bind 0.0.0.0 ##后台启动 daemonize yes 启动redis >> redis-server /usr/local/app/redis/redis.conf ##查看是否启动成功 >> netstat -anp | grep 6379 >>

redis集群搭建

我的未来我决定 提交于 2020-01-12 12:40:42
redis集群搭建 Redis 是一个开源的 key-value 存储系统,由于出众的性能,大部分互联网企业都用来做服务器端缓存。Redis 在3.0版本前只支持单实例模式,虽然支持主从模式、哨兵模式部署来解决单点故障,但是现在互联网企业动辄大几百G的数据,可完全是没法满足业务的需求,所以,Redis 在 3.0 版本以后就推出了集群模式。 Redis 集群采用了P2P的模式,完全去中心化。Redis 把所有的 Key 分成了 16384 个 slot,每个 Redis 实例负责其中一部分 slot 。集群中的所有信息(节点、端口、slot等),都通过节点之间定期的数据交换而更新。 Redis 客户端可以在任意一个 Redis 实例发出请求,如果所需数据不在该实例中,通过重定向命令引导客户端访问所需的实例。 安装环境 OS: centos 7.2.1511 redis : 最新版 v4.0.1 单台redis安装 下载 wget http://download.redis.io/releases/redis-4.0.10.tar.gz tar zxvf redis-4.0.10.tar.gz mv redis-4.0.10 /usr/local/redis/ 如果是离线安装,则需要从官网下载指定版本,然后上传到生产环境。这里安装的是最新版redis,指定安装路径 /usr