タグ

queueに関するhibomaのブックマーク (5)

  • 『はじめての RabbitMQ』

    アメーバ事業API 基盤グループでプログラマをしている @na_ga です。 API 基盤グループでは、弊社の様々なサービスから利用される共通 API の開発・運用を行なっております。今回は、私が担当した API でメッセージキューとして利用した RabbitMQ を紹介させていただきたいと思います。 はじめにAPI 基盤グループで提供している API には、リクエストをリアルタイムに処理する必要がないものもあります。例えばメール配信 API や、投稿内容の有人監視 API などが挙げられます。 これらの非同期処理が可能な API では、大量のリクエストを受け取るためにメッセージキューを使用しています。 メッセージキューを使用した構成では、リクエストを受け取るプログラムが、受け取ったリクエストから生成したメッセージをキューに格納します。キューに格納されたメッセージは、メッセージを処理

    『はじめての RabbitMQ』
    hiboma
    hiboma 2012/05/18
  • Home | AMQP

    OUR VISION: To become the standard protocol for interoperability between all messaging middleware

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

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

    hiboma
    hiboma 2011/06/06
    ログ吐いてます!
  • MySQueue

    またか!って感じなんですが、MySQL前提で動作するJobQueueをかるく実装してみました。 https://github.com/nekokak/MySQueue よくあるJobQueueは1つのjobをdequeueして処理しますが、 今回作ったMySQueueは自分の指定したボリュームのjobをまとめて取得して処理する感じです。 workerをタンマリ用意してマシンガンのようにバシバシjobを処理するというよりも 大砲のようにどかーんどかーんとjobを処理する感じです。 なのであんまり並列性はいらないかんじ。(当然ある程度はいるけど) わかりやすい説明ですね。 Schema: CREATE TABLE job ( id BIGINT UNSIGNED PRIMARY KEY AUTO_INCREMENT, arg MEDIUMBLOB, status VARCHAR(10) DE

    hiboma
    hiboma 2011/04/19
    event_scheduler
  • PHP & Queue

    21. Zend_Queue ・ZF1.9にて追加されたコンポーネント、 クライアント・ラッパー的なクラス (これ自体にジョブキューシステムが share/php/Zend/Queue |-- Adapter 備わってる訳ではない) | |-- Abstract.php | |-- Activemq.php ・ZFらしく各種アダプターが用意されている AdapterAbstract.php | |-- | |-- AdapterInterface.php ・Array(主にデバッグ用) | |-- Apachemq.php ・Zend_Db | |-- Array.php ・Memcacheq | |-- Db | | |-- Message.php ・Apache ActiveMQ | | |-- Queue.php - Zend_Queue_Stompを使用 | | |-- mysql

    PHP & Queue
  • 1