伺服器端的 javascript - node.js

edited 十月 2013 in Javascript
網址: http://nodejs.org/

Node is similar in design to and influenced by systems like Ruby's Event Machine or Python's Twisted. Node takes the event model a bit further—it presents the event loop as a language construct instead of as a library.

Node 的設計相近與參考了 Ruby 的 Event Machine[1] 或是 Python 的 Twisted[2] , Node 在事件模型上面下了比較多功夫,將事件迴圈設計為語言結構,而不是一個函式庫。

[1] http://rubyeventmachine.com/
[2] http://twistedmatrix.com/

一樣是因應分散式、高負載的環境設計的解決方案,比較特別的地方是在伺服器端也是用 javascript 設計服務

原始討論: http://twpug.net/x/modules/newbb/viewtopic.php?topic_id=4684

評論

  • edited 十二月 2009
    今天聽了 amix[1] 的介紹後有比較了解這個東西了,下面是他今天演講的摘要:

    1. non-blocking 模式比 threaded 模式更能夠承受大量連線, nginx 就是前者、apache 是後者,因此 nginx 在大量連線的環境中會比 apache 適合
    2. plurk 是透過 comet 技術讓訊息的回應即時出現在使用者瀏覽器中( long polling mode)
    3. amix 說 websockets + node.js 將會是未來的形式, google wave 就是使用了 websockets 技術
    4. amix 也試過了 JBoss Netty(Java), erlycomet(erlang), Tornado(Python) ,覺得 node.js 最直覺
    5. 一個簡單的效能測試中, node.js 的效能幾乎是 Tornado 的一倍,簡單的應用
    6. CoffeScript[2], a ruby inspired language that compiles to javascript
    7. 現在還是早期的開發階段,所以還沒有很多資源可以使用,不過有 C++ 的介面可以呼叫舊有程式的資源

    [1] http://amix.dk/
    [2] http://jashkenas.github.com/coffee-script/
Sign In or Register to comment.