负载均衡

系统性能扩展方式

scale up:垂直扩展,向上扩展,替换旧设备,使用性能更佳的设备
scale out:水平扩展,向外扩展,增加设备,并行运行多个设备一起提供服务

cluster集群:

cluster:集群,为解决某个特定问题将多台计算机组合起来一起向外提供服务,解决单体机器故障和性能

linux集群类型:

LB:load balance 负载均衡
HA:high availiablity 高可用 机器性能无故障时间SLA:99% 999% 9999%
HPC:高性能

分布式系统:

分布式存储:云盘
分布式计算:hadoop,spark

集群和分布式:

集群:集群是相同的一定数量的机器一起向外提供服务,他们的工作都是相同的;一个机器出现故障不影响服务
分布式:一定数量的机器一起向外提供服务,但是是不同的机器承担的服务不同,所有的机器提供的服务组合起来才是完整的一套服务;某个机器出现故障会影响整体的服务

集群设计原则:

可扩展性、可用性(SLA)、性能(相应时间)、容量(单位时间内的最大并发吞吐量C10K并发问题)
基础设施层面:
1、使用高性能的机器
2、多域名-DNS轮询A记录解析
3、多入口-将A记录解析到多个公网IP入口
4、多机房-同城+异地灾备
5、CDN-基于GSLB实现全局负载均衡,如DNS
业务层面:
1、分层:安全层、负载层、静态层、动态层、持久化与非持久化
2、分割:基于功能分割业务为小服务,如微服务
3、分布式:对于特殊场景的业务使用分布式计算

cluster分类(LB):

硬件:F5、Citrix netscaler、A10
软件:lvs、nginx、haproxy
基于工作协议层次划分:
传输层:通用,tcp/ip的4层进行调度

  • LVS
  • nginx:stream
  • haproxy:mode tcp
    应用层:专用,应用层有很多的协议和服务,比如http,https,fascgi,mysql

cluster相关:

会话保持:

  • 同一用户调度固定的服务器,如sh算法
  • 每台服务器拥有全部的session
  • 专门的session服务器,如memcached,redis

HA集群实现方案:

keepalived:vrrp协议

posted @ 2020-06-27 22:12  世界的我  阅读(159)  评论(0编辑  收藏  举报