2006-09-02(Sat) [長年日記]
_ [Ruby]mongrel win32 サービスを試す
mongrelがwin32サービスに対応しているらしい、というところで止まっていたのでちょっと試してみた。
OS
- WindowsXP SP2 HOME
ruby
C:\home\kog\development\test_mongrel>ruby -v ruby 1.8.4 (2005-12-24) [i386-mswin32]
gem list
C:\home\kog\development\test_mongrel>gem list
*** LOCAL GEMS ***
gem_plugin (0.2.1)
A plugin system based only on rubygems that uses dependencies only
mongrel (0.3.13.3)
A small fast HTTP library and server that runs Rails, Camping, and
Nitro apps.
rake (0.7.1)
Ruby based make-like utility.
sources (0.0.1)
This package provides download sources for remote gem installation
win32-service (0.5.0)
win32-service for doing services in Ruby
C:\home\kog\development\test_mongrel>
準備
C:\home\kog\development\test_mongrel>copy c:\opt\ruby\lib\ruby\gems\1.8\gems\mongrel-0.3.13.3-mswin32\examples\mongrel_simple_*.rb .
動かしてみます
mongrel_simple_ctrl.rb ってのがwin32サービスへのインストーラ・アンインストーラ・コントローラを兼ねているみたい。win32サービスとして動くのは mongrel_simple_service.rb の模様。
じゃあ動かしてみますかね。オプションなしならヘルプ出るでしょ。
C:\home\kog\development\test_mongrel>ruby -rubygems mongrel_simple_ctrl.rb C:\home\kog\development\test_mongrel>
...でない。明示しろってことか。
C:\home\kog\development\test_mongrel>ruby -rubygems mongrel_simple_ctrl.rb -h
Usage: mongrel_simple_ctrl [options]
-d, --delete Delete the service
-u, --uninstall Delete the service
-s, --start Start the service
-x, --stop Stop the service
-i, --install Install the service
-h, --help Show this help message.
じゃインスコ。
C:\home\kog\development\test_mongrel>ruby -rubygems mongrel_simple_ctrl.rb -s One moment, start pending Mongrel HTTP Server service started
早速とめてみる。
C:\home\kog\development\test_mongrel>ruby -rubygems mongrel_simple_ctrl.rb -x
mongrel_simple_ctrl.rb:62:in `stop': パイプは終了しました。 (Win32::ServiceError
)
from mongrel_simple_ctrl.rb:62
エラーになるねえ。もう一回はどうだ?
C:\home\kog\development\test_mongrel>ruby -rubygems mongrel_simple_ctrl.rb -x
mongrel_simple_ctrl.rb:62:in `stop': そのサービスを開始できませんでした。 (Win32
::ServiceError)
from mongrel_simple_ctrl.rb:62
メッセージが変わった。管理ツールで確認すると止まっている模様。
管理ツールで起動・停止させてみると、起動はいいけど停止で時間がかかるときがあるみたい。時間がかかるとき、停止ダイアログの「キャンセル」ボタン押してもサービス自体は止まる模様。
いろいろ試すとこういうメッセージの時もあった。
C:\home\kog\development\test_mongrel>ruby -rubygems mongrel_simple_ctrl.rb -x
mongrel_simple_ctrl.rb:62:in `stop': 制御要求を処理しているときに、サービスで例
外が発生しました。 (Win32::ServiceError)
from mongrel_simple_ctrl.rb:62
じゃあ削除。
C:\home\kog\development\test_mongrel>ruby -rubygems mongrel_simple_ctrl.rb -d Mongrel HTTP Server service deleted
たしかに動くことは動くけど、もうちょっとテストしないと怖いな。
あと、すぐに停止できないのも運用上気になる。サーバ落とすつもりで落ちてないってことになりかねないし。
_ [Ruby] ap4r と reliable-msgの違い?
babieさんとこでap4rなるプロジェクトを知ったので、早速インスコして眺めてみた。非同期・異機種分散処理とかかなり好きなので。
...永続化層にreliable-msgを使っているとのことだが、正直reliable-msgとの違いがよくわからない。reliable-msgにもrails supportは含まれてるみたいだし。realiable-msgの上にレイヤーを作ってSOAP, XMLRPCサポートを追加したものなのかな?
日本語解説も読んだんだけど...
Rindaで処理エージェントを複数待機させておいて、処理メッセージをいくつかtupplespaceに放り込むと、それこそえさに群がる池の鯉のように処理エージェントが処理しまくるので見てて楽しいのだけど、Rindaでつなぐとお互いのRubyとdrubyのバージョンをあわせないといけないから、こういうライブラリのほうがいいってことなのかな?
http://d.hatena.ne.jp/ita-wasa/20060911/1157935713<br>いたわさににほんしゅ<br> [Ruby][AP4R] 動かしていただき、ありがとうございます m(_ _)m<br> なんかリアクションが遅いですが、さっそく動かしていただいた方が! これ日記なん? - mongrel win32 サービスを試す , ap4r と reliable-msgの違い? ..永続化層にreliable-msgを使っているとのことだが、正直reliable-msgとの違いがよくわからない。reliable-msgにもrails
Cool topic! ;)
c4nrAT hi great site thx http://peace.com
Cool site! Helpful topic! :)