分布式
吒哇
这个作者很懒,什么都没留下…
展开
-
Zookeeper 的集群选举机制(一)
Zookeeper默认的算法是FastLeaderElection, 采用投票数大于半数则胜出的逻辑。选举依据:服务器ID:比如有3台服务器, 编号分别为 1, 2, 3。编号越大,在选举算法中的权重越大。选举状态:LOOKING,竞选状态。...原创 2020-04-26 09:35:34 · 412 阅读 · 0 评论 -
zookeeper原理(二)集群选主和同步
一、基本概念zookeeper的核心是原子广播,这个机制保证了各个server之间的同步,实现这个机制的协议叫做zab协议。zab协议有两种模式: 分别是恢复模式和广播模式。恢复模式,zookeeper配置为集群模式时,系统启动或者是当前leader崩溃或者是当前leader丢失大多数的follower,zk进入恢复模式,恢复模式需要重新选举出一个新的leader,当领导者被选举出来,且大多...原创 2020-04-24 15:05:44 · 264 阅读 · 0 评论 -
数据库分库分表的演进
数据库分库分表的演进背景在互联网初创时期,企业往往采用单体架构去搭建自己的应用系统,但是,随着企业的不断壮大,系统访问量不断随之上升,数据量也急剧增长。数据的存储是首先要解决的问题,在这个大数据时代,数据就是企业的命根子,数据库的单体架构很难满足数据的存储,这时,我们要对数据进行切分,数据的切分又分为垂直切分和水平切分。数据切分和数据库架构在数据切分之前,我们的所有业务都放在...原创 2019-11-01 13:20:48 · 145 阅读 · 0 评论 -
Zookeeper高级
ACL权限补充很多同学练习setAcl权限的时候由于失误,导致节点无法删除 create /enjoy1/node1 enjoy setAcl /enjoy1 world:anyone:r 这个时候无论是delete 还是rmr都没有权限删除 解决方式:启用super权限 使用DigestAuthenticationProvider.ge...原创 2019-10-30 15:06:18 · 251 阅读 · 0 评论 -
Zookeeper基础配置
Zookeeper基础 单基部署 先把ZK安装起来,后面的很多操作,都是的前提都是由ZK的操作环境,先来把ZK安装好, Zookeeper windows环境安装 环境要求:必须要有jdk环境,本次讲课使用jdk1.81.安装jdk2.安装Zookeeper. 在官网http://zookeeper.apache.org/下载zookeeper.我下载的是...原创 2019-10-24 18:13:49 · 945 阅读 · 0 评论 -
Zookeeper基础配置
Zookeeper基础 单基部署 先把ZK安装起来,后面的很多操作,都是的前提都是由ZK的操作环境,先来把ZK安装好, Zookeeper windows环境安装 环境要求:必须要有jdk环境,本次讲课使用jdk1.81.安装jdk2.安装Zookeeper. 在官网http://zookeeper.apache.org/下载zookeeper.我下载的是...原创 2020-03-20 16:17:58 · 705 阅读 · 0 评论 -
Elasticsearch
搜索引擎是对数据的检索,所以我们先从生活中的数据说起。我们生活中的数据总体分为两种:结构化数据 和 非结构化数据。结构化数据:也称作行数据,是由二维表结构来逻辑表达和实现的数据,严格地遵循数据格式与长度规范,主要通过关系型数据库进行存储和管理。指具有固定格式或有限长度的数据,如数据库,元数据等。非结构化数据:又可称为全文数据,不定长或无固定格式,不适于由数据库二维表来表现,包括所有格式...原创 2019-09-16 13:25:51 · 1017 阅读 · 0 评论 -
限流(Rate limit)算法详解
一、前言保障服务稳定的三大利器:熔断降级、服务限流和故障模拟。今天和大家谈谈限流算法的几种实现方式,本文所说的限流并非是Nginx层面的限流,而是业务代码中的逻辑限流。那么为什么需要限流呢?按照服务的调用方,可以分为以下几种类型服务1、与用户打交道的服务比如web服务、对外API,这种类型的服务有以下几种可能导致机器被拖垮:用户增长过快(这是好事) 因为某个热点事件(微博...原创 2019-09-04 09:45:36 · 11977 阅读 · 3 评论 -
关于请求流量分配解析
分布式负载算法:dubbo和eureka的具体如下具体的试下代码逻辑:总结:所有分布式的按比例负载的算法都是:按比例出随机数,然后落选 服务器...原创 2019-08-12 10:58:20 · 472 阅读 · 0 评论 -
限流策略
参考:https://www.cnblogs.com/java1024/p/7725632.html概要在大数据量高并发访问时,经常会出现服务或接口面对暴涨的请求而不可用的情况,甚至引发连锁反映导致整个系统崩溃。此时你需要使用的技术手段之一就是限流,当请求达到一定的并发数或速率,就进行等待、排队、降级、拒绝服务等。在限流时,常见的两种算法是漏桶和令牌桶算法算法。限流算法令牌桶(To...原创 2019-08-15 14:26:30 · 237 阅读 · 0 评论 -
Spring的全局事务JTA
注:博文转载地址:https://www.jianshu.com/p/3938e7172443代码github地址:https://github.com/lilike/chawuzhi.git01.Spring的本地事务Spring本身提供了一套Spring容器中进行事务管理的接口:不同的数据源厂商对Spring提供的事务管理接口都有相应的实现.0.jpg而...原创 2019-08-19 11:51:36 · 790 阅读 · 0 评论 -
浅谈分布式事务
背景介绍:1、锁的本质,资源的操作不是原子 -------- 锁目标,让一系列操作,一次性做完。排队2、分布式环境下,一切能够发出两个信号量事物都能够做锁 ----- 做锁要求:加锁/解锁两个动作,一定是原子的3、mysql来做锁 ------- 一条sql的执行,是原子的4、redis有做锁 -------- setnx操作,是原子的5、redis要做安全的锁,----- 加...原创 2019-08-19 11:43:46 · 305 阅读 · 0 评论 -
Zk集群原理介绍
ACL权限补充很多同学练习setAcl权限的时候由于失误,导致节点无法删除 create /enjoy1/node1 enjoy setAcl /enjoy1 world:anyone:r 这个时候无论是delete 还是rmr都没有权限删除 解决方式:启用super权限 使用DigestAuthenticationProvider.ge...原创 2019-08-06 18:17:16 · 4872 阅读 · 0 评论 -
分布式系统协调“方法论(zk)
分布式系统带来的问题如果把分布式系统和平时的交通系统进行对比,哪怕再稳健的交通系统也会有交通事故,分布式系统也有很多需要攻克的问题,比如:通讯异常,网络分区,三态,节点故障等。通信异常通讯异常其实就是网络异常,网络系统本身是不可靠的,由于分布式系统需要通过网络进行数据传输,网络光纤,路由器等硬件难免出现问题。只要网络出现问题,也就会影响消息的发送与接受过程,因此数据消息的丢失或者延长...原创 2019-08-06 18:13:36 · 322 阅读 · 0 评论 -
普通hash和一致性hash的区别
普通hash定义Hash函数:一般翻译做散列、杂凑,或音译为哈希,是把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长度的输出,该输出就是散列值。碰撞(冲突):如果两个关键字通过hash函数得到的值是一样的,就是碰撞或冲突。Hash表(散列表):根据散列函数和冲突处理将一组关键字分配在连续的地址空间内,并以散列值记录在表中的存储位置,这种表成为散列表。常用算法...原创 2019-08-06 13:26:36 · 651 阅读 · 0 评论