2017-11-01 2 views
0

wcf-service 및 wcf-client가 있습니다. 서비스는 하나의 요청에 대해 55000 개 이상의 항목을 큰 데이터 배열로 클라이언트에 보냅니다. 이 배열을 서비스 측에서 구성하는 데 1 초도 걸리지 않지만 클라이언트 측에서이 배열을 5 초 이상 수신합니다! 이거 더 빨리 할 수 ​​있을까요? 중요한 경우 클라이언트 쪽에서 BasicHttpBinding을 사용합니다. (페이징은 저에게 좋은 생각이 아닙니다)WCF의 대형 데이터 배열

+1

때때로 반환 할 항목의 직렬화를 변경하여 개선 할 수 있습니다. 예를 들어 속성의 이름이'SomeLongPropertyName'이라면'[DataMember (Name = "slpn")]'을 지정하면 긴 속성 이름 전체가 직렬화 된 데이터에 나타나지 않습니다. 때때로 멤버 이름의 오버 헤드가 실제 값보다 훨씬 큽니다. –

답변

1

messageEncoding="Mtom" 데이터를 스트리밍해야하거나 WCF 클라이언트와 서버가 net.tcp 바인딩으로 변경하면 하위 프로토콜로 오버 헤드 데이터가 제거됩니다. 데이터를 스트리밍 할 수도 있습니다.