【架构师训练营第 1 期 04 周】 作业
【架构师训练营第 1 期 04 周】 作业
作业题目:一个典型的大型互联网应用系统使用了哪些技术方案和手段,主要解决什么问题?请列举描述。
由于没接触过大型互联网应用系统,参考老师讲解的宅米网架构进行分析。正如老师说的,业务会驱动技术进行优化,每一次架构优化都是基于业务的需求。以上面宅米网架构图为例。
1.使用CDN服务优化图片加载速度;
2.使用负载均衡Nginx将流量分布到不同的服务器,降低单台服务器压力;
3.使用分布式文件系统将静态数据返回,不用经过使用;
4.使用服务器水平集群,将不同模块的功能区分到不同的应用,应用之间互相调用,让压力可以分摊到更多的应用服务器;
5.使用Redis集群保存不常更新的信息,减少查询数据库压力;
6.使用MySQL主从架构,可以让数据库读写分离,大量的查询分流到从库,不会影响数据写入和更新的效率,但是会带来主从同步延时的问题,有部分接口需要强制路由;
7.使用批处理任务定时将数据迁移到MongoDB,不让大量历史订单堆积在数据库中,影响查询和插入的效率;
8.大数据平台可以将业务需求的统计单独实现,不会因为大sql查询影响数据库性能,降低接口响应速度;
9.使用Kafka流处理平台,对于一些日志或者数据大批量地推送到大数据平台,以便大数据平台进行分析。这样可以不需要应用系统单独调用大数据平台,在高峰期因为等待大数据平台的响应而降低接口效率,在允许一定延时的情况下,由流处理平台迅速响应了应用系统后,逐步批量推送给大数据平台,实现削峰填谷。
评论