簡體   English   中英

使用.NET 3.5創建什么? Web服務或Windows服務

[英]What to create using .NET 3.5? A Web Service or a Windows Service

我必須創建一個可以服務大約100,000個客戶端的Web服務。 我已經創建Windows服務已有相當一段時間,並在其中使用WCF綁定。 Windows服務使用HTTP綁定並提供一個http端點,任何可以使用SOAP進行通信的客戶端都可以使用它。 我是應該創建ASP.NET Web服務還是Windows服務,這使我有些困惑,因為它們兩個都將提供HTTP端點。 我認為在WCF出現之前,Web服務曾用於HTTP綁定,而Windows Services已用於遠程處理等。

如果兩者都提供相同的HTTP端點,那么確定服務類型的標准應該是什么?

如果要構建需要服務10萬個客戶端的大容量應用程序,則應選擇IIS。 IIS內置了許多功能來處理高負載,以及身份驗證和SSL證書等企業功能。 如果您使用Windows服務,則需要自己承擔很多費用。

您可以將WCF與兩者一起使用,這樣就可以確定哪種類型的應用程序更適合您,並且絕對聽起來像IIS。

服務所在的端點與WCF與ASP.NET服務的區別是兩件事。 這是一篇有關WCF和ASP.NET服務之間差異的體面文章 端點的托管位置對您而言將非常重要,因為您正在尋找高可伸縮性。 就可伸縮性和可靠性而言,您應該利用IIS7內置的所有出色功能來承載端點。 我認為沒有必要在您自己的流程中托管它。 開發可以像IIS7一樣水平擴展的東西將是很多工作。 這是一篇有關如何在IIS中托管WCF服務的小文章

您應該合並所有答案。

WCF服務既可以作為Windows服務托管,也可以作為IIS托管。 IIS為您提供了更多工具來擴展和處理大量請求。 由於您的目標是網絡,並且可以使用IIS,因此請使用IIS。

JP的答案包含有關如何在IIS中托管WCF的鏈接 ,該鏈接應該可以消除您在sipwiz的答案中遇到的問題。

因此,繼續創建一個ASP.NET Web應用程序。 然后在其中創建WCF服務(或將WCF服務庫項目添加到您的解決方案中,並在ASP.NET Web應用程序中引用它。

鑒於您的工作規模,您可能要堅持使用WCF。 輕松配置不同協議和其他框架功能(例如內置日志記錄)應該可以很好地為您服務。

使用asmx服務的優點之一是易於集成到網站項目中。 如果您位於具有共享托管的小型站點上,則可能無法運行WCF服務,但可以運行asmx服務。

您應該在這里明確考慮可伸縮性。 例如:如果必須使用Web場擴展系統,會發生什么? Win服務方案如何適應這種情況?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM