互联网系统架构总结
先对互联网架构知识点总结进行总结,再从计算力和存储容量和访问速度能力,单机结构架构和大型互联网应用系统的架构中采用的方法进行对比
一、互联网架构知识点总结
从架构的挑战、架构设计的目标、架构模式、技术方案进行总结归纳
二、单机结构架构和大型互联网的架构对比总结
单机结构架构和大型互联网应用系统的架构图见下:
单机结构架构图
大型互联网应用系统的架构图
从计算力和存储容量和访问速度能力,单机结构架构和大型互联网应用系统的架构中采用的方法进行对比
计算能力
单机结构架构的方法:
增加CPU的频率、超线程、cache配置、CPU核数
增加GPU来处理图形计算和AI计算
代码优化:不计算,少计算,SSE指令集优化
采用多线程:太大量的计算使用多线程,比如解压线程,比如纹理读取解析线程,
一些复杂的图形和图像计算根据业务调整,也可以多线程来实现,通过单CPU并发,多CPU并行机制,能够有效的利用CPU性能。
线程池的多线程机制,异步事件回调非阻塞
大型互联网应用系统的架构的方法:
增加服务器建立均衡负载+集群、分布式、微服务
业务调整采用异步的消息队列
存储容量和访问速度能力
单机结构架构的方法:
增加硬盘容量
通过使用RAID(独立冗余磁盘阵列)增加吞吐能力。
通过切换到SSD(固态硬盘)改善访问速度。
通过增加内存和CPU cache减少操作
通过升级网络接口或者增加网络接口提高网络吞吐能力。
采用数据压缩的方式存储
代码优化采用本地缓存、线程池、内存池方式
mmap内存文件映射机制减少拷贝
大型互联网应用系统的架构的方法:
增加服务器建立集群、分布式文件和数据库
采用缓存:CDN、反向代理、分布式缓存
结合业务的需求采用不同优化方法,优先还是从设计角度(分层、分割),达到模块的高内聚、低耦合,再结合一下优化技术手段进行落地更上一层次
评论