タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

libeventに関するkicyonのブックマーク (4)

  • memcached

    記事は当初HTMLに整形せずに掲載してしまい、ご覧になった方にはご不便をおかけしました。お詫び申し上げます。 consistent hashingの記事でmemcachedが名前だけ出てきたので少し調べてみた。 memcachedは単純なキーと値のペアによる分散キャッシュサーバ。高速で、非常に台数にスケールすることが利点という。ほとんど設定いらずでインストールしてそのまま起動できる。 動的に生成するウェブページのキャッシュ等に用いられる。キャッシュの他HTTPのセッション情報のような消えてしまっても致命的でない情報の保持に使われることもある。検索してみると国内でもmixiやはてな等で広く使われているようだ。各種言語のクライアントライブラリも多い。 目次 libevent クライアント1万台問題 memcached Ruby-MemCache libketama libevent mem

    memcached
  • PHP: 例 - Manual

    <?php function print_line($fd, $events, $arg) { static $max_requests = 0; $max_requests++; if ($max_requests == 10) { // 10 回書き込んだらループを抜けます event_base_loopexit($arg[1]); } // 行を表示します echo  fgets($fd); } // ベースとイベントを作成します $base = event_base_new(); $event = event_new(); $fd = STDIN; // イベントフラグを設定します event_set($event, $fd, EV_READ | EV_PERSIST, "print_line", array($event, $base)); // イベントベースを設定します ev

  • libeventでechoサーバをつくってみた - Rhythm & Biology

    memcachedで使われていることで有名なlibeventを試してみました。 以前libevを試したことがあるのですが、libeventの方が少し書きやすいという印象です。パフォーマンスに関してはlibevのほうが上という噂ですが。 libeventやlibevに関して少し説明しておくと、これらは非同期IOを実現するライブラリです。他にもシグナルやタイマー処理といったこともできるらしいです(まだ詳しく調べていません)。 非同期IOのAPIはOSごとに独自のもの(epoll, kqueueなど)があるのですが、libeventなどを利用するとその違いを隠蔽してくれるため、移植性が高まります。freebsdで開発してlinuxで動かすということだって出来ますね。 インストールに関しては、macの場合にはmacportsで簡単に入れられますし、linuxであればyumやapt-getで簡単に導

    libeventでechoサーバをつくってみた - Rhythm & Biology
  • liveventの意義

    最近注目度ナンバーワンのmemcachedであるが、そのソースコードはシンプルでありビルドも非常に簡単なのだが、リンクするべきライブラリがただ一つだけ存在する。それがlibeventである。 http://monkey.org/~provos/libevent/ libeventとはその名の通りイベント通知ライブラリである。と言っただけではなんのこっちゃ?!と思われることだろう。別の言い方をすると非同期I/Oライブラリてな感じだろうか。 ※オトコたるもの滅多なことでそもそも論をしてはいけないが、非同期I/Oについて語らねば先に進まないので致し方なしとする。 そもそもディスクへの読み書きなどのI/O処理は他の電子部品とは違い、もの凄く遅い。電子部品はその名の通り電子の速さで処理が進むが、ディスク装置などには駆動部があったりするのでI/O処理はCPUなどの電子部品と比べると極めて遅いものになる

    liveventの意義
  • 1