タグ

NodeJSとclusterに関するsugyanのブックマーク (3)

  • Node.js で重い処理をしてしまったときにタイムアウトするの法 - tokuhirom's blog

    (この記事は Node.js アドベントカレンダー不参加記事です) チャットサーバー的な使い方とか意外とみんな興味なくて、普通のウェブアプリケーションなどをかく、という用途にちょっと node.js がつかえたらいいのにな、とおもっている人がおおいようにかんじています。Node.js が人気なのは、v8 をうまくパッケージングしているのが node.js ぐらいで、そして v8 をうまくパッケージングするのが結構めんどくさいから、というところが大きいのです。ぶっちゃけ node.js が〜 とさわいでる人のうち8割は I/O multiplexing だからとかそういう理由で支持しているわけではなかったりするのです(偏見)。 さて、普通の web application のようなものを書こうとしたときに Node.js って基シングルスレッドだし、なんかうっかり重い処理したときにどうした

  • Cluster

    Node.js v0.6 の新機能として cluster モジュール が導入されました.cluster モジュールは,HTTP を含めた TCP 接続を複数の子プロセス (ワーカプロセス) で処理することにより,特にマルチコア環境でのスループット (リクエスト/秒) を向上するための機能です.  しかし,ドキュメントにはその使い方が書かれているだけで,どのように実現されているかは書かれていないので,ここで簡単に紹介しておきます.  Node.js のクラスタ機能は v0.5.10 で突然コマンドラインオプションとして導入されましたが,直後の「東京 Node 学園祭 2011」が行われた頃にはコマンドラインオプションは廃止されて cluster モジュールによって API が提供されるようになり,その翌週の v0.6.0 リリース数時間前にはその API が変更されるというドタバタぶりでした

    Cluster
  • Node.js の Cluster のベンチマークをとってみた - hakobera's blog

    Node.js v0.6 から新規標準モジュールとして導入された Cluster のベンチマークを取ってみました。 測定環境 Server CPU: AMD PhenomII X6 1090T (6コア) MEM: DDR3 16GB (4GB*4) Client MacBook Pro 15 (Early 2011) CPU: Intel Core i7 2.0GHz (4コア) MEM: DDR3 8GB (4GB*2) Network 1GigabitEther (同一セグメント) テスト方法 テストスクリプト cluster-bench.js var cluster = require('cluster'); var http = require('http'); var numCPUs = parseInt(process.argv[2], 10); if (cluster.is

    Node.js の Cluster のベンチマークをとってみた - hakobera's blog
  • 1