分布性
并发性 - 程序运行时并发性操作是很常见的, 比如同一个分布式系统中的多个节点同时访问统一资源比如数据库, 分布式存储~
无序性 - 进程之间的消息通信会出现顺序不一致问题~
分布式环境下存在的问题:
网络通信问题 - 网络本身不可靠
网络分区问题 (脑裂)- 当网络发生异常导致分布式系统中的部分节点之间的网络延迟不断增大, 最终导致分布式架构的所有结点只有部分节点能够正常通信. eg 比如现在 Redis 有一主五从, 如果其中有三从网络出现异常不能通信, 就有可能在这三台从中选择一个新的 master. 那么问题来了, 就会出现两个主. 这样数据会存在重复的问题 (两套集群了).
三态: 在分布式架构中除了成功 失败 还会存在超时状态.
分布式事务 (原子性 一致性 隔离性 持久性)
中心化和去中心化:
中心化: 相当于只有一个领导, 但是领导如果生病了怎么办, 目前一般采用主备方案 包括冷备和热备
冷备: eg 只有一个领导, 这个领导丢失, 则将未激活状态的人激活
热备: eg 两个领导 一个干活 一个随时准备
去中心化: 微服务去除了总线
分布式架构中, 很多架构思想采用的是: 当集群发生故障的时候集群中热人会自动选举新领导, 最典型: zookeeper/etcd
CAP/BASE 理论
分布式介绍
来源: http://www.bubuko.com/infodetail-3104841.html