タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

theschwartzに関するcharsbarのブックマーク (7)

  • 2008/09/04 - memo - unknownplace.org

    TheSchwartzをインストールしようとしたらテストが通らなかった。 テストが通らなくても、原因を見ると失敗していても影響ないような失敗をしていることが多いので気軽にソースをのぞいて見たところどうもそんな気楽な感じでもなくて普通にエラーっててどうしたもんかと思った。 具体的には $ prove -bv t/unique.t t/unique.... 1..12 ok 1 - made first feed major job ok 2 - The object isa TheSchwartz::JobHandle ok 3 - made another feed major job ok 4 - no handle ok 5 - made scratch major job not ok 6 - The object isa TheSchwartz::JobHandle # Faile

    charsbar
    charsbar 2008/09/05
    古めのmysql 5.1とschwartzにエラーコードに由来する相性問題がある件
  • TheSchwartz で時間が掛かる job を実行するときは grab_for に注意 - 酒日記 はてな支店

    TheSchwartz の worker で、一つの job が worker->grab_for (default 3600) 秒以上掛かる処理をすると、処理中の job を他の worker が掴んでしまう。 具体的には大量のメール送信をしていたんだけど、Data::Valve でスロットリングしてゆっくり送っていたら 1時間以上掛かって、別の worker も同じ job を実行してしまった。結果、同じメールが 2通ずつ出た orz grab_for は job を処理しはじめた worker が、失敗を報告もできないでクラッシュした場合に、別の worker が処理できるようにするもの。しかし送信してしまったメールは取り消せないからな…… package MyWorker; use base qw/ TheSchwartz::Worker /; sub grab_for { 60

    TheSchwartz で時間が掛かる job を実行するときは grab_for に注意 - 酒日記 はてな支店
  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

  • TheSchwartz を PostgreSQL / SQLite で使うと worker プロセスが太る(のは解決済) - 酒日記 はてな支店

    MySQLだと問題ないみたい。あと、job の引数に何を渡すかで変わってくるらしい…… [2010-2-16 追記] 追記時点での DBD::Pg と DBD::SQLite の最新版 (DBD::Pg-2.16.1, DBD::SQLite-1.29) では、以下に記述されているメモリリークは解消されています。記事自体は記録の意味も兼ねているので消さずに残しますが、ご注意ください。 ちなみに SQLite 用のスキーマは TheSchwartz 自身に同梱されていて t/schema-sqlite.sql に、PostgreSQL 用のはリポジトリの trunk にあります。doc/schema-postgres.sql 検証用のスクリプトは最後に載せますが、単に client が job を突っ込んで、worker が job を取り出して $job->completed() するだけ

    TheSchwartz を PostgreSQL / SQLite で使うと worker プロセスが太る(のは解決済) - 酒日記 はてな支店
  • TheSchwartzで仕事をあとにまわす - bits and bytes

    web2.0 時代のジョブキューサーバー Gearman と TheSchwartz の関係について - TokuLog 改めB日記に書かれているとおり、Gearmanは仕事を投げられたらすぐやって返す前提になっていて今やりたくないけどあとでやるみたいなのができません。 たとえば、10分後にならできるんだけど、という仕事が来たとします。 このときGearmanのワーカの中でsleepして10分待つと、後から来たほかの仕事を一切しないで10分待つことになってしまって、後から来た仕事が今すぐできるものだったとしても10分待たれさるのでGearmanだと今来た仕事のためにsleepして待つわけにはいきません。 結果としてGearmanだとやってきた仕事を今すぐやるか、絶対やらないか、の二択になってしまいます。 それだと困るので、もう一方のTheSchwartzだと、今やりたくないけどあとでやる、

  • TheSchwartz の worker を安全に停止する - 酒日記 はてな支店

    TheSchwartz の worker を Ctrl-C とか kill で止めた場合に、job の処理が半端な状態で終わられると困る、という話。以前 Deamon::Generic で TheSchwartz の worker をデーモン化する(2) - 酒日記 はてな支店 で諦めたんだけど、ちょっと必要に迫られたので考えてみたら一応できたっぽい。 package MyWorker; use strict; use warnings; use base qw( TheSchwartz::Worker ); sub sighandler { warn "caught signal @_\n"; no warnings 'redefine'; *TheSchwartz::work_once = sub { exit }; } sub work { my ($class, $job) = @

    TheSchwartz の worker を安全に停止する - 酒日記 はてな支店
  • Catalyst and TheSchwartz: Reliable JobQueue in a great framework - Vox

    Catalyst and TheSchwartz: Reliable JobQueue in a great framework Overview At my job, we've just about finished work on the next segment of our Catalyst-based application.  It required the implementation of a JobQueue system, and after careful consideration we narrowed down our choices.Why TheSchwartz? Aside from the fun statements that are made while working it into every day business conversation

  • 1