WCF Web服务的流响应的最佳实践

WCF Web服务的流响应的最佳实践,第1张

概述我正在尝试从WCF Web服务中提取大量数据.请求相当小,响应消息非常大.目前,由于IIS6可以为其分配的内存(~1.4GB)限制IIS服务,因此Web服务正在抛出SystemOutOfMemory异常. 我在一些博客中读过,实现流媒体将解决我的问题. 有人可以分享他们对这个主题的经验吗?我最感兴趣的是任何样本客户端&可以共享的服务端代码或任何建议/最佳实践. MemoryStream vs Fi 我正在尝试从WCF Web服务中提取大量数据.请求相当小,响应消息非常大.目前,由于IIS6可以为其分配的内存(~1.4GB)限制IIS服务,因此Web服务正在抛出SystemOutOfMemory异常.

我在一些博客中读过,实现流媒体将解决我的问题.

有人可以分享他们对这个主题的经验吗?我最感兴趣的是任何样本客户端&可以共享的服务端代码或任何建议/最佳实践. MemoryStream vs fileStream?返回类型应该是Stream,Message,Byte []?

我的 *** 作如下所示:(通常它会在响应数组中返回大量元素,~200K元素)

MediumSizeResponseClass[] GetData(SmallSizeRequestClass request)
解决方法 如果只想回送响应,请在绑定配置中使用transferMode = streamedResponse.这样可确保仅传输返回的响应.

流功能的返回值必须是Stream.然后,您可以从该流中读取并执行您需要执行的 *** 作(存储,分析,无论如何).

所以基本上你有一个像这样的服务合同:

[ServiceContract]interface IYourService{    [OperationContract]    Stream GetData(SmallSizeRequestClass request);}

在服务器上,您基本上只是写入流,而在客户端上,您从流中读取.

你有没有在WCF Streaming咨询过MSDN文档?

总结

以上是内存溢出为你收集整理的WCF Web服务的流响应的最佳实践全部内容,希望文章能够帮你解决WCF Web服务的流响应的最佳实践所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1062297.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存