Gearman便利だよGearman
だいぶ色々今更感あってアレなのですが、tokuhiromが書いてkazeburoさんやnihenさんが手を入れたりしていたgearman-starter.pl
を整えて、CPANに上げるなどしていた。なんか以下の様な具合で色々forkされていつつもfork先がfork-safeじゃなかったりとかしたので、その辺の対応を一本にまとめて、モジュール形式にしてテスト書いて上げるなどした。
- http://blog.64p.org/entry/20100201/1264989237
- http://blog.64p.org/entry/20100705/1278324297
- http://blog.nomadscafe.jp/2010/07/gearman-worker-process.html
使い方は簡単で、
% cpanm Gearman::Starter
をすれば、gearman-starter.pl
がインストールされる。kazeburoさんの監視ポート開けるやつとかも入ってるので、nc
とかで簡単に監視ができる。
Gearmanなんだかんだで便利です。Redisにジョブキュー持たせるとかも面白いけどRedisは別のことやらせたいし(ジョブキュー用のRedisを別に立てても良いんだけど)、gearman-serverなんだかんだで安定していて、最近だと全然落ちたりしないので任せておけばいい。
最近のGearmanはかなりキメラのように魔改造されていて、ジョブをオンメモリじゃなくて各種ストレージに永続化できるようにもなってるんだけど、別にオンメモリで別に困らない。yumとかでgearman入れようとするとそういうプラグインみたいなやつも軒並み入れようとしてTokyo tyrantとかも入れようとしたりするのでビビるので、普通に自前でビルドするのが良さそうという感じになっております。
先日折角 @bradfitz がGoCon関係で日本に来ていたので、gearmanをgoで書き直す話とかをしたりした。Goとジョブキューは相性良いんじゃないかと思います。とは言え枯れたミドルウェアに特に手を入れる必要もないといえば無い。