netNamedPipeBinding과 함께 WCF 서비스를 사용하여 많은 양의 데이터 (매우 긴 개체 목록)를 클라이언트 (물론 동일한 컴퓨터에 있음)로 전송합니다. 문제는 전체 호출이 ~ 250MB의 데이터를 전송하는 데 약 20 초가 걸리며 이는 초당 약 10MB 이상입니다. 메모리를 공유 할 때 전송 속도가 훨씬 빨라질 것으로 예상했습니다. 누구든지 내 성능과 전송 속도를 향상시킬 수있는 방법을 알고 있습니까?WCF with netNamedPipeBinding 성능이 좋지 않음
<netNamedPipeBinding>
<binding name="NetNamedPipeBinding_IDataService" closeTimeout="00:10:00"
openTimeout="00:10:00" receiveTimeout="00:10:00" sendTimeout="00:10:00"
transactionFlow="false" transferMode="Buffered" transactionProtocol="OleTransactions"
hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="2147483647"
maxBufferSize="2147483647" maxConnections="10" maxReceivedMessageSize="2147483647">
<readerQuotas maxDepth="32" maxStringContentLength="2147483647" maxArrayLength="2147483647"
maxBytesPerRead="4096" maxNameTableCharCount="2147483647" />
<security mode="Transport">
<transport protectionLevel="None" />
</security>
</binding>
</netNamedPipeBinding>
고마워 : 여기 내 app.config 파일입니다!
공유 메모리는 매우 빠르지 만 명명 된 파이프는 공유 메모리가 아닙니다. – vcsjones
확인. 올바른 바인딩이지만 바인딩의 백엔드 구현에 신경 쓰지 마십시오. 이 속도는 기본 HTTP 바인딩에서 기대할 수있는 것이고 훨씬 빠른 이름 지정 파이프 바인딩이 아닙니다. – Omri
처리량을 어떻게 측정하고 있습니까? 정말로 데이터 전송 시간이고 "매우 긴 객체 목록"의 직렬화/직렬화 해제가 아닌 것이 확실합니까? –