タグ

q4mに関するaiueo010101のブックマーク (8)

  • Webアプリケーションにおける Job Queue システムの構成例と Worker を作る際に気をつけること - blog.nomadscafe.jp

    Webアプリケーション内で処理を直列に実行せずにJob Queueに回して非同期に実行することが多くなって来て久しいと思いますが、そのおすすめ構成と気をつけることについてつらつらと。 1) 既存のデータベースをキューとして使う構成例 1つ目はMySQLなどのデータベースをキューとして用いる例。既にアプリケーションで利用しているデータベースにキュー用のテーブルを作成して利用します。データベースを利用したキュー管理の仕組みとしてJonk、Qudo、TheSchwartzなどがPerlでは有名どころです。 依存するミドルウェアが増えないので最もシンプルな構成になると思います。 上記の図ではWorkerはアプリケーション内で実行することで冗長性を確保しますが、キューを格納するデータベースはSPOFになります。しかし、、データベースに障害があった場合キューだけでなくすべてのサービスが停止すると思われ

    aiueo010101
    aiueo010101 2011/06/07
    q4mいいよ!
  • YAPC::Asia2009 09/11のメモ - こんにちはこんにちはmonmonです!

    2日目のメモ。だいぶ抜けてる感じがするけどせっかくなので。 全体通して面白かったなぁ。全然技術的な話題が抑えられてないんだなぁと感じてワクワクしてしまった。全部聞けないのがもったいなさすぎる。 以下ざっくり感想。 twitter見てたらJosé Castro (cog) - How regular expressions work internallyの発表とかが面白そうだった アニメで見れる正規表現みたいなこと書いてあった。わかりやすそう。面白そう。どんなんだったんだろ。 malaさんの発表が超詰め込まれてて面白かった。けども理解追いつかなくて途中わからなかったけども。 perl6の話は前にもどこかで聞いたけどやっぱり気持ち悪いなぁ。perl知る前は$,@,%が全然意味わからなかったけど、やりだしてからは$,@,%のscalaer,array,hashってのにとても感心して使い出したキッ

    YAPC::Asia2009 09/11のメモ - こんにちはこんにちはmonmonです!
  • pixivの画像アップロードシステム

    pixivの画像アップロードシステム - Download as a PDF or view online for free

    pixivの画像アップロードシステム
  • Q4M + Parallel::Prefork + Signal handling + Log::Minimal - tokuhirom's blog

    conditions precedent: use daemontools & multilogPoints: make DB connection after forkdo not trap SIGTERM while calling queue_wait(), so that the process can be shut down while waiting for the response from q4mremove $time and add $PID for log. Because I'm using multilog. It prints the tai64n automatically(and, tai64n is better).package OreOre::Worker::Base; use strict; use warnings; use parent qw/

  • 死んだプロセスのスタックトレースを自動収集するデーモンを書いた (そして、その出力を開発者に送ってあげると喜ばれるよという話) - kazuhoのメモ置き場

    死んだプロセス (あるいは kill したプロセス) の core イメージから自動的にスタックトレースを収集するデーモンを書いたので、これをセットアップしてサーバにインストールしとくといいかもです (kaztools/bt_cores at master · kazuho/kaztools · GitHub)。Linux のみ対応*1。使い方は bt_cores --help とするか、perl Makefile.PL && make install して man bt_cores。 具体的にいうと、Q4M とか Incline とか kazuho product が落ちたり固まったりしたらスタックトレース送ってくれると、私がうれしいです (古いバージョンのスタックトレースだととても悲しいです)。コアファイルは内部データがいろいろ入ってるから外部の人には見せられないけど、スタックトレース

    死んだプロセスのスタックトレースを自動収集するデーモンを書いた (そして、その出力を開発者に送ってあげると喜ばれるよという話) - kazuhoのメモ置き場
    aiueo010101
    aiueo010101 2010/01/22
    やっと協力の仕方がわかった。固まったら全部送る
  • ウノウラボ Unoh Labs: PHPで暗号化・復号化あれこれ

    GT Nitro: Car Game Drag Raceは、典型的なカーゲームではありません。これはスピード、パワー、スキル全開のカーレースゲームです。ブレーキは忘れて、これはドラッグレース、ベイビー!古典的なクラシックから未来的なビーストまで、最もクールで速い車とカーレースできます。スティックシフトをマスターし、ニトロを賢く使って競争を打ち破る必要があります。このカーレースゲームはそのリアルな物理学と素晴らしいグラフィックスであなたの心を爆発させます。これまでプレイしたことのないようなものです。 GT Nitroは、リフレックスとタイミングを試すカーレースゲームです。正しい瞬間にギアをシフトし、ガスを思い切り踏む必要があります。また、大物たちと競いつつ、車のチューニングとアップグレードも行わなければなりません。世界中で最高のドライバーと車とカーレースに挑むことになり、ドラッグレースの王冠

    ウノウラボ Unoh Labs: PHPで暗号化・復号化あれこれ
  • q4m の動きをまとめてみた。 - kameidの備忘録 - Sharpen the Saw!

    キューにデータを挿入する際には特に不思議な動作は無いし、普通の insert 文を使うだけなので、割愛。問題は取得時。これも直感にそぐう動作をしていると思う。 queue_wait() にて、owner モードに入ると同時にキューのデータを一件取得する。 取得した時点で、他のコネクションにて queue_wait() を発行しても、同じデータは取得されなくなる。 queue_end() にて、取得したデータをキューから削除する。 queue_wait() を連続して発行すると、2回目からは暗黙的に queue_end() + queue_wait() の動きをする。 queue_abort() を行うことで、取得したデータはキューに返される。 他のコネクションにて、queue_wait() を行うと、そのデータが取得される。 検証してみよう。事前準備として、情報をキューに insert 文

    q4m の動きをまとめてみた。 - kameidの備忘録 - Sharpen the Saw!
  • ハタさんのブログ : Q4MをPHP(PDO)で

    Q4Mが無事インストールできたので、PHPから触ってみる。詳細なことは今度書く。とりあえず触りだけでも テーブル定義 drop table if exists hoge_queue; create table hoge_queue( id int not null, name varchar(25) not null ) engine=queue; こんなスクリプトをガンガン回して、監視 $conn = new PDO('mysql:host=localhost; dbname=hogetest', 'user', 'password'); $wait = $conn->prepare('SELECT queue_wait("hoge_queue", 10)'); $abort = $conn->prepare('SELECT queue_abort()'); $e = $conn->pr

  • 1