BackgrounDRbのちょっとイマイチと思うところ

2008-04-08
2011-01-08
かなり古い記事です。現在も有効な内容であるかどうか分かりませんのでご注意ください。

最近しばらく使っててイマイチと思ったところ。

開発時にサーバー再起動がめんどい

ワーカーのコード書き換えるたびにサーバー再起動しないといけないのでめんどい。

まあ開発の大部分はサーバーを動かさずにメソッドごとのユニットテストで仕上げていくので、めんどいのは最後の仕上げとか動作確認しつつの調整の時くらいなんだけど。
そんくらい我慢しやがれですか。そうですか。

しかしせめてrestartが欲しい。
自分で書きやがれですか。そうですか。

なんでBackgrounDRbのサーバーすぐ死んでしまうん?

MiddleMan.workerの引数を間違えてハッシュで与えたりとかして取得したワーカーで何かしようとするとあっさり死ぬ。
ワーカーが死ぬんじゃなくてBackgrounDRbサーバーが死ぬ。

例えば以下のコードで瞬殺。

worker = MiddleMan.worker(:worker => :hoge_worker)
worker.ask_status

これでエラー吐いて死亡。
ちなみにワーカー取得の正しいコードは

worker = MiddleMan.worker(:hoge_worker)

単に間違えるなって話ですか。
でも死んでしまうのはちょっとショックというか不安感をあおるなぁ。

あとサーバー再起動したときに再起動前に取得したワーカーを使っても同じように死亡。
サーバー再起動のタイミングとか環境によっては気を遣わないとだめっぽいですな。

もうちょっと不測の事態に強くなって欲しい。
さすがにワーカーのコードで何かエラーが起きただけで死んだりすることはないけど。

しかしながら

とまあこういった不満はちょっとあるけど、大旨は問題なく使ってます。
さらにバージョンが上がって練り上がってくるのが楽しみ。

Profile

フルスタック気味のフリーランスプログラマー。

どちらかと言うと得意はインフラ構築とサーバーサイドプログラミングですが、フロントエンドもぼちぼちやっています。

最近の興味範囲はWordPress、AWS、サーバーレス、UIデザイン。

愛車はセロー。カメラはペンタックス。旅好きです。横浜在住。