架构师训练营第 4 期作业 / 学习总结

用户头像
JUN
关注
发布于: 2020 年 07 月 01 日

一个典型的大型互联网应用系统使用了哪些技术方案和手段,主要解决什么问题?请列举描述。

高并发,高可用,高性能,可扩展

系统架构方面

微服务架构

根据不同业务垂直拆分成微服务,方便分团队开发,各团队使用不同技术栈。

能够快速迭代,每个服务可以单独升级。

单个服务可以水平伸缩,应对高并发场景。

容器,k8s集群

微服务的部署,有蓝绿部署,滚动部署,灰度部署,金丝雀部署等方式,为了降低系统上线的风险,不停机更新,以达到系统高可用的目的。

中台架构

提高后端服务的可复用能力,可以基于中台服务快速开发新业务



安全性方面

https,加密

SSO,OAuth2.0 统一管理用户权限,访问控制



数据库方面

读写分离

将数据库分为了主从库,一个主库用于写数据,多个从库完成读数据的操作。

大多数互联网业务,往往读多写少,这时候,数据库的读会首先称为数据库的瓶颈,这时,如果我们希望能够线性的提升数据库的读性能,消除读写锁冲突从而提升数据库的写性能。

读写分离是用来解决数据库读性能瓶颈。

水平切分

通过算法,将数据库进行分割的架构。一个水平切分集群中的每个数据库,通常称为一个“分片”。每一个分片中的数据没有重合,所有分片中的数据并集组成全部数据。

大部分的互联网业务,数据量都非常大,单库容量最容易成为瓶颈,当单库的容量成为了瓶颈,我们希望提高数据库的写性能,降低单库容量的话,就可以采用水平切分了。

nosql数据库,搜索引擎

特定场景下使用,处理大规模的数据

消息队列

异步处理,消除访问高峰

用于不同系统间通信,解耦



缓存/CDN

分布式缓存,降低数据库读压力

动静分离,静态资源放在CDN上,提高网站静态资源访问速度



用户头像

JUN

关注

还未添加个人签名 2017.12.06 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营第4期作业/学习总结