タグ

2012年10月17日のブックマーク (4件)

  • node.js と thread hog の話(3)

    [前回までの話へのリンク] ・node.js と thread hog の話(1) ・node.js と thread hog の話(2) では、なぜ今頃になって HTTP Server の c10k 問題(もしくは、thread hog 問題)が顕在化したのだろう。 当時(90年代の終わり頃)と比べて、もっとも大きく変わったのはCPUの性能である。クロック数は、数百MHzから数GHzへと一桁増えたし、マルチコア化もしている。CPU 性能だけ見れば、当時の数十倍の能力が出てしかるべきである。 しかし、実際の人生はそう簡単ではない。サーバーのパフォーマンスはCPU性能だけが決めるわけではないからだ。そこで、ボトルネックの一つとして注目されはじめたのが、thread の数なのである。 前回述べた様に、thread 一つあたり 2MB~8MB のスタック領域を仮想メモリ空間に確保しなければならな

  • node.js と thread hog の話(2)

    [前回までの話へのリンク] ・node.js と thread hog の話(1) 最近になって「c10k 問題」が広く知られるようになったが、実際には、前回書いたように、thread を使いすぎるプログラム(thread hog なプログラム)はスケーラビリティが悪いということは、当時(90年代の終わりごろ)でもすでに「知る人は知る」問題になっていた。 複数のクライアントマシンとの間のソケットを開きっぱなしにしておく、Proxy Server、Chat Server、MMORPG に関わっている人達の間で、ソケット一つに thread を一つ割り当てるスタイルのプログラミングがスケーラビリティに欠けることが知られるようになったのもこのころである。 当時、Microsoft で MSN Messenger を作っている知り合いが「ついに1万人が同時接続しても大丈夫なアーキテクチャに到達した

  • PeepCodeに学ぶ node.js+express のblankプロジェクトを作る - Ken's Blog

    ブログは東京Node学園祭2012 アドベントカレンダーの2日目の記事です。 Smashing Node.jsを私も読んでいるのですが、それより前にPeepCodeのFull Stack Node.jsを見て、node.js+expressでアプリケーションを作る時にいつも同じことをやるので、復習がてらに、blankプロジェクトを作ってみました。このブログではその内容を紹介します。 前提 node.jsは既にインストール済みであることを前提とします。また、私の環境は Mac OS X です。 expressプロジェクトの作成と必要なmoduleのインストール ここはいつも通りです。 express blank create : blank create : blank/package.json create : blank/app.js create : blank/public cre

    PeepCodeに学ぶ node.js+express のblankプロジェクトを作る - Ken's Blog
    KenichiroMurata
    KenichiroMurata 2012/10/17
    Node学園祭アドベントカレンダー2日目です。PeepCode(Full Stack Node.js)に学ぶ node.js+express のblankプロジェクトを作る。
  • PeepCodeに学ぶ node.js+express のblankプロジェクトを作る - Ken's Blog

    ブログは東京Node学園祭2012 アドベントカレンダーの2日目の記事です。 Smashing Node.jsを私も読んでいるのですが、それより前にPeepCodeのFull Stack Node.jsを見て、node.js+expressでアプリケーションを作る時にいつも同じことをやるので、復習がてらに、blankプロジェクトを作ってみました。このブログではその内容を紹介します。 前提 node.jsは既にインストール済みであることを前提とします。また、私の環境は Mac OS X です。 expressプロジェクトの作成と必要なmoduleのインストール ここはいつも通りです。 express blank create : blank create : blank/package.json create : blank/app.js create : blank/public cre

    PeepCodeに学ぶ node.js+express のblankプロジェクトを作る - Ken's Blog
    KenichiroMurata
    KenichiroMurata 2012/10/17
    PeepCodeに学ぶ node.js+express のblankプロジェクトを作る