架构师训练营第四周作业

用户头像
邓昀垚
关注
发布于: 2020 年 10 月 06 日

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

我从性能、可用性、伸缩性、扩展性和安全性5个方面进行描述。

高性能

  • 前端优化:浏览器访问优化、CDN加速、反向代理

  • 应用服务器性能优化:缓存、异步操作、集群

  • 存储优化:读写分离、固态硬盘、RAID

高可用

  • 应用高可用:负载均衡进行无状态服务的失效转移(Redis集群管理Session)

  • 数据高可用:数据备份(主从复制)及失效转移

可伸缩

垂直伸缩:提升单一服务器的硬件性能

  • RAID增加IO吞吐量

  • SSD改善IO速度

  • 增加内存减少IO操作

  • 升级网口提高网络吞吐能力

  • 更多处理器更多超线程

水平伸缩:增加服务器形成集群

  • 第一阶段:应用和数据分离

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

  • 第三阶段:应用服务器集群

  • 第四阶段:读写分离

  • 第五阶段:CDN和反向代理

  • 第六阶段:分布式文件系统和数据库

  • 第七阶段:NoSQL和搜索引擎

  • 第八阶段:业务拆分

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

  • 第十阶段:大数据和智能化

可扩展

  • 服务化打造可服用的业务平台

  • 分布式消息队列降低系统耦合

安全性

  • 防攻击:XSS、SQL注入、CSRF

  • 加密技术



用户头像

邓昀垚

关注

还未添加个人签名 2018.06.04 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营第四周作业