タグ

ブックマーク / hirafoo.hatenablog.com (2)

  • 3000req / sec と戦う - だるろぐ

    ざっくり概要 ピークで3000req / sec 毎分コンテンツ更新要求 コンテンツ更新の際は他所からデータをapi経由で受け取る コンテンツ更新にはTheSchwartzを使用 なコンテンツを色々してきたログ。 尚、ここに書く技術は大半が周囲のギークな方々にサポートしてもらったもので、僕自身が何かしたわけではない。残念すぎる。 構成 internet -> www(squid -> apache) -> app(memcached -> app) -> db フロントエンド wwwサーバがapacheとsquidを動かしている。apacheがリクエストを受け、squidのキャッシュが有ればそれを返し、無ければバックエンドのappサーバへproxy。 バックエンド appサーバがmemcachedとアプリを動かしている。 それぞれ冗長化してるけど、リクエスト数の割に台数は少ない。 技術があ

    3000req / sec と戦う - だるろぐ
    nihen
    nihen 2011/09/24
  • Gearmanのサンプルを書いた - だるろぐ

    perlでキューイングするにはGearmanかTheSchwartzを用いるのが主流。 何となくGearmanのサンプルを書いた。 GitHub - hirafoo/queuing_sample 何はともあれモジュールを入れる。 # cpanm Gearman::Server Gearman::Client Gearman::Worker プロセス管理 キューイングを使う理由は「重い処理を裏に投げたい」もしくは「それ専用のプロセスが他に居て、そいつに仕事を投げて結果だけもらいたい」というのが主。 gearmanはキューイングはしてくれるが、プロセス管理まではしてくれないので自力でする必要がある。 キューイングするときは大抵重い処理だったり一気に沢山リクエスト来る場合なので、あらかじめforkしておくべし。 ここに素敵な例があるのでパクるといいと思います。僕はパクらせていただきました。 ht

    Gearmanのサンプルを書いた - だるろぐ
  • 1