タグ

イベントループに関するm_shige1979のブックマーク (2)

  • node.js とは何か - I am bad at math

    期せずして久々の更新になってしまった。ブログを書く気がなくなったとかそういうのではなくてただ単に忙しかっただけ。その間、まぁ仕事が予期せぬ方向から炎上してみたり、事故をもらって愛車が全損したり(フロントガラスが全面熱線入りなんていう変なオプションなどを諸々付けていたからお気に入りだったのに)と決して良いことばかりで忙しかったわけではないけどね! で、今回は node.js のお話。異様な盛り上がりを見せているものの、じゃぁそれっていったい何かというと「JavaScriptを用いたNon-blocking I/O環境」という非常にシンプルなものだ。 その根底には「うまくスケールできること」と「動作が速いこと」という理念が見受けられる。 まず「うまくスケールできること(多量のアクセスを捌けること)」を解決するにあたり、まずはスレッドモデルか、イベントループかという問題があった。そこで auth

    node.js とは何か - I am bad at math
  • node.jsの仕組み(ノンブロッキングI/Oとかスレッドとか) - 元リア充エンジニアのメモ

    サーバーサイドjavascriptで一世を風靡しているnode.jsですが、PHPで書くサーバーサイドのプログラムと何が違って何がいいのか。 「なんかいい」とかじゃ使えないしってことで調べてたら知らないことがたくさん出てきたんでメモ。 簡単に言うと、node.jsが今までと違うのは 「イベントループモデルで、ノンブロッキングI/Oを使用している」 点らしい。 はてな。 イベントループモデルとスレッドモデル スレッドモデルとイベントループモデルは、ざっくりいうと「スレッドでの処理の仕方」を大まかに2つに分けたもの。 そもそもスレッドというものは「処理の流れ」を意味している。 後の説明もあるので若干分かりにくいたとえだけど、「店頭でゲームソフトを購入する」処理に例える。 分かりやすく処理の流れを店員の視点で 1.レジに空箱が持ちこまれる 2.棚まで体を取りに行き、体を棚から探す 3.体を

    node.jsの仕組み(ノンブロッキングI/Oとかスレッドとか) - 元リア充エンジニアのメモ
  • 1