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。這是相對微不足道的。