使用WebServiceHostFactory Pros&缺点

时间:2008-11-04 00:33:41

标签: .net wcf performance

在IIS上托管WCF服务时,您可以选择手动配置端点,也可以通过WebServiceHostFactory以声明方式配置端点。手动创建端点似乎并不困难,所以我想我会问。

  • 使用WebServiceHostFactory有什么好处?
  • 动态创建端点是否有任何性能影响?

2 个答案:

答案 0 :(得分:3)

您能否澄清一下:您是否具体询问 Web ServiceHostFactory(emph:“Web”)?或者只是IIS托管它与通过代码启动自己的服务器之间的区别?

WebServiceHostFactory是.NET 3.5中的新功能,它支持一些较新的AJAX / JSON内容。

实际上,在IIS(使用.svc)中,您已经在使用ServiceHostFactory - 只是WCF附带的默认值。你可以根据自己的需要编写自己的工厂,过去我也是这样做的,以创建一个监听https的工厂(我在托管多个网站的农场上遇到了问题,在那里它无法工作找不到http的正确站点,但https很好 - 所以我通过工厂完全禁用了http。

只要你不发疯并且听取200个终点,性能就不应该有任何不同......

通常,在(例如)Windows服务中托管服务器时,会使用手动创建服务器。 IIS适用于某些事情,但应用程序池可以回收,因此对于需要保留长期状态的服务器来说并不理想。 IIS具有易于配置的优势,尤其是在安全性(SSL等)和压缩方面。

答案 1 :(得分:0)

我绝对不是专家(但是),但想到的是:

  • 您只能进行一次身份验证 一次一个方法(即不是两个方法) Windows和匿名)cf. WebServiceHostFactory and IIS authentication
  • 错误处理很难做到 通用方式(没有Application_OnError, 所以你必须设置你的 毕竟手动终点)

临:

  • 从头开始轻松设置REST服务。