分布式架构

什么是分布式架构

单体

 分布式集群

 

 

 

分布式的高可用

搭建服务集群,提高负载,避免单点故障

应对灾难,搭建异地灾备,预防地区因发生地震等自然灾害

接口限流以及服务降级。为防止过高的并发量造成服务器负载过高而出现故障

故障监控报警

服务的可伸缩性,易于水平扩张服务器数量。

使用缓存降低数据库压力

使用CDN等加速静态资源的访问

 

分布式能够给架构带来什么

应用服务器集群:

随着访问量的继续增加,单台应用服务器也无法满足需求了,我们就需要搭建应用服务器集群来对外提供服务了

 

 

 

数据负载-读写分离

主从数据库之间的数据需要同步

应用中需要根据业务进行对应数据源的选择

 

 

搜索引擎/Nosql负载-读写分离

Nosql/Elasticsearch等

 

 

数据量压力-拆表/拆库

据的垂直拆分和水平拆分

>=1000万,考虑拆表

>=1亿 ,考虑拆库

应用压力-应用拆分

应用拆分,按照领域模型将我们的用户、商品、交易拆分成多个子系统

中台实现的基础--》微服务

 

案例—电商系统

系统分层,微服务管理

 

案例—Nginx反向代理

务器层面分流

 

案例—WCF分布式

每层中的服务器,可水平扩展(集群),可纵向扩展(按系统/域/功能切分)

 

案例—微服务架构

哑铃架构

微服务分布式集成

前端后端双向扩展。

 

布式常见的坑—数据一致性

1、系统间的数据一致性。

2、系统内应用间的数据一致性。

3、应用内部对应多数据库的数据一致性,是个反模式,不要做通用方案。

4、一个数据库对应多个应用的数据一致性。

数据中台

 

分布式优点

分布式结构就是将一个完整的系统,按照业务功能,拆分成一个个独立的子系统,在分布式结构中,每个子系统就被称为“服务”。这些子系统能够独立运行在web容器中

 

posted @ 2020-06-18 17:24  日积月累码农  阅读(2016)  评论(0编辑  收藏  举报