extensions icon indicating copy to clipboard operation
extensions copied to clipboard

High CPU usage over time in .NET 8 host when using Microsoft.Extensions.Hosting v9.0.0

Open rezord opened this issue 2 months ago • 0 comments

Description

We observed that when running a background service in a .NET 8 container, after several hours CPU usage steadily increases (i.e. “CPU ramp up”). This only occurs when Microsoft.Extensions.Hosting is at version 9.x, not when using 8.x.

Reproduction Steps

  1. Use a test project
  2. Target .NET 8
  3. Reference Microsoft.Extensions.Hosting v9.0.0
  4. Deploy to container or run continuously
  5. Observe CPU usage over time (e.g., dotnet-counters, top)
  6. Capture .NET trace / flame graph

Expected behavior

CPU should remain stable under idle or light throughput workload

Actual behavior

CPU usage gradually increases until saturation

Regression?

No response

Known Workarounds

No response

Configuration

No response

Other information

we have to downgrade all of these packages to fix the issue:

<PackageVersion Include="DeviceDetector.NET" Version="6.4.2" />
<PackageVersion Include="Microsoft.Extensions.Caching.Memory" Version="8.0.1" />
<PackageVersion Include="Microsoft.Extensions.Configuration" Version="8.0.0" />
<PackageVersion Include="Microsoft.Extensions.Configuration.Binder" Version="8.0.2" />
<PackageVersion Include="Microsoft.Extensions.Configuration.CommandLine" Version="8.0.0" />
<PackageVersion Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="8.0.0" />
<PackageVersion Include="Microsoft.Extensions.Configuration.Json" Version="8.0.0" />
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="8.0.2" />
<PackageVersion Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="8.0.2" />
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="8.0.0" />
<PackageVersion Include="Microsoft.Extensions.Hosting.Abstractions" Version="8.0.0" />
<PackageVersion Include="Microsoft.Extensions.Http" Version="8.0.0" />
<PackageVersion Include="OpenTelemetry.Exporter.Console" Version="1.9.0" />
<PackageVersion Include="OpenTelemetry.Exporter.OpenTelemetryProtocol" Version="1.9.0" />
<PackageVersion Include="OpenTelemetry.Extensions.Hosting" Version="1.9.0" />
<PackageVersion Include="OpenTelemetry.Instrumentation.AspNetCore" Version="1.9.0" />
<PackageVersion Include="OpenTelemetry.Instrumentation.Http" Version="1.9.0" />
<PackageVersion Include="YamlDotNet" Version="16.2.1" />

rezord avatar Oct 13 '25 21:10 rezord