タグ

jobqueueに関するziguzaguのブックマーク (7)

  • 開発メモ: memcachedプロトコルでメッセージキューを実現する

    前回の記事にて、Kyoto Tycoonでメッセージキューを実現する方法について述べた。今回は、それを実運用にて使いやすくするための諸機能について説明する。みんな大好きなmemcachedプロトコルでメッセージキューを実現してみよう。 ジョブキューとメッセージキュー どうでもいい話ではあるが、ジョブキューおよびメッセージキューという用語はよく混同して使ってしまう。俺定義では、ジョブキューは「ジョブ管理機能」という目的をたまたまキュー構造に基づいて実装しているものであり、メッセージキューはキュー構造に基づく非同期メッセージング機構であって用途は特に限定しない。つまりメッセージキューをジョブキューを実装するのに使うこともあるが、それ以外の用途にもメッセージキューは使われる。またジョブキューをメッセージキューに基づかないで同期的に実装することもできる。 きっと偉い学者さんがどこかでちゃんとした定

  • メール受信をTriggerにしてコマンドを実行する代わりにMaildirを監視して負荷を削減する - blog.nomadscafe.jp

    サーバが重かった原因は別だったんだけど、某サービスでメールを受信してプログラムを起動する際のコストが大きいんじゃないかという話をしたので、以下のようなことを考えてみた。 qmailを使っている場合、届いたメールをプログラムで処理したい場合は .qmail に | /path/to/program.pl と書きます。標準入力にメールの内容が渡され、環境変数等を通して表書き発送者アドレス等が取得できます。postfix でも master.cf にtransportを追加し、mapファイルを変更すると大体同じことができます。 参考: RailsとPostfixで受信メールを処理する方法 ただし、この方法だとメールの受信の度にプログラムを起動(exec)するコストが高くなりがちです。特にデータベースに接続したり、アプリケーションのライブラリを読み込んで行くと起動の負荷が上がって行ってしまいます。

  • 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/

  • 非同期ジョブキューのアーキテクチャ設計、どうしてますか? - @kyanny's blog

    Gearman のメーリングリストに興味深いポストがあった。僕も色々な意見を聞いてみたいと思ったので、多くの人の目に触れることを期待して紹介する。 Google グループ ウェブサイトに画像をアップロードすると、異なるバックエンドサーバが画像を処理する。まずリサイズし、それから顔認識をする。 一つ目の要求として、処理結果が期待通りかどうかユーザーに確認させたい。顔認識が不要であればリサイズした画像を、顔認識が必要ならばその処理が施された画像を、確認画面に表示したい。つまり、アップロード操作の完了には一つまたは二つのステップを踏む必要がある。 この要求を満たすために同期処理も検討したが、バックエンドサーバがダウンするとウェブアプリケーションサーバも巻き添えをうため採用したくない。 ウェブアプリケーションのプロセスは Gearman にリサイズ処理を非同期ジョブとして送信し、リサイズ処理のワ

    非同期ジョブキューのアーキテクチャ設計、どうしてますか? - @kyanny's blog
  • lumberjaph.net - このウェブサイトは販売用です! - lumberjaph リソースおよび情報

    このウェブサイトは販売用です! lumberjaph.net は、あなたがお探しの情報の全ての最新かつ最適なソースです。一般トピックからここから検索できる内容は、lumberjaph.netが全てとなります。あなたがお探しの内容が見つかることを願っています!

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • Qudoの発表について - Hatena::Diary::Neko::kak 500 Internal Server Error

    Qudoの発表資料は http://nekokak.org/presen/yapcasia2009-qudo/ こちらになります。 こちらも ご意見などどしどしおまちしております。 nekokak _at_ gmail _dot_ com ちなみにmiyagawaさんがLTまでの間にCPANAuthorの人はモジュールをCPANにアップすると LTのデモでながれるかもよとおっしゃってたので、 Qudoをデベロッパーリリースしました。 で、Qudoの発表中に頂いたQAをここで書いてみます。 あと、補足したり。 - Q:Jobを処理する順番はどうなってるのか?プライオリティーをつけることなどできるか? A:現在のQudoのJob処理順は基的にenqeueされた順番です。Job毎のプライオリティーはいまは設定できないので設定したいですね。 - Q:jobをenqueueしてから間をおいて処理さ

    Qudoの発表について - Hatena::Diary::Neko::kak 500 Internal Server Error
  • 1