$ wget http://robey.github.com/kestrel/download/kestrel-2.1.5.zip $ unzip kestrel-2.1.5.zip mkdir -p /var/log/kestrel sudo chown -R (ユーザ名)> /var/log/kestrel mkdir -p /var/spool/kestrel sudo chown -R (ユーザ名) /var/spool/kestrel
Node.jsでWebアプリを書いてるんだけど別に大量のリクエストをさばくわけでもないしWebSocketも使ってないし、じゃあなんでそんなことしてんの、という話。 まず結論だけ書くと、 並列度が低くてよいが長時間かかることが確定的な処理を非同期的に走らせる必要がある場合、普通はそのような用途でもJobQueue/Workerを使って構成するがそういうのは管理も面倒だしインストールも面倒くさくなるのであんまりやりたくない。Node.jsなら普通のWebアプリケーションフレームワークだけでラクに書けていいんじゃね? というひとつの提案です。 同期実行のケース 普通Webアプリケーションフレームワークというのは、一連の処理はクライアントにレスポンスを返すことで完了する。そしてひとつのプロセス/スレッドはリクエストをディスパッチされてからレスポンスを返すまでがそのリクエストに占有される。 ここで
前回の記事にて、Kyoto Tycoonでメッセージキューを実現する方法について述べた。今回は、それを実運用にて使いやすくするための諸機能について説明する。みんな大好きなmemcachedプロトコルでメッセージキューを実現してみよう。 ジョブキューとメッセージキュー どうでもいい話ではあるが、ジョブキューおよびメッセージキューという用語はよく混同して使ってしまう。俺定義では、ジョブキューは「ジョブ管理機能」という目的をたまたまキュー構造に基づいて実装しているものであり、メッセージキューはキュー構造に基づく非同期メッセージング機構であって用途は特に限定しない。つまりメッセージキューをジョブキューを実装するのに使うこともあるが、それ以外の用途にもメッセージキューは使われる。またジョブキューをメッセージキューに基づかないで同期的に実装することもできる。 きっと偉い学者さんがどこかでちゃんとした定
前回までに、Redisの概要と、コマンドラインクライアントによる基本的なコマンド操作を見てきました。今回からは、Redisのデータ型を使ったアプリケーション開発について、簡単なサンプルコードと、ニコニコ生放送での事例を交えて紹介していきます。 クライアントライブラリを用いた開発 WebアプリケーションからRedisにアクセスするには、言語ごとのクライアントライブラリを導入することになります。公式サイトにライブラリがリストアップされていますので、各々の環境に合ったものを探してください。 ニコニコ生放送では、PHPによる開発の場合にはphpredisを、Javaで実装している検索サーバーなどではJedisやJRedisを使っています。 今回から掲載するサンプルコードでもこれらのライブラリを使っていきますので、他のライブラリを導入される方はそれぞれ対応するAPIに置き換えてご覧ください。 LIS
はじめに この記事では、MySQL を使って簡単なメッセージキューを手軽に実装する方法を解説します。 メッセージキューとは、メッセージを一時的に溜めておき、順次処理するための仕組みです。迅速なレスポンスが必要な Web アプリケーションにおいて、時間のかかる処理を非同期に行うために、バックグラウンドで順次処理していくような場合に利用できます。 簡単なメッセージキューと言っても、大規模な運用にも耐えられる程度の速度と堅牢性を持ちます。 また、ここで解説している方法で作られたメッセージキューは、弊社ウェブサービスであるニコニコ動画に最近追加されたtwitter連携機能でも利用しています。 メッセージキューを作るにあたって 今回実装するメッセージキューは メッセージの追加(push)を高速に行う事ができる メッセージの取得(pop)はある程度高速に行う事ができる 多くのクライアントから同時に p
Resque is a Redis-backed Ruby library for creating background jobs. It allows Ruby objects to be enqueued in Redis and processed asynchronously in the background by workers. Workers pull jobs from the Redis queue and process them. This keeps background jobs from blocking the web process. Resque uses Redis for reliable queuing and storage of job queues rather than a database. It is simple to use an
via. PHP Stompライブラリを呼び出す消費者スクリプトを書く | 秋元@サイボウズラボ・プログラマー・ブログ ずいぶん前(2007年10月)にサイボウズラボの秋元さんがPHP勉強会で発表したネタですが、stomp拡張モジュールがリリースされたことと、いつか業務でキューを導入するかも知れないということで、ちょっとずつ調べ始めてある程度量が溜まってきたので、ちょっとまとめてみました。 以下、ちょっと長いです。 メッセージ・キューイングとは BPnetの説明が分かりやすいかな。 メッセージ・キューイングは,キューに入れたメッセージをやり取りすることで,システム間を連携する。メッセージ・キューイングはファイル転送と同じ非同期型のメカニズムであるが,ファイル転送よりも即時性が高い。アプリケーションの内部でメッセージを生成してキューに入れるため,利用者がリターン・キーを押したタイミングでサー
前エントリで紹介したスライドに書いてあることをPythonでやってみようと思い、その下準備としてGearman UDFをインストールして動作確認を行うところまでやってみる。環境はCentOS 5.3とMySQL 5.1.34。 Gearman UDFをインストールするlibuuidが必要なのでe2fsprogs-develをインストールする。 $ sudo yum install e2fsprogs-devel CentOSのlibeventは古すぎてlibgearmanをビルドできないので、libeventの最新安定版をインストールしておく。 $ wget http://monkey.org/~provos/libevent-1.4.10-stable.tar.gz $ tar xzf libevent-1.4.10-stable.tar.gz $ cd libevent-1.4.10-
このウェブサイトは販売用です! oddments.org は、あなたがお探しの情報の全ての最新かつ最適なソースです。一般トピックからここから検索できる内容は、oddments.orgが全てとなります。あなたがお探しの内容が見つかることを願っています!
The Gearman PHP Extension allows you to write Gearman clients and workers using PHP. Gearman PHP Extension v0.1 is currently available for download at launchpad Before you can build the php extension, you must install gearmand and the libgearman 'c' library. Luckily, this is simple. % tar -xvzf gearmand-version.tar.gz % cd gearmand % ./configure % make % make install Now that gearmand and libgearm
これからはメッセージキューが大切ということで、JavaのメッセージングAPIであるJMS(Java Messaging Service)を試してみます。 JMS試すにはメッセージングサーバーが必要で、Open MQとかを使います。けど、わざわざOpen MQとかをインストールして起動させるのもめんどいので、Glassfishを使います。GlassfishにはOpen MQが入ってて、そのまま使える状態になっています。NetBeans使いならGlassfish入ってますよね。 今回はv2.1を使いました。v3 preludeにはJMS入ってないみたい。 https://glassfish.dev.java.net/ 本来ならGlassfishで使う場合にはJNDI経由でJMSサーバーを取得するのですが、今回はめんどうなので、直接つなぎます。 ということで、メッセージ送信側。プロバイダーという
Easy Install Not sure? Get more info. pear install Net_Gearman Pyrus Install Try PEAR2's installer, Pyrus. php pyrus.phar install pear/Net_Gearman Gearman provides a generic application framework to farm out work to other machines or processes that are better suited to do the work. It allows you to do work in parallel, to load balance processing, and to call functions between languages. It can be
こんにちは。mixi開発部のyouheiです。 今回は先日8月4日にリリースした「エコー」について書きたいと思います。 エコーとは まずはエコーとはどういう機能かのご紹介ですが、プロモーションページがございますのでそちらをご覧いただければ幸いでございます。 http://mixi.jp/guide_echo.pl いくつか抜粋しますと、 あなたの"今"を一言にしてみませんか?誰かに伝えたいこと、ひとりごと等、何でもOK! 気軽な新コミュニケーション機能です。 たとえば、「今日はいい天気だな〜」という、ひとりごとから、「お腹すいたー!誰かランチにいこうよ!」というメッセージ的な使い方まで、「エコー」の楽しみ方はあなた次第! マイミクシィ同士で「エコー」を使うとホームにお互いの書きこみが表示されます。 気になった書きこみには、返信することもできちゃいます。あなたがふと書きこんだ一言に、思わぬ返
PHPからperlのGearmanみたいなのを使いたくてtwitterでぼやいてみたらTwitter / ippei ogiwara: @ku ぐぐったらでてきた http://tinyur…というのを教えてもらったのでGearmanでreblogサーバを作ってPHPから呼んでみました。 Twitter / ippei ogiwara: @ku おもしろそうだから、使ってみたらおしえてください というわけで簡単にレポート。 Gearmanのインストール まずGearmanが入っていなかったのでlog4ZIGOROu : Gearmanを使ってみたを参考にインストール。 サーバはFreeBSDです。Sys::Syscallだけforceで入れました。 sudo cpan -i Sys::Syscall sudo cpan -i Danga::Socket sudo cpan -i Gear
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く