分布式


分布式

负载均衡算法

轮询、加权轮询、最小连接数、一致性哈希等。

  • 轮询:按顺序将请求分配给每个服务器。
  • 加权轮询:根据服务器权重分配请求。
  • 最小连接数:将请求分配给连接数最少的服务器。
  • 一致性哈希:根据请求的哈希值分配服务器,减少节点变动影响。

分布式事务算法,比如Raft, Paxos

  • Raft:一致性算法,易于理解和实现。
    • 特点:通过选举、日志复制、日志提交保证一致性。
    • 适用场景:分布式系统中的一致性问题。
  • Paxos:一致性算法,复杂但性能好。
    • 特点:通过提议、投票、提交保证一致性。
    • 适用场景:分布式系统中的一致性问题。

Hash环与分布式缓存

  • 一致性哈希:解决节点动态变化的问题,减少数据迁移。
    • 特点:将数据分配到多个节点,节点变动时只影响部分数据。
    • 适用场景:分布式缓存、分布式存储。
  • 分布式缓存:将缓存分布到多个节点,提高性能和可用性。
    • 特点:数据分布在多个节点,支持高并发访问。
    • 适用场景:高并发、高性能的应用,如电商系统。

利特尔法则,及其应用

利特尔法则:L = λW,用于分析排队系统。

  • L:系统中的平均数量。
  • λ:平均到达率。
  • W:平均等待时间。
  • 适用场景:分析系统性能、优化资源配置。

限流与熔断,限流的各类算法

  • 限流:令牌桶、漏桶算法。
    • 令牌桶:按照固定速率生成令牌,请求需要消耗令牌。
    • 漏桶:按照固定速率处理请求,超出部分丢弃。
  • 熔断:防止系统过载,保护服务。
    • 特点:当系统负载过高时,自动拒绝部分请求,防止系统崩溃。
    • 适用场景:高并发、高负载的应用,如微服务架构。

CAP理论

一致性、可用性、分区容错性,三者不可兼得。

  • 一致性:所有节点在同一时间看到相同的数据。
  • 可用性:每个请求都能收到响应。
  • 分区容错性:系统在网络分区的情况下仍能正常运行。
  • 适用场景:分布式系统设计,权衡不同特性。

文章作者: xucanxx
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 xucanxx !
  目录