wcf 서비스 엔드 포인트에서 <serviceThrottling maxConcurrentCalls="2"
[테스트 전용]을 설정하고 활성 상태로 유지되는 두 개의 호출을 활성화하고 세 번째 호출을 활성화하면 그 다음에 클라이언트 측이 인 경우이고 아무런 문제없이을 열었습니다.Maxconcurrentcalls 설정 및 통신 채널 열기
필자는 maxConcurrentCalls로 인해 열기가 실패 할 것으로 예상했지만 그렇지 않았습니다. sendtimeout에 도달 한 후에 만 통신은 예외를 제공합니다.
채널을 여는 것이 maxConcurrentCalls에 도달하면 실패하는 것을 선호합니다. 이러한 동작을 구성 할 수 있습니까?
대기열을 놓친 빈 슬롯을 기다리고 있습니다. 메시지 대기열에서만 발생한다고 생각했습니다. 큐잉을 금지 할 수 있습니까? Btw, 나는 테스트에서 연결을 열어두고 절대 닫지 않았습니다. – Gerard
큐잉을 금지 할 수 있는지 확실하지 않습니다. 나는 그렇게 생각하지 않는다. 큐잉 동작은 자동으로 생각합니다. 연결을 닫는 지 또는 닫지 않는지는 바인딩을 선택할 때 고려해야 할 사항입니다. basichttpbinding 또는 wshttpbinding과 같은 http 중심 바인딩 중 하나를 사용하는 경우 연결을 닫지 않아도 클라이언트에만 영향을 미칩니다. 그러나 TCP 바인딩을 사용하는 경우 연결이 지속될 수 있으므로 연결을 명시 적으로 닫아야합니다. – Brian
우리는 wshttpbinding을 사용하고 있습니다. 그러나 클라이언트에서 연결을 처리 할 때 호스트에는 사용하지 않는 슬롯이 있습니다. – Gerard