node.js

node.jsについて、簡単に調べた内容をまとめておく。

概要

JavaScript処理系で動作するライブラリ。CommonJSに準拠する。
ネットワーク周りの低レベルAPIが豊富で、WebサーバやFTPサーバを容易に実装可能。
WebSocketのAPI提供も、人気の理由の一つとか。
node.js上で動作するコードが多数開発されており、フレームワークも存在する。

Webサイト
GitHub - nodejs/node-v0.x-archive: Moved to https://github.com/nodejs/node
JavaScript処理系
V8
ライセンス
MITライセンス

良いところ

  • シングルスレッドゆえのノンブロッキング処理、リソース節約
  • WebSocketのうまみ
    • 楽観的オフラインロックによる業務エラーなどを未然に防ぐことができる
    • クライアント側からのページ更新要求の手間なしに、ブラウザに表示されている情報を常に最新の状態に維持できる

用語

CommonJS
サーバサイドJavaScriptの標準。並んで、Webアプリ機能に相当するJSGI(JavaScript Gateway Interface)がある
Webサーバ
HTTPプロトコルで通信するサーバ
FTPサーバ
FTPプロトコルで通信するサーバ
WebSocket
アプリケーション層のプロトコルTCPコネクション上で軽量の双方向通信を行う
V8(Google V8 JavaScript Engine)
Googleが開発したJITコンパイル形式のJavaScript実行エンジン。Chromeに採用されている

参考文献

実践JS サーバサイド JavaScript 入門

実践JS サーバサイド JavaScript 入門