高性能 Windows 套接字应用程序

Microsoft Windows 网络组件已针对性能和可伸缩性进行了开发。 这使应用程序能够最大化可用的网络带宽。 Windows 套接字和 Windows TCP/IP 协议堆栈已经过优化和简化。 因此,正确编写的 Windows 应用程序可以实现卓越的吞吐量和性能,如以下事实所示:

  • Windows 能够同时维护超过 200,000 个 TCP 连接。
  • 在 SPECWeb96 进行的一次测试中,Windows 上的 Internet 信息服务器每秒为超过 25,000 个 HTTP 请求提供服务。
  • Windows 在由 10 个跃点组成的跨大陆千兆位网络上创造了超过 750Mbps 的传输记录。

这些成就表明 Windows TCP/IP 处理数据的速度非常快。 但是,许多应用程序不会利用 Windows、TCP/IP 和 Windows 套接字性能功能,因为它们在不知不觉中实现了妨碍性能的技术。

在本指南中,你将了解如何识别常见的编程错误以及如何避免这些错误。 然后,你将了解使 Windows 套接字应用程序能够以最佳方式执行的技术。 本指南分为六个部分。 各节的顺序是有意的;若要充分利用本指南,请依次阅读。 下表提供了指向每个部分的链接,以及每个主题的简要说明。

主题 说明
网络术语 定义了解网络应用程序的性能所需的网络术语和指标。
性能维度 讨论影响应用程序感知和实际网络性能的性能维度。
TCP/IP 特征 定义可能导致编写不当的应用程序出现性能问题的 TCP/IP 协议特征。
应用程序行为 说明如何识别性能不佳的网络应用程序的迹象。
改进慢速应用程序 提供导致应用程序性能不佳的应用程序设计问题示例,并更改代码以提高性能。
交互式应用程序的最佳做法 列出开发最佳交互式网络应用程序的最佳做法。