哨兵实现的是高可用说明一下sentinel选举主redis的过程,首先选取最新的sentinel代表,每一个都维护一个值,谁都向对方发送我要当领导的信息(谁先发送到这里先记谁),如果收到对方回复的选举的id和自己的id一样,开始记票数,超过n/2+1即可。最后三张图片选举的是这个然后再选举redis主节点删除已下线或者断线状态的从删除最近五秒没有回复的从删除断开与之前master链接超过设置时长的
分类:
其他好文 时间:
2020-04-05 00:23:30
阅读次数:
56
sentinel是Redis高可用Ha的重要组成部分,在传统Redis master/slave架构下,担任对主从复制的状态监控,并在主节点异常后自动将从节点提升为主节点对外提供服务。 下图展示了一个在哨兵sentinel集群中监控redis主从复制的一个例子,其中: 1. Sentinel集群包括 ...
分类:
其他好文 时间:
2020-04-04 16:14:55
阅读次数:
88
Redis 缓存作为使用最多的缓存工具被各大厂商争相使用。通常我们会使用单体的 Redis 应用作为缓存服务,为了保证其高可用还会使用主从模式(Master-Slave),又或者是读写分离的设计。但是当缓存数据量增加以后,无法用单体服务器承载缓存服务时,就需要对缓存服务进行扩展。将需要缓存的数据切分成不同的分区,将数据分区放到不同的服务器中,用分布式的缓存来承载高并发的缓存访问。恰好 Redis Cluster 方案刚好支持这部分功能。
今天就来一起看看 Redis Cluster 的核心原理和实践:
Redis Cluster 实现数据分区
分布式缓存节点之间的通讯
请求分布式缓存的路由
缓存节点的扩展和收缩
故障发现和恢复
分类:
其他好文 时间:
2020-04-03 23:37:40
阅读次数:
82
很多人说JVM是不是真的要学?面试官都会问JVM的问题吗?很重要吗? 的确很重要。 随着互联网的发展,高并发高可用、快速响应成为软件的必须,而JVM与这些有着密切关联。 我们在尽情享受Java虚拟机带来好处的同时,还应该去了解和思考“这些技术特性是如何实现的”,去了解最底层的原理。只有熟悉JVM,你 ...
分类:
编程语言 时间:
2020-04-03 20:02:40
阅读次数:
61
一、工具准备 1、7台虚拟机(至少需要3台),本次搭建以7台为例,配好ip,关闭防火墙,修改主机名和IP的映射关系(/etc/hosts),关闭防火墙 2、安装JDK,配置环境变量 二、集群规划: 集群规划(7台): 主机名 IP 安装的软件 运行的进程 hadoop01 192.168.*.121 ...
分类:
其他好文 时间:
2020-04-03 00:25:12
阅读次数:
82
Flume定义: Flume是Cloudera提供的一个高可用的、高可靠的,分布式的海量日志采集、聚合和传输的系统。Flume基于流式架构, 灵活简单。 为什么选用Flume 主要作用: 实时读取服务器本地磁盘的数据, 将数据写入到HDFS Flume的组织架构 1、最简单的组织架构 2、Flume ...
分类:
Web程序 时间:
2020-04-02 22:33:57
阅读次数:
107
一、Rabbitmq概念RabbitMQ是一个开源的靠AMQP协议实现的服务,服务器端用Erlang语言编写,支持多种客户端,如:Python、Ruby、.NET、Java、JMS、C、PHP、ActionScript、XMPP、STOMP等,支持AJAX。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。AMQP,即AdvancedMessageQueuingProtoc
分类:
其他好文 时间:
2020-04-01 15:09:35
阅读次数:
88
一: 主从复制高可用 主从复制存在的问题? 1. 只从复制, 主节点发生故障, 需要做故障转义, 可以手动转移: 让其中一个slave变成master 2. 主从复制, 只能主写数据, 所以写能力和存储能力有限 二: 架构说明 可以做故障判断, 故障转移, 通知客户端(其实是一个进程), 客户端直接 ...
分类:
其他好文 时间:
2020-04-01 12:59:32
阅读次数:
60
1、gitlab介绍Gitlab的优势和应用场景: 开源免费,适合中小型公司将代码放置在该系统中; 差异化的版本管理,离线同步以及强大分支管理功能; 便捷的GUI操作界面以及强大账户权限管理功能; 集成度很高,能够集成绝大多数的开发工具; 支持内置HA,保证在高并发下仍旧实现高可用性;GitLab主... ...
分类:
其他好文 时间:
2020-04-01 00:51:36
阅读次数:
97
Flume概述 Flume是一个高可用、高可靠、分布式的海量日志数据采集、聚合、传输的系统。Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接收方的能力。 Flume(Agent,Java进程)主要由三个重要组件构成: source, ...
分类:
Web程序 时间:
2020-03-31 12:26:27
阅读次数:
76