架构师训练营 - 第四周作业
一个典型的大型互联网应用系统使用了哪些技术方案和手段,主要解决什么问题?请列举描述。
前端架构:
APP及Web开发技术:安全、扩展性强,提高了开发效率
浏览器及HTTP优化技术:高性能,提高了响应速度
CDN:高性能,提高了响应速度
动静分离:静态资源可做缓存化处理,提高了响应速度
图片服务:统一管理、统一维护,存储上可以提供更高的扩展性,访问上也可以通过CDN等优化提供更快的响应速度
DNS:可用于负载均衡,让用户就近访问
网关及应用层架构
网关架构:对流量进行监控,便于自动化运维
负载均衡:用于流量控制
动态页面静态化:静态化的数据可放入缓存,提高了响应速度
业务拆分:业务合理拆分后,能支持弹性伸缩,在高并发场景下,提供更高的性能
服务层架构
微服务框架:可伸缩、可扩展型性强,通过弹性伸缩在高并发场景下,提供更高的性能
分布式消息队列:高性能、高可用的分布式消息队列,用于系统间的解耦,各系统通过消息队列进行数据的共享
分布式缓存:高性能、高可用的分布式缓存,可用于缓存热点数据
分布式一致性锁服务:用于解决分布式场景中的数据一致性问题
存储层架构
分布式文件:比单机存储提供了更大的存储空间,并支持扩展
分布式关系数据库:提供大并发访问和TB级海量数据场景下的存储服务
NOSQL:非关系型数据库,扩展性强,大数据量,读写高性能
后台架构
大数据平台:提供了更强的计算能力
搜索引擎:支持快速、准确的响应对海量数据的检索
推荐引擎:千人千面,用于精准的个性化推荐
数据仓库:支持复杂的分析操作,侧重决策支持
运维与安全
数据采集与展示:自动化运维,如链路追踪
数据监控与报警:自动化运维,如:高并发场景下,流量超出警戒线即刻出发报警
攻击和防护: 如:通过https对网络通信加密
数据加密与解密:如:对敏感信息入库前进行加密处理
评论