2010-08-11 111 views
63

假設一組開發人員同樣習慣於在服務器端編寫Javascript,因爲它們與Python &扭曲,Node.js什麼時候比Twisted更合適(反之亦然)?Node.js vs Twisted的用例是什麼?

+0

截至2013年,這兩個框架的當前狀態如何。似乎更多的人使用Node.js而不是Twisted。糾正我,如果我錯了 – Nipuna 2013-08-25 14:36:07

+0

做出明智的決定,並開始。 - 在你通過了一些問題之後,你更清楚要做出更好的決定。也許改變你的工具並重做它。 – 2013-11-10 03:29:56

回答

77

扭曲更成熟 - 它已經存在了很長很長的時間,並且有如此多的花裏胡哨的東西讓你頭腦轉動(實現最好的協議,將反應堆與各種各樣的其他事件循環等等)。

Node.js據說更快(我自己沒有測量過它),也許使用起來可能更簡單(如果你不需要額外的鈴聲和哨子),因爲那些額外的東西不存在就像Python世界中的Tornado一樣 - 我再也沒有測量過相關性能)。

所以,如果我需要任何額外的功能,或者希望通過使用更成熟的軟件包感覺更堅實,我絕對會使用Twisted。如果這些考慮不適用,但是最高性能是項目的關鍵目標,那麼我會在Twisted中編寫一個簡單的基準(但仍然代表我的實際項目中至少有一兩個關鍵性能需求情況) Node.js, Tornado,並且在我決定整體走哪條路之前做了很多仔細的測量。用於Python和服務器端JavaScript的「額外功能」(第三方擴展和標準庫)也更加豐富,如果項目需要這些附加功能,這可能是一個關鍵因素。最後,如果這些問題在特定的應用場景中都不重要,那麼開發團隊就簡單性和熟悉性對三個候選者(Twisted,Node.js,Tornado)的相對簡單性進行投票 - 他們中的任何一個可能會很好,不妨選擇大部分球隊最適合的選擇!

+1

非常感謝! – pmn 2010-08-12 04:26:08

+1

@icey,不客氣! – 2010-08-12 04:44:41

+0

很好的答案,+1建議OP看Twisted(這可能會更簡單的滿足他們的需求)。 – mikemaccana 2011-02-08 21:27:17

8

截至2012年,Node.js已被證明是一個快速,可擴展,成熟和廣泛使用的平臺。瑞恩·達爾,Node.js的創造者語錄:

這些天,節點正在使用大量的初創公司,並建立公司在世界各地的 ,從Voxer和超級沃爾瑪和微軟。可以肯定地說,每天有數十億的請求通過Node傳遞。隨着越來越多的人來到該項目,可用的第三方模塊和擴展的質量增長和增加 。儘管我曾經保留過關於推薦它用於任務關鍵型 應用程序的內容,但我現在衷心推薦Node用於即使最苛刻的服務器 系統。

更正式,節點的優勢,可以劃分爲:

  • 大社區:可以說,沒有其他的平臺在這麼短時間內取得這樣的社會訴求,它在GitHub中有數百名貢獻者和數千名觀察者,並正在被Yahoo!等巨人使用。 (曼哈頓項目),電子灣,LinkedIn,微軟和Voxer。

  • NPM:雖然具有相對小的核心,節點有大量可用的軟件包擴展其功能,以任何你可以考慮!它的全部自動化和正在開發和積極擴展,想起PyPI(pip)。

  • 可擴展性和速度:節點的架構和單線程特性允許高可擴展性和速度。特別是在0.8發佈之後,其速度變得非常快(benchmarks),這可以被許多使用Node的大型企業所證實。由於目前的瀏覽器戰爭,它的V8核心也不斷變得更好。

  • 的JavaScript:節點(JS)的核心語言適合這樣的服務器端的用途,特別是lambda函數,動態物體,而且容易JSON序列化更好的是JS亮點的情況下速度和可擴展性計數這確實非常適合。 (Python擁有所有這些,但是這些在JS中更好,更強大)。

  • 部署:由於其廣泛的使用,很多真正的好網站,方便和強大的節點部署提供了各種工具,包括:Heroku的,Joyent公司,CLOUD9和更大量。

因此,節點似乎更強大,用打火機的未來,因此,如果沒有任何限制使用它(像現有的代碼,服務器,團隊的能力),它被推薦用於任何新的合作網絡項目瞄準高速度和可擴展性。

+27

聽起來你不知道Twisted的成熟程度。你已經突出顯示的任何點都不是Twisted(除了「JavaScript」點,它是列表中最細的項目)! – 2012-07-28 00:14:37

+4

@ Jean-PaulCalderone快速查看右邊的tagstats支持他的第一點:node.js×11239 twisted×1021 – UpTheCreek 2012-08-10 15:41:00

+5

如果您認爲這個大小是衡量社區的唯一指標,當然。 – 2012-08-10 23:12:08