thread pool starvation
1.0.0
ASPNET应用程序样本以检测ThreadPool饥饿使用:
dotnet-countersdotnet-stackheydotnet-monitorprometheusgrafana使用Docker运行应用程序
docker compose up app
使用dotnet-counters监视应用程序
docker exec -it thread-pool-test-app dotnet-counters monitor -n dotnet
要获得dotnet-stack运行以下
docker exec -it thread-pool-test-app dotnet-stack report -n dotnet
运行该应用程序将使用dotnet-monitor启动一个容器。该容器是设置的,以通过诊断端口从应用程序容器中获取诊断命令。 dotnet监视器通过有用信息公开端点:
似乎可以在这里进行完整列表:https://github.com/dotnet/dotnet-monitor/blob/main/main/documentation/api/readme.md。
指标端点以普罗米修斯博览会格式捕获指标。
开始使用Grafana使用命令bellow:
docker compose up grafana
与Prometheus DataSource一起编写的Grafana,社区提供了dotnet-Monitor仪表板。启动后,请访问http:// localhost:3000/dashboards(用户: admin ,密码: admin )
启动打击同步端点的负载测试
docker compose up send-load-sync
启动打击异步端点的负载测试
docker compose up send-load-async