架构师训练营 第四周 作业

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



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



互联网系统所面临的挑战主要包括:

  • 高并发、大流量

  • 高可用

  • 海量数据

  • 网络情况复杂

  • 安全环境恶劣

  • 需求快速变更,发布频繁

  • 渐进式发展



对于以上挑战,互联网应用系统可以使用以下技术和手段解决:



前端架构

  1. App及Web开发技术

  2. 浏览器及HTTP优化技术:提高用户体验,减少响应时间

  3. CDN:提高访问速度,减少到后台的流量

  4. 动静分离 动态、静态资源分离:便于将分离的静态资源做缓存

  5. 图片服务

  6. 反向代理:Web加速,将Web服务器做前置机,降低应用服务器负载

  7. DNS 域名解析:就近访问,减少网络延迟



网关及应用层架构

  1. 网关架构:统一入口,提高安全性,降低前后台服务器耦合,动态路由

  2. 负载均衡:通过负载均衡实现服务集群化,共同对外服务,水平扩展

  3. 动态页面静态化:减少计算,静态化业务可缓存,提高响应速度

  4. 业务拆分:拆分后便于分布式部署,水平扩展



服务层架构

  1. 微服务框架:业务解耦,提高开发效率,提高系统可扩展性

  2. 分布式消息队列:解耦、流量削峰

  3. 分布式缓存:降低数据库压力,提高响应速度

  4. 分布式一致性服务:保证数据一致性问题



存储层架构:解决数据量大的问题

  1. 分布式文件

  2. 分布式关系数据库

  3. NoSQL数据库



后台架构:解决海量数据、数据分析等问题

  1. 大数据平台

  2. 搜索引擎

  3. 推荐引擎

  4. 数据仓库



运维安全:解决安全问题

  1. 数据采集展示

  2. 数据监控报警

  3. 攻击与防护

  4. 数据加密与解密



用户头像

CR

关注

还未添加个人签名 2018.09.23 加入

还未添加个人简介

评论

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