
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
分布式编程架构是随着互联网的不断发展而被程序员逐渐掌握的编程方法,而今天我们就通过案例分析来了解一下,分布式编程架构都有哪些问题。
1、分布式环境特点
分布性
地域,区域,机房,服务器不同导致分布性
并发性
程序运行中,并发性操作很常见,比如同一个分布式系统中的多个节点,同时访问一个共享资源(数据库,分布式存储)
无序性
进程之间的消息通信,会出现顺序不一致的问题。
2、分布式环境面临问题
各个服务节点通信
网络本身的不可靠,因此涉及到一些的网络通信问题(每一个分布式项目都必须面临问题)。
网络分区(脑裂)
当网络发生异常情况的时候,导致分布式系统中部分节点之间网络延时不断变大,终导致组成分布式系统所有节点中,只有部分节点能够正常通信。
3、分布式事务问题
ACID(原子性,一致性,隔离性,持久性)=>事务特征
原子性:整个事务操作过程中,所有操作要不全部成功,要不就全部失败。
一致性:整个操作过程中所有数据操作前后保持一致
隔离性:事务和事务之间操作是完全隔离。
持久性:事务一旦提交成功,所有数据不能更改。
4、中心化和去中心化
中心化:分布式系统中每一个节点按照角色分工(zk集群,leader,follower,observer)
存在大的问题:领导出现故障,导致集群问题。
主备.(潜在问题:领导管理能力问题)
zookeeper/etcd
去中心化:重要的问题是脑裂问题。leader不是固定的,如果leader出现问题,会动态选出新的leader也可以理解成去中心化
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请在707945861群中学习了解。