2010-08-20 4 views
3

ASP.NET에서 스레드가 작동하는 방식에 대한 더 나은 처리를 위해 노력하고 있으므로 몇 페이지의 테스트 사이트가 있고 테스트 사이트에 대략 40 개의 요청을 동시에 생성하는 테스트 WinForms 클라이언트가 있습니다. 요청은 완료하는 데 약 5-10 초가 걸립니다. 다른 서버에서 웹 서비스를 호출합니다. 테스트 클라이언트를 실행할 때 Fiddler를 사용하여 요청이 동시에 이루어지고 있는지 확인할 수 있습니다. 그러나 웹 서버의 성능 모니터에서 "ASP.NET Apps v2.0.xxx/Request Executing", "ASP.NET/Requests Current", "ASP.NET Requests Queued"카운터를 보면 이러한 카운터는 절대로 사용하지 않습니다. 2보다 큰 수를 표시합니다. 요청하는 테스트 페이지가 Async = True로 설정되었는지, 웹 서비스 호출의 시작/끝 패턴을 사용하는지 또는 호출을 동 기적으로 설정하는지 여부에 관계없이이 경우입니다. 내가 Fiddler에서 보는 것으로 판단하면, 나는 그 주들 중 한 곳에서 총 40 건의 요청을보아야한다고 생각하지만, 그렇지 않습니다. 왜 그런가요? 이 카운터들은 그들이 의미하는 바를 의미하지는 않습니까?ASP.NET 성능 카운터의 의미는 무엇입니까?

답변

0

요청이 동일한 서버로가는 경우 System.Net 연결 제한을 초과하여 한 번에 2 개의 연결 만 처리 할 수 ​​있습니다.

stack overflow question은 더 많은 연결을 가능하게하는 web.config 변경의 예를 보여줍니다.