写点什么

架构师训练营第一期 - 第四周课后作业

发布于: 2020 年 10 月 16 日

一个大型互联网应用系统需要服务几千万甚至几亿的用户,每天需要处理几十亿几百亿的请求,系统需要满足每秒几万(在大促时甚至每秒几十万)的高并发请求处理。因此大型互联网应用系统需要满足高性能、高可用及高可扩展的要求来满足平常业务需求及突发高流量需求。要实现这样一个“三高”的业务系统需要采用一系列软硬件技术及相关的技术方案才能配合完成:

1.整个系统架构要采用分布式设计,采用微服务架构利用服务器集群来提升系统的并发处理能力;

2.采用 docker 及 k8s 容器技术提升系统的可扩展能力;

3.采用 CDN 技术在距离用户近的地方缓存静态页面及静态数据,通过 DNS 让用户就近获取数据将请求流量尽量拦截在应用系统之外同时提高用户请求响应;

4.采用反向代理技术再次进行数据缓存,让在 CDN 上没有获取到数据的用户尽量在反向代理缓存中获取数据以减少请求流量进入应用系统并提高用户请求响应;

5.使用负载均衡技术,让经过两次缓存后或不需要经过缓存的请求流量在真正进入应用系统之前根据应用负载进行路由分发,从而将用户请求均衡路由到应用服务集群;

6.在编写应用程序的时候要根据业务特性,使用本地内存缓存业务数据减少网络 IO 及磁盘 IO 以提高用户请求响应;

7.如果需要缓存的业务数据太多,则需要采用远程分布式缓存存储业务数据以提高用户请求响应;

8.采用分布式数据库或者分布式 NoSQL 数据库进行数据分片以提高数据库的并发响应能力;

9.采用 SSD 盘替换 HDD 盘,或者将热数据存放在 SSD 盘以提高数据库/文件系统的磁盘 IO 能力;

10.使用消息队列对应用服务进行解耦,使系统具备削峰填谷的能力;

11.大数据分析平台及智能推荐平台,通过大数据分析平台对数据进行统一整合分析处理,生成完整的用户数据给智能推荐平台进行机器学习,根据用户标签、用户行为数据训练生成算法模型,针对不同的用户采用不同的营销、推荐策略,提高用户满意度及用户粘性;


用户头像

还未添加个人签名 2019.01.15 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营第一期-第四周课后作业