第四周作业
题目:一个典型的大型互联网应用系统使用了哪些技术方案和手段,主要解决什么问题?请列举描述。
一个典型的大型互联网系统使用的技术方案和手段主要是实现提高容量、提高性能、节约成本。
例如:
数据库访问采用读写分离:对于实时性要求不高的读操作可以从同步或异步备库读取数据。减轻主库的压力,提高写交易的性能。
数据库分库:进行分库,将不同业务的数据分布到不同的数据库中或将相同业务的不同数据分布到不同的数据库中,主要解决业务数据过多,单台服务器查询速度与容量成反比,连接池有数量限制,当数据量上亿、查询量上亿时,达到数据库服务器的极限[1]。分库可以使单台数据库服务器上的数据不至于过多,保证每台数据库服务器在满足性能要求的情况下,提高总体存储数据的总量。
使用NoSQL或搜索引擎:提高搜索的效率,减少数据库压力。
使用数据缓存:将只读且命中率高的数据放在缓存中,提高数据访问的速度。
使用CDN:内容分发网络,依靠部署在各地的边缘服务器,通过中心平台负载均衡,内容分发、调度等功能模块,使用户就近获取内容,降低网络拥塞。[2]
使用分布式文件系统:解决大量高并发访问量下,文件读取带来的较长的延时。系统读取文件时,磁头需要频繁寻道和换道,高并发下,硬盘读取就会带来性能瓶颈[3]。使用分布式网络存储读取不同硬盘的文件可提高并发情况下文件读取性能。
[1] https://weread.qq.com/web/reader/016324b05a617e01617778fkaab325601eaab3238922e53
[2] https://baike.baidu.com/item/CDN
[3] https://weread.qq.com/web/reader/016324b05a617e01617778fkc7432af0210c74d97b01b1c
评论