Prior to this, only the response body counted toward the HTTP/2 response data rate. This PR aligns the HTTP/2 logic closer to the HTTP/1.x logic and measures the rate for all HTTP/2 response data. This PR also accounts for all response bytes written, not just those that immediately induced backpressure. |
||
|---|---|---|
| .. | ||
| Mocks | ||
| AssemblyInfo.cs | ||
| BinaryPrimitivesBenchmark.cs | ||
| BytesToStringBenchmark.cs | ||
| DotSegmentRemovalBenchmark.cs | ||
| ErrorUtilities.cs | ||
| Http1ConnectionBenchmark.cs | ||
| Http1ConnectionParsingOverheadBenchmark.cs | ||
| Http1WritingBenchmark.cs | ||
| HttpParserBenchmark.cs | ||
| HttpProtocolFeatureCollection.cs | ||
| InMemoryTransportBenchmark.cs | ||
| IntegerDecoderBenchmark.cs | ||
| Kestrel.Performance.csproj | ||
| KnownStringsBenchmark.cs | ||
| PipeThroughputBenchmark.cs | ||
| README.md | ||
| RequestParsingBenchmark.cs | ||
| RequestParsingData.cs | ||
| ResponseHeaderCollectionBenchmark.cs | ||
| ResponseHeadersWritingBenchmark.cs | ||
| StringUtilitiesBenchmark.cs | ||
README.md
Compile the solution in Release mode (so Kestrel is available in release)
build /t:compile /p:Configuration=Release
To run a specific benchmark add it as parameter
dotnet run -f netcoreapp2.1 -c Release RequestParsing
To run all use All as parameter
dotnet run -f netcoreapp2.1 -c Release All
Using no parameter will list all available benchmarks