Output caching is a novel middleware that saves the responses produced by a web app and retrieves them from the cache instead of recalculating them repeatedly. Output caching is distinct from response caching.
ASP.NET Core now fully supports HTTP/3, making it no longer experimental. Kestrel's support for HTTP/3 has also been improved, with two main areas of focus being performance and feature parity with HTTP/1.1 and HTTP/2.
With the release of .NET 7, a major restructuring of Kestrel's handling of HTTP/2 requests has been implemented. This will result in decreased CPU utilization and increased performance for ASP.NET Core applications with heavy HTTP/2 connections.
Support for WebSockets over HTTP/2 has been added to Kestrel, the SignalR JavaScript client, and SignalR with Blazor WebAssembly with the release of .NET 7. No new APIs are required as version negotiation is automatically handled by both browsers and Kestrel.
In .NET 7, Kestrel's memory pool and I/O queue are partitioned similarly, resulting in reduced competition and improved performance on high-core machines. This enhances the scheduling of I/O operations in Kestrel's default Socket transport.