1

我正在开发一个使用 WCF 作为后端的 Silverlight 项目。该项目使用 Autofac for IoC(前端作为后端)。

WCF 服务托管在 IIS7 中并已正确配置(端点、aspnetcompatibilityenabled、..)。

在 VS 2012 中调试项目时,随机服务有时会抛出 ServiceActivationException,而没有任何信息。有时重建修复问题,有时 IISReset,有时使用 wcftestclient 调用服务。最后一个解决方案总是有效..

有没有人遇到过类似的问题?

如果需要,请随时询问更多信息。

谢谢!

4

1 回答 1

2

我发现是什么导致了这个问题。我在一个在 IIS 中托管多个 WCF 服务的 VM 中工作。虚拟机只分配了两个演出的 ram。后者没有引起任何性能问题,但是对于托管服务的 w3p 进程来说是个问题。

内存门检查失败,因为可用内存(43732992 字节)小于总内存的 5%。因此,该服务将无法用于传入请求。要解决此问题,请减少机器上的负载或调整 serviceHostingEnvironment 配置元素上的 minFreeMemoryPercentageToActivateService 的值。

我的服务仅在可用内存不足时失败。添加配置元素并升级虚拟机中的 ram-memory 解决了这个问题。

于 2012-12-15T07:59:42.193 回答