写点什么

架构师训练营第四周总结

用户头像
hiqian
关注
发布于: 2020 年 06 月 27 日



一、互联网系统面临的挑战:

1.高并发,大流量

需要面对高并发用户,大流量访问

不能设计一个高并发的系统,高并发是特征

可以设计一个高性能高可用的系统

2.高可用

系统7x24小时不间断服务。服务器可以停机,系统不可以停机。

不管有什么问题,系统服务不能停,这是有挑战的。高可用的架构有它的一套解决方案。

3.海量数据

4.用户分布复杂,网络情况复杂

5.安全环境恶劣

6.需求快速变更,发布频繁

7.渐进式发展 好的互联网产品都是逐步运营出来的,不是一开始就开发好的。对技术提出了挑战。

要求足够的技术支撑

大部分技术在十年前就成熟了,在网站渐进式的发展过程中,在挑战下不断发展起来的。



二、应对高并发挑战的两个技术方案

1.垂直伸缩 通过增强服务器:银行

2.水平伸缩 增加服务的计算能力

为不同的服务器赋予不同的角色,构成一个大系统,这就需要架构能力



三、架构演化

第一阶段:应用数据分离

第二阶段:使用缓存改善系统性能

第三阶段:使用应用服务器集群改善系统的并发处理能力

第四阶段:数据库读写分离 分摊读写压力,系统可用性增加

第五阶段:使用反向代理和CDN加速网站响应

CDN服务:静态资源就近返回,减轻网络压力

第六阶段:使用分布式文件系统和分布式数据库服务器.

第七阶段:使用NoSQL和搜索引擎

第八阶段:业务拆分

第九阶段:微服务及中台化

第十阶段:大数据与智能化 今日头条



四、架构模式

模式的关键:可重复性,问题与场景的可重复性

1.分层

2.分割

3.分布式

4.集群

5.缓存

6.异步

7.冗余

8.自动化

9.安全



互联网系统架构的核心要素 如何衡量一个系统的架构设计



不要陷入到唯技术论 理解清楚什么样的技术解决什么样的问题



功能性架构

非功能性架构

1.高性能 影响用户请求的所有环节都可以进行优化

2.高可用

3.可伸缩 架构怎么做,数据怎么进行迁移 机器是怎么加进去的

4.可扩展 功能按照业务的发展能不断的加进去 需要保证架构也是可扩展的

5.安全



架构技术一览:





前端架构:

  1. APP及web开发技术

  2. 浏览器及HTTP优化技术

  3. CDN

  4. 动静分离

  5. 图片服务

  6. 反向代理

  7. DNS



网关及应用层架构

  1. 网关架构

  2. 负载均衡

  3. 动态页面静态化

  4. 业务拆分



服务层架构

  1. 微服务架构

  2. 分布式消息队列

  3. 分布式缓存

  4. 分布式一致性服务

存储层架构

后台架构

  1. 大数据平台

  2. 搜索引擎

  3. 推荐引擎

  4. 数据仓库



运维与安全



典型的互联网架构案例



维基百科系统架构:



技术不是目标,要带来价值,要关注解决的问题是什么



用户头像

hiqian

关注

还未添加个人签名 2018.12.04 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营第四周总结