トップページ > Ruby on Rails > BackgroundRB > 使い方1
ワーカを作成するには、
$ script/generate worker ワーカ名
で行う。たとえば、foo_workerを作成する場合は、
$ script/generate worker foo
で作成。lib/workersの下にfoo_worker.rbが作成される
起動は、
$ script/backgroundrb start
終了は、
$ script/backgroundrb stop
デフォルトで作成されたワーカは、BackgroundRBが起動すると 自動的に生成される。(ここでいう生成とは、プロセスが生成 されるという意味) どのワーカが生成されているかの確認は、
MiddleMan.all_worker_info
で確認できる。次のように表示される
=> {"0.0.0.0:11006"=>[{:worker=>:foo_worker, :worker_key=>"", :status=>:running}, {:worker=>:log_worker, :worker_key=>"", :status=>:running}]}
:worker_keyは、同じワーカを複数生成する場合につけるキー。自動で生成されて いると何も入っていない。 BackgroundRBが起動時にワーカが自動的に生成されないようにするためには、 そのワーカのソースコード(たとえばfoo_worker.rb)に
set_no_auto_load true
をつける。
この場合は、必要に応じて手動でワーカを生成する。生成の仕方は、
MiddleMan.new_worker(:worker => :ワーカ名_worker , :worker_key=>ワーカキー )
で行う。たとえば、
MiddleMan.new_worker(:worker => :foo_worker ) MiddleMan.new_worker(:worker => :foo_worker , :worker_key=>"work1")
ワーカの削除は
MiddleMan.worker(:ワーカ名_worker,キー).delete
で行う。たとえば、
MiddleMan.worker(:foo_worker).delete MiddleMan.worker(:foo_worker,"work1").delete