架构师训练营第四周作业
一个典型的大型互联网应用系统使用了哪些技术方案和手段,主要解决什么问题?请列举描述。
一个典型的大型互联网应用系统具有如下特点:
高并发、大流量
高可用
海量数据
安全环境恶劣
需求快速变更,发布频繁
针对上述特点,必须采用一些技术方案,方可保证系统安全、稳定、可靠、运行。
性能优化
只有提高系统的性能,才能增加系统的高并发。主要从两个方面入手。
a)WEB 前端性能优化
减少与服务端的 HTTP 请求、使用浏览器本地缓存、启用压缩技术。主要解决性能问题,从而达到系统的高性能,启用压缩技术,减少数据传输量,解决大流量问题。
使用 CND 技术,把数据推送到用户访问最近的服务上,以减少网络传输延迟。
采用动静分享技术。
b) 服务端性能优化
分布式缓存,提高系统的高性能。
微服务化拆分,提高系统的高可用性,分散系统压力,每个微服务完成单一职责,无状态化,便于衡向扩展。
c)数据库存储性能优化
读写分离,采用主从集群、一主一从、一主多主等方案。
分库分表,通过某种特定的条件,将我们存放在同一个数据库中的数据分散存放到多个数据库(主机)中,以达到分散单台设备负载的效果。采用垂直分库、垂直分表、水平分表、水平分库。
使用 NoSQL 数据库,灵活的数据模型、可伸缩性强、自动分片、自动复制。
无论是读写分离、分库分表、使用 NoSQL 数据库都是为了解决单节点读写性能问题,采用多副本方式主要解决系统的可用性。
评论