웹 서비스 속도가 느려졌습니다. 내 웹 서비스가 gsoap & managed C++에 있습니다. IIS/apache가 호스팅되지 않지만 xml을 사용합니다. 클라이언트가 .NET에 있습니다. 서비스 계산 시간이 가볍습니다 (응답을 준비하려면 < 0.1 초). 서비스가 원활하고 빠르며 좋은 가용성을 기대합니다. 약 100 개의 클라이언트가 있으며 응답 시간은 1 초입니다. 클라이언트는 분당 약 1 건의 요청을 처리합니다. 클라이언트가 tcp open port test를 통해 웹 서비스 존재를 확인 중입니다. 그래서 혼잡을 피하기 위해 gSoap KeepAlive를 false로 설정했습니다. 모든 것이 잘 돌아갈 때까지 : TCPView (sysinternals)에서 연결을 볼 수 있습니다.웹 서비스 속도 저하
새로운 특수 동기화 프로그램이 이제 루프에서 서비스를 호출합니다. 로드가 높지만 모든 것이 30 초 이내에 처리됩니다.sysinternals TCPView를 사용하면 약 1 천 개의 연결이 TIME_WAIT에 있음을 알 수 있습니다. 서비스가 느려지 며 서비스가 응답하는 데 몇 초가 걸립니다.
SoapHttpClientProtocol 연결을 재설정해야 할 수 있습니까? 누군가가 루프에서 웹 서비스 호출로 유령을 TIME_WAIT 가지십니까?
나는 동의한다. KeepAlive = false를 서버 측에서 사용하길 원하지만 클라이언트 측에서 을 사용하면 .NET은 기본적으로 재활용을 선호합니다. 이 해결책을 찾았습니다 : http://yakkowarner.blogspot.com/2008/11/calling-web-service-in-loop.html 하지만 무거워 보입니다. 나는 그 중 하나를 시도하고있다 : http://forums.asp.net/t/1003135.aspx – wiwulo