.NET 9 网络优化
💡
原文中文,约36300字,阅读约需87分钟。
📝
内容提要
.NET 9 引入了多项网络改进,包括优化 HTTP 连接池性能、支持多个 HTTP/3 连接、自动更新 Windows 代理等。新版本还增强了 HttpClientFactory 和 WebSockets 的功能,提高了安全性和开发者体验。
🎯
关键要点
- .NET 9 引入了多项网络改进,包括优化 HTTP 连接池性能、支持多个 HTTP/3 连接、自动更新 Windows 代理等。
- HTTP 连接池进行了性能优化,增加了对多个 HTTP/3 连接的可选支持。
- HTTP/1.1 连接池中的锁争用问题得到解决,使用并发集合替代了原本的普通列表,提升了请求吞吐量。
- Windows 上的代理设置现在可以自动更新,HttpClient.DefaultProxy 会监听注册表变化。
- 感谢社区贡献,解决了 HttpContent.LoadIntoBufferAsync 中缺少 CancellationToken 重载的问题。
- QUIC 领域的显著变化包括将 QUIC 库公开、提供更多连接配置选项和性能优化。
- 引入了新的 API 以支持在 SocketsHttpHandler 中使用多个 HTTP/3 连接。
- .NET 9 为 WebSockets 引入了 PING/PONG Keep-Alive 策略,增强了连接的可靠性。
- 在 .NET Framework 兼容性方面,补充了部分缺失的旧类实现,并提供了迁移指南。
- 诊断工具的优化重点在于增强隐私保护和提升分布式追踪能力。
- HttpClientFactory 引入了 Keyed DI 支持,提供了新的便捷使用模式。
- 默认主处理程序更改为 SocketsHttpHandler,以减少常见的错误使用情况。
- 在安全方面,引入了 SSLKEYLOGFILE 支持和更多支持 TLS 会话恢复的场景。
- 服务器发送事件解析器被引入,允许服务器通过 HTTP 连接推送数据更新到客户端。
- System.Net 命名空间中的小改动包括新的 MIME 类型和 Uri 的 IEquatable<T> 接口实现。
➡️