被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

微笑、不失礼 提交于 2020-10-24 07:58:26

什么是Java分布式?

简单的来说就是一个大型的系统往往被分为几个子系统来做,一个子系统可以部署在一台机器的多个 JVM 上,也可以部署在多台机器上。但是每一个系统不是独立的,不是完全独立的。需要相互通信,共同实现业务功能。

一句话来说:分布式就是通过计算机网络将后端工作分布到多台主机上,多个主机一起协同完成工作。

分布式作为现在作为Java开发必知必会的技术,同时分布式技术也属于面试中的必问题,那么我们就需要十分明白分布式,今天就为大家整理了一份Java分布式核心原理笔记,GitHub上人人都在找的分布式核心技术笔记终于终于免费开源了!这份笔记涵盖了:分布式协调与同步、分布式资源管理与负裁调度、分布式计算技术、分布式通信技术、分布式数据存储、分布式高可靠(这份分布式笔记已经整理完毕,免费的领取方式在文末!)

分布式协调与同步

分布式互斥

  • 什么是分布式互斥?
  • I霸道总裁:集中式算法
  • 民主协商:分布式算法
  • 轮值CEO:令牌环算法

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

分布式选举

  • 为什么要有分布式选举?
  • 分布式选举的算法
  • 长者为大: Bully算法
  • 民主投票: Raft 算法
  • 具有优先级的民主投票: ZAB算法
  • 三种选举算法的对比分析

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

分布式共识

  • 什么是分布式共识?
  • 分布式共识方法
  • PoW
  • PoS
  • DPoS
  • 三种分布式共识算法对比分析

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

分布式事务

  • 什么是分布式事务?
  • 如何实现分布式事务?
  • 基于XA协议的二阶段提交方法
  • 三阶段提交方法:第一,CanCommit阶段、第二,PreCommit阶段、第三,DoCommit 阶段
  • 基于分布式消息的最终一致性方案
  • 种实现方式对比

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

分布式锁

  • 为什么要使用分布锁?
  • 分布式锁的三种实现方法及对比
  • 基于缓存实现分布式锁
  • 基于ZooKeeper实现分布式锁
  • 三种实现方式对比

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

分布式技术是如何引爆人工智能的?

  • 什么是人工智能?
  • 数据处理
  • 分布式模型训练
  • 数据分布式训练
  • 模型分布式训练
  • 混合模型训练

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

分布式资源管理与负裁调度

分布式体系结构一集中式结构

  • 什么是集中式结构?
  • 经典集中式结构
  • Google Borg
  • Kubernetes
  • Mesos
  • 分析对比

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

分布式体系结构一非集中式结构

  • 什么是非集中式结构?
  • Akka集群
  • Redis集群
  • Cassandra集群
  • 对比分析

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

分布式调度架构一单体调度

  • 什么是单体调度?
  • 单体调度设计
  • Borg调度设计
  • Borg调度算法

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

分布式调度架构一两层调度

  • 什么是两层调度?
  • 两层调度设计
  • 两层调度架构
  • 资源分配算法

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

分布式调度架构一共享状态调度

  • 什么是共享状态调度?
  • 共享状态调度设计
  • Omega调度架构
  • Omega共享调度工作原理

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

分布式事务与分布式锁相关问题

分布式计算技术

分布式计算模式—MR

  • 什么是分而治之?
  • 分治法的原理
  • 抽象模型
  • MapReduce工作原理
  • MapReduce实践应用

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

分布式计算模式一Stream

  • 什么是Stream?
  • Stream工作原理
  • Storm的工作原理

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

分布式计算模式一Actor

  • 什么是Actor?
  • Actor计算模式
  • Actor工作原理
  • Actor关键特征
  • Actor模型的应用

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

分布式计算模式—流水线

  • 什么是流水线模式?
  • 流水线计算模式
  • 流水线计算模式的原理
  • 实践:构建机器学习流水线

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

分布式通信技术

分布式通信—远程调用

  • 什么是远程调用?
  • 远程调用的原理及应用
  • RPC的原理及应用
  • RMI的原理及应用
  • RPC与RMI对比分析

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

分布式通信发—发布订阅

  • 什么是发布订阅?
  • 发布订阅的原理及应用
  • 发布订阅的基本工作原理
  • Kafka发布订阅原理及工作机制
  • 发布订阅实践应用

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

分布式通信一消息队列

  • 什么是消息队列?
  • 消息队列的原理
  • 消息队列工作原理
  • RocketMQ消息队列原理及工作机制

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

分布式体系架构与分布式计算相关问题

分布式数据存储

CAP理论

  • 什么是CAP?
  • CAP选择策略及应用
  • 保CA弃P
  • 保CP弃A
  • 保AP弃C

分布式数据存储系统—三要素

  • 什么是分布式数据存储系统?
  • 布式数据存储系统三要素
  • 生产和消费数据
  • 确定数据位置
  • 存储数据

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

数据分布方式—哈希与一致性哈希

  • 数据分布设计原则
  • 数据分布方法
  • 哈希一致性哈希
  • 带有限负载的一致性哈希
  • 带虚拟节点的一致性哈希
  • 四种数据分布方法对比

分布式数据复制技术

  • 什么是数据复制技术?
  • 数据复制技术原理及应用
  • 同步复制技术原理及应用
  • 异步复制技术原理及应用
  • 半同步复制技术原理及应用
  • 三种数据复制技术对比

分布式数据一缓存技术

  • 什么是分布式缓存?
  • 分布式缓存原理
  • Redis分布缓存原理
  • Memcached分布式缓存原理

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

分布式高可靠

分布式高可靠一负载均衡

  • 什么是负载均衡?
  • 服务请求的负载均衡方法
  • 轮询策略
  • 随机策略
  • 哈希和一致性哈希策略

分布式高可靠一流量控制

  • 什么是流量控制?
  • 分布式系统流量控制策略
  • 漏桶策略
  • 令牌桶策略
  • 两种策略对比
  • Sentinel流量控制工作原理

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

分布式高可用一故障隔离

  • 什么是故障隔离?
  • 分布式故障隔离策略
  • 线程级隔离
  • 进程级隔离
  • 资源隔离
  • 故障隔离策略综台对比

分布式高可用一故障恢复

  • 分布式故障基础知识
  • 故障类型
  • 故障检测
  • 故障恢复
  • 分布式故障检测原理
  • 故障恢复策略

如何判断并解决网络分区问题?

  • 什么是网络分区?
  • 如何判断是否发生了网络分区?
  • 网络分区最微妙的地方在哪里?
  • 网络分区出现概率较高的场景是什么?
  • 网络分区有哪些常见的处理方法?

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

 

点赞+评论+收藏后扫码添加小助手免费获取

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!