0

我需要一些关于WCF的理解。WCF可以通过Internet访问Windows服务中的WCF吗?

我正在处理客户端服务器应用程序。项目计划就是这样的。

我们有一台服务器在Windows 7上运行SQL Server 2008(我知道Windows 7并不是服务器的最佳选择,但它现在拥有Windows 7)。我正在计划构建WCF服务集群,它将托管在Windows服务上,并在服务器端使用net tcp绑定。这些WCF服务集群处理应用程序和数据库事务的所有业务逻辑。

此时将会有25个运行客户端应用程序的Windows客户端(未来可能会增加)。所有的客户端都在同一个局域网中,所以我想上面的架构工作,所有的客户端都可以使用net TCP绑定访问在服务器上运行的WCF服务。 请纠正我,如果我错了...

我想在将来做的是我想创建一个移动客户端应用程序或Silverlight客户端应用程序来访问相同的WCF服务......这是可能的,如果我在Windows服务中托管了WCF服务,并且如果移动客户端应用程序/ Silverlight客户端应用程序位于同一网络(相同的LAN)上? (我想没有看到评论)

如果我想通过互联网访问它?以上Windows服务托管的WCF服务可以通过互联网访问吗? (可如果nettcp约束力,但只能通过其他WCF应用 - 见注释)

如果没有,我可以创造HTTP基本端点的WCF服务,而在窗口服务托管,并可以通过Internet访问?

如果不是,我可以在Windows服务以及IIS托管相同的WCF服务?

如果你想通过局域网和Internet访问WCF,那么最好的选择是什么?

+0

我想在经过一番研究之后,我发现nettcp绑定允许通过互联网进行通信,但只与另一个WCF应用程序通信。因此,公开该服务的目的是由任何其他客户端使用,然后WCF客户端应用程序更好地使用basichttpbinding ... – microchip78 2012-01-31 00:15:01

+0

nettcp绑定仍然可以通过Intranet计算机 - 计算机通信工作... – microchip78 2012-01-31 00:15:36

+0

假设您允许连接(端口转发或者设置一个DMZ),客户端可以使用nettcp,但是我没有看到问题。但是,正如另一位用户所建议的,如果您正在寻找跨多个客户端的可访问性,则最好使用basichttpbinding/soap端点。 – 2012-01-31 00:26:17

回答

0

WCF的一个好处是,您可以尽可能地发布有关托管,协议和绑定的pone决策。如果您需要一个prive WCF服务,只需使用nettcp绑定即可。如果你想扩展到互联网,你可以随时添加其他绑定。

您可以随时将托管决定从Windows服务更改为IIS。这是相对微不足道的。

相关问题