问题描述
|
我有一个WCF RESTful服务,该服务托管在IIS中,受到我们的一些应用程序的攻击。 WCF服务在大多数情况下似乎运行良好,但是有时需要很长时间才能从服务中获得响应。
我正在查看是否有很好的教程或资源可循,以了解如何通过web.config,IIS或我们专用的应用程序池将WCF RESTful服务最佳地配置为Web级。
我们已经遍历了我们的服务,并使用NHibernate profiler查找和优化了任何有问题的查询,并且我们还使用了内存缓存设置来帮助提高性能。问题似乎出在许多应用程序在短时间内使用服务或长时间闲置服务时。
感谢您的协助。
解决方法
不确定它是否适用于您的情况,但是几天前我在MSDN上阅读了以下博客文章。这与Net IOCP线程池中的问题有关,当在短时间内发出许多请求时,该问题会导致WCF的响应时间长。也许对您有帮助?
WCF会随着工作量的增加而缓慢扩展
KB2538826
,没有关于重载问题的一般建议,但是可能的优化方法之一是在服务器端使用异步操作:通过异步编程更好地扩展WCF应用程序。这是关于在进行数据库调用时节省线程池资源。
至于闲置时间问题,请查看配置应用程序池的回收设置(IIS 7)