【書籍メモ】実践Node.jsプログラミング|第1章 Node.js に、ようこそ!
この章で扱う概念
- サーバサイド開発に、なぜJavaScriptが重要なのか
- ブラウザはJavaScriptを使って、どのようにI/Oを処理するのか
- サーバ上のNodeは、どのようにI/Oを処理するのか
- DIRTyアプリケーションとは何を提供するのか。どうしてそれがNodeに適しているのか
- 基礎的なNodeプログラムのサンプル
サーバサイド開発に、なぜJavaScriptが重要なのか
- サーバサイドもJavaScriptを用いることで、開発者はただ一つの言語でWebアプリケーションが書ける。クライアント開発とサーバ開発の間で発生するコンテクストの切り替えが削減される。
- JavaScriptはさまざまなNoSQLデータベースで使われている言語なので、それらのインターフェースとの相性が良い。
など
ブラウザはJavaScriptを使って、どのようにI/Oを処理するのか
- イベント駆動で、入出力でブロックしない(非同期I/Oを使う)
- ほかに対話処理があっても、そのページで別の要求が発生しても、それに応答できる
- この仕組みによって、クライアントに素早く反応し、そのページにおける大量のインタラクションを処理できる
サーバ上のNodeは、どのようにI/Oを処理するのか
- ブラウザの場合と似ている
- Nodeではほとんど常に入出力がメインのイベントループの外側で実行されるので、サーバは高い効率と応答性を保つことができる
DIRTyアプリケーションとは何を提供するのか。どうしてそれがNodeに適しているのか
- DIRT = Data-Intensive Real-Time(大量のデータを扱うリアルタイムな)
- DIRTyアプリケーションには、同時に利用する数多くのユーザに対して、ほとんど即時に応答できる性能が必要だから
基礎的なNodeプログラムのサンプル
var fs = require(‘fs’); fs.readFile(‘.resource.json’, function (err, data) { console.log(‘data’); })
まとめ
- JavaScriptの上に構築されている
- イベント駆動で非同期
- データ量の多いリアルタイムアプリケーションのために構築された