这张图中最重要的就是那根“细细的红线”:网络管理进程完全位于用户态。这正是 DPDK 思想的核心,传统的 UNIX 网络模型已无法应对单机 10G 的速度,因为需要读写内存的上下文切换的速度太慢了。为了实现更高性能,必须从底层网络数据处理流程上进行革命——抛弃操作系统提供的网络栈,直接在用户态接管所有网络流量。
为了提高软件稳定性,H3C 还在系统内开发了一些高可用技术,与我们负载均衡集群高可用的设计思想不谋而合,异曲同工:
通过本文构建的这个 200/400G 负载均衡集群,配合多个应用网关以及后面海量的物理服务器,我们终于成功实现了一百万 QPS 的目标。然而,这只是 Web 服务层面的百万 QPS,在真实世界中,数据库才是那个最难解决的单点,接下来我们将会用 5 章的篇幅尝试解决这个问题。
📙 高并发的哲学原理 《Philosophical Principles of High Concurrency》
Copyright © 2023 吕文翰