分布式 随笔 0-分布式服务架构

0. 好多游戏都给我一种在打工的感觉…

好久没有写文章了,hhh

分布式 随笔 0-分布式服务架构_第1张图片

1. 分布式CAP原理

Consistency 数据一致性(数据原子性)
	所有节点访问同一份最新的数据副本
Availablity 服务可用性
	每一个操作总能在一定时间范围内返回结果
Partition-torlerance 分区容错性
	数据被分布储存到不同的服务器上,无论什么情况,服务器都能被正常访问

任何分布式系统均无法兼顾三者,只能同时满足两点

CA
	由于需要兼顾CA,那么事务相关的数据将被放在一台机器上
	故无法兼顾P
CP
	由于兼顾CP,因此事务相关的数据被分不到不同的机器上
	因此如果某一个分区故障了,则其相关服务将收到影响,故无法兼顾A
AP
	并非完全放弃C,只是放弃了数据的强一致性
	因为数据分布到不同机器上,并且要兼顾A,那么此时还要兼顾C的话,就无法保证服务的可用性
	故无法兼顾C
对比项 Zookeeper Eureka
CAP CP AP
支持集成 Dubbo、sc sc
key-value存储 Y N
接口支持 客户端 http等多语言
watch实现方法 订阅 轮询
集群监控 N 基于metrics

2.AKF系统拆分

afk服务拆分X轴扩展:
分布式 随笔 0-分布式服务架构_第2张图片afk服务拆分Y轴扩展:
分布式 随笔 0-分布式服务架构_第3张图片
afk服务拆分Z轴扩展:
分布式 随笔 0-分布式服务架构_第4张图片

X轴:
	水平复制完整的服务
	通过增加机器数量解决问题
Y轴:
	基于功能模块划分
	服务数量多的时候,调用关系容易复杂,这时候会将服务全部注册到网关来治理
	SOA
Z轴:
	按照数据分区
	划分出来的子系统相互隔离,但又各自都是完整的

3. 更多架构设计

前后端分离
	略	
无状态服务
	将有状态的服务(数据缓存、session等)设计为无状态的计算类服务(分布式存储)
	此时,业务服务将成为一个个的无状态的计算节点
	按需伸缩、动态增删节点
	无需考虑缓存数据的同步问题

你可能感兴趣的:(分布式,分布式,架构,java)