WCF自托管,仍然使用基于IIS的IIS或某些虚拟服务器。
例如:在编写非常基本的WCF主机之后,可以调用诸如
的端点
http://localhost:9090/foo.svc
例如:通过TCP调用WCF主机,是否在内部使用IIS?
由于我使用的另一个应用程序,我试图避免使用IIS,这对IIS线程起作用。这就是为什么要问。所以我想管理我自己的AppDomain和线程池,而不是IIS。
任何建议?
我可以从IIS分离托管WCF吗?
答案 0 :(得分:3)
当您自托管时,您根本就在使用而不是碎片的IIS。你不需要那台机器上的IIS - 没有。
WCF自托管将需要http.sys
驱动程序进行基于http的通信 - 但这就是全部。 绝对无需IIS的痕迹 - 无,zip,nada。
自托管WCF还允许您选择自己的服务地址并使用符合您需求的任何内容 - 没有虚拟目录,也没有* .svc文件需要处理。
答案 1 :(得分:0)
这取决于绑定。如果您执行BasicHttpBinding,则所有通信都将通过HTTP进行。
至于托管WCF,您可以使用Visual Studio附带的测试服务器(它作为服务运行。它被称为WcfSvcHost.exe),但我不建议将它用于生产。如果您只是在测试,那么您可以在Visual Studio调试器中启动WCF并使用其所需的地址(在这种情况下它将是http://localhost:1234/foo.svc)
如果您正在寻找生产主机,您可以将WCF用作SOAP endpoint,这里有一篇非常好的文章,The Code Project讨论创建自托管服务