2013-04-24 77 views
0

node.js創建自己的服務器並試圖監聽它的意義是什麼,是不是IIS/apache給我們所有這些?我瞭解它基於I/O完成,但我們有Web服務器技術。有人可以解釋通過節點可以實現什麼(除了服務器端的java腳本,也可以通過SignalR實現),這不能通過ASP.NEt完成,爲什麼我們應該在節點上集中這麼多時間技術在asp.net下的堆棧棧 節點的任何經典示例?通常用於企業開發。店NODE.JS與IIS(爲什麼節點)

大多數Web編程是其中大部分是數據庫密集型的數據顯示&電子商務等應用,但最近它一直混搭,以及與網絡服務,是移動網絡是一個不同的遊戲,由於硬件傳感器我同意,但什麼Node是否給了我們哪些帶有SignalR的ASP.NET不能給我們?

TIA

+2

我明白納悶,但恐怕是[不是這類問題的最好的地方(http://stackoverflow.com/faq)(開放動搖,優柔寡斷,並可能導致延長討論)。但是,真的沒什麼。節點不是所有問題的「*銀彈」。但是,其他人(ASP.NET,PHP等)也不例外。對於類似的問題,它們都是不同的工具,它們都不是「完美*」。 – 2013-04-24 19:24:46

+0

IIS執行node.js聲明的所有事情,自從多年以來,IIS中存在異步http處理程序。而在.net 4.5以上版本中,IIS側重於異步IO,它只是一個很大的市場宣傳,它的某些部分缺失,IIS將在下一版本中使用,同樣也適用於apache&tomcat。 – 2013-04-24 19:37:35

回答

0

每種技術都可以實現任何功能。如果您更喜歡節點上的ASP.NET,請使用它。 ASP.NET功能非常強大,當您擁有專業知識和軟件/資金來運行您的服務時,沒有理由使用Node over ASP.NET。節點是不同的;它具有不同的執行模式(不需要任何線程),最重要的是它是開放源代碼和免費的。在任何操作系統上啓動都很容易,並且易於在任何操作系統上部署。但最終,它歸結爲; 更喜歡什麼?

6

我發現Node非常有趣的是,一切都是基於事件的,這與編程ASP.NET或PHP的行爲更順序的不同。不是壞事,只是一種不同的做事方式。

您可以對服務器本身進行編程(而不是編程運行在服務器上的應用程序),而不是對服務文件做更多的操作,Node的典型示例是聊天室應用程序,您可以向所有參與者廣播消息,消息到服務器。通過編程你自己的服務器事件(如listen,error,connect等),你可以很好地控制服務器端的事情。

當然,npm是節點包管理器,如果你想使用第三方庫,必須手動工作依賴關係。

要託管一個ASP.NET站點/應用程序,您需要IIS是專有系統,而Apache和Node更加開放。儘管如此,Node託管並不像基於Apache的託管那樣普遍。

希望這回答了你的一些問題