高性能是每个程序员的追求,无论我们是做一个系统还是写一行代码,都希望能够达到高性能的效果,而高性能又是最复杂的一环,磁盘、操作系统、CPU、内存、缓存、网络、编程语言、架构等,每个都有可能影响系统达到高性能,一行不恰当的debug日志,就可能将服务器的性能从TPS30000降低到8000;一个tcp_nodelay参数,就可能将响应时间从2毫秒延长到40毫秒。因此,要做到高性能计算是一件很复杂很有挑战的事情,软件系统开发过程中的不同阶段都关系着高性能最终是否能够实现。站在架构师的角度,当然需要特别关注高性能架构的设计。高性能架构设计主要集中在两方面:· 尽量提升单服务器的性能,将单服务器的性能发挥到极致。· 如果单服务器无法支撑性能,设计服务器集群方案。除了以上两点,最终系统能否实现高性能,还和具体的实现及编码相关。但架构设计是高性能的基础,如果架构设计没有做到高性能,则后面的具体实现和编码能提升的空间是有限的。形象地说,架构设计决定了系统性能的上限,实现细节决定了系统性能的下限。单服务器高性能的关键之一就是服务器采取的并发模型,并发模型有如下两个关键设计点:· 服务器如何管理连接。· 服务器如何处理请求。以上两个设计点最终都和操作系统的I/O模型及进程模型相关。· I/O模型:阻塞、非阻塞、同步、异步。· 进程模型:单进程、多进程、多线程。在下面详细介绍并发模型时会用到上面这些基础的知识点,所以我建议你先检测一下对这些基础知识的掌握情况,更多内容你可以参考《UNIX网络编程》三卷本。今天,我们先来看看单服务器高性能模式
阅读完成 · 觉得有帮助?