WCF에서 빅데이터 양을 전송하는 중 오류를 해결하고 알림: 원격 호스트가 기존 연결을 강제로 닫았습니다.

5932 단어
WCF 통신에 사용되는 프로젝트에서 업무 논리 서버 메모리에 있는 데이터를 ERP 인터페이스로 전송하는 디스플레이는 나중에 서버에 있는 데이터를 조회할 때 KVM에 들어가는 케이스 현상을 피한다.서버 메모리 데이터를 모두 제공하여 ERP를 호출할 수 있도록 했습니다. 모든 데이터는 가능합니다. 그러나 조종사 데이터(7000 이상)와 등록된 장치 ID 데이터(3000) 이상에서 두 데이터는 원격 호스트가 기존의 연결을 강제로 닫는 문제가 발생했습니다. 데이터량이 많으면 이런 상황이 발생합니다.여러 차례의 자료 조회를 거쳐 이 문제를 해결하고 기록을 하여 다시는 유사한 상황이 발생하지 않도록 하였다
서버 측 구성
maxBufferSize와 maxReceivedMessageSize가 설정한 빅데이터 값 "2147483647"
 <basicHttpBinding>
        <binding name="BasicHttpBindingConfig" receiveTimeout="00:00:30"
          sendTimeout="00:00:30" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" />
 </basicHttpBinding>

 , MaxItemsInObjectGraph 
<behavior name="BasicHttpBehavior">
          <serviceThrottling maxConcurrentSessions="10000" maxConcurrentInstances="1000" maxConcurrentCalls="1000" />
          <serviceDebug includeExceptionDetailInFaults="false" />
          <serviceMetadata httpGetEnabled="true" />
          <dataContractSerializer maxItemsInObjectGraph="2147483647" />  
        </behavior>

 
 maxItemsInObjectGraph 
<behaviors>
      <endpointBehaviors>
        <behavior name="BasicHttpBehavior">
          <dataContractSerializer maxItemsInObjectGraph="2147483647"/>
        </behavior>
      </endpointBehaviors>
    </behaviors>

 maxBufferSize maxReceivedMessageSize “2147483647”  
<binding name="BasicHttpBinding_IHandleWeb" closeTimeout="00:01:00"
     openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
     allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
     maxBufferSize="2147483647" maxBufferPoolSize="5242880000" maxReceivedMessageSize="2147483647"
     messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
     useDefaultWebProxy="true">
     <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
      maxBytesPerRead="4096" maxNameTableCharCount="16384" />
     <security mode="None">
      <transport clientCredentialType="None" proxyCredentialType="None"
       realm="" />
      <message clientCredentialType="UserName" algorithmSuite="Default" />
     </security>
    </binding>

좋은 웹페이지 즐겨찾기