2011-03-27 76 views
1

我有一个nettcp服务,我必须托管。我有三个选择 -哪个是托管一个nettcp WCF服务的最佳选择

  1. IIS 7

  2. Windows服务

  3. 控制台应用程序

我将不胜感激,如果有人可以提供一些有价值的想法上的选项相对于其他人更好。

+0

难道我的文章帮助你在任何结论到达? – Kev 2011-05-11 14:17:34

回答

3

下面是我的一些意见:

IIS 7:

优点:

  • 现成的托管环境中IIS
  • 将与几乎所有的托管环境
  • 工作

个缺点:

  • HTTP只有
  • 配置稍微复杂

WAS:

优点:

  • 现成和熟悉的过程模型,以非法入境者
  • 在IIS
  • 没有依赖的所有协议支持

缺点:

  • 并非所有的共享主机环境将支持非HTTP协议绑定或不寻常的端口号。
  • 配置稍微复杂

Windows服务:

优点:

  • 启动Windows启动时
  • 可以启动/通过服务控制管理器
  • 停止服务
  • 支持的所有协议

缺点:

  • 一些额外步骤来部署/重新部署(installutil)
  • 你需要一些额外的样板代码来支持服务实现
  • 不理想的,如果你不能有访问服务器进行安装(例如,共享主机)

控制台应用程序:

优点:

  • 快速简单的部署用于测试目的
  • 所有协议支持

缺点:

  • 您需要登录到启动过程
  • 损失会话或机器关机将杀死服务
  • 控制台/ RDP访问所需
+0

谢谢Kev。我将在Win2008 VPS中托管此服务,因此访问方面我有完全的控制权。另外,我想知道我所在的位置(IIS7/WAS/ConsoleApp/WinService)是否会影响服务的性能。 – saarthak 2011-03-29 04:51:55

+0

@Saarthak - 使用IIS和WAS时,根据调整空闲超时和回收策略的方式创建进程时,可能会产生很小的开销。但它是小土豆。 – Kev 2011-03-29 08:34:46