【分布式系统】知识概论

133 阅读2分钟
  • 分布式系统起源

    • 单机模式 - 数据并行 - 任务并行
    • 分布式系统指标
      • 分布式系统的出现就是为了用廉价的、普通的机器解决单个计算机处理复杂、大规模数据和任务时存在的性能问题、资源瓶颈问题,以及可用性和可扩展性问题。不同业务和系统对各指标的差异,比如电商、电信、银行、大数据、云计算。
      • 性能:吞吐量(throughput)、响应时间(Response Time)。QPS、TPS、BPS
      • 资源
      • 可用性
      • 可扩展性:垂直扩展、水平扩展
  • 分布式选举:从多个节点中选出一个主节点

    • Bully
    • Raft
    • ZAB
  • 分布式共识:PoW、PoS、DPoS

  • 分布式事务

    • 事务的基本特性ACID:原子性Atomicity、一致性Consistency、隔离性Isolation、持久性Durability
    • BASE理论:基本可用Basically Available、柔性状态 Soft State、最终一致性 Eventual Consistency
    • XA二阶段提交、三阶段提交、基于分布式消息的最终一致性
  • 分布式互斥

    • 在分布式系统里,排他性的资源访问方式叫做分布式互斥,而这种被互斥访问的共享资源叫做临界资源(Critical Resource)
    • 集中式算法:一个协调者代表中央服务器
    • 民主协商:分布式算法
    • 轮值CEO:令牌环算法
  • 分布式锁

    • 基于数据库
    • 基于缓存
    • ZK
  • 分布式体系结构

    • 集中式:Master/Slave结构
    • 非集中式:Akka、redis、cassandra;Gossip协议
  • 分布式调度架构

    • 单体调度
    • 两层调度:Mesos
    • 共享状态调度
  • 分布式计算模式

    • MR:hadoop
    • Stream:storm
    • Actor:akka
    • 并行计算:流水线计算模式
  • 分布式通信

    • 远程调用:RPC、RMI,Dubbo
    • 发布订阅:Kafka
    • 消息队列:RocketMQ
  • CAP理论

    • 一致性 Consistency、可用性 Availability、分区容错性 Partition Tolerance
    • CA模式即单机应用、CP模式强一致性、AP模式最终一致性
  • 分布式数据存储

    • 数据分片(区别数据分区)
    • 数据复制
      • mysql binlog
      • 同步、异步、半同步
    • 结构化数据、半结构化数据KV、非结构化数据
    • 数据分布方式:哈希、一致性哈希
  • 分布式缓存:Redis

  • 分布式高可靠

    • 负载均衡:请求负载均衡、数据负载均衡
    • 流量控制:网络协议中的滑动窗口,漏通、令牌桶
    • 故障隔离:线程、进程、容器、集群、资源
    • 故障恢复