thread pool starvation
1.0.0
ASPNET 앱 샘플을 사용하여 ThreadPool 기아를 감지합니다.
dotnet-countersdotnet-stackheydotnet-monitorprometheusgrafanaDocker를 사용하여 앱을 실행하십시오
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 Monitor는 유용한 정보로 엔드 포인트를 노출시킵니다.
전체 목록은 여기에서 보일 수 있습니다 : https://github.com/dotnet/dotnet-monitor/blob/main/documentation/api/readme.md.
메트릭 엔드 포인트는 Prometheus Exposition 형식의 메트릭을 캡처합니다.
Grafana를 시작하려면 명령을 사용합니다.
docker compose up grafana
Prometheus DataSource와 커뮤니티가 Dotnet-Monitor 대시 보드를 제공 한 Compose Provisions Grafana. 일단 시작되면 http : // localhost : 3000/dashboards로 이동하십시오 (사용자 : admin , 암호 : admin )
동기화 엔드 포인트에 도달하는로드 테스트를 시작하십시오
docker compose up send-load-sync
비동기 종말점에 도달하는로드 테스트를 시작하십시오
docker compose up send-load-async