とりあえずスクリプト晒しとくわ。
いちおうの完成型ということで、ひとつ…
- run_paintchat.sh
#!/bin/sh
cd /(略)/paintchat
java -Duser.dir=/(略)/paintchat -cp ./:PaintChat.jar paintchat_server.Server /(略)/paintchat/cnf/paintchat.cf >> /(略)/paintchat.log &
- stop_paintchat.sh
#!/bin/sh
kill `ps ax -f | grep '(略)' | awk '{if($3==1)print $2}'`
wait $2 ; rm -rf /(略)/paintchat/save_server/*.tmp
delはwaitで解決。 sleepコマンドがあると教えてくれた中の人様、しんのゆうしゃに感謝。cronは
# cat /etc/cron.d/paintchat
## paintchat
00 06 * * * root /(略)/paintchat/stop_paintchat.sh
30 06 * * * root /(略)/paintchat/run_paintchat.sh
これだけ。 別に30分も止めておく必要は無いんだけど、定期リブートとかする事になった時のための保険ってことで。
おまけ。現在の状況でのメモリ状況
# free -m total used free shared buffers cached Mem: 61 59 1 0 2 30 -/+buffers/cache: 26 35 Swap: 251 33 217
というわけで、メモリがさっぱり足りません('A`)
apacheがメモリ食い過ぎてるのが原因なんで、うpろだへのアクセスを緩和させるか、ろだを別鯖に移動させるのが適切かとおもわれます。 玄箱ではアクセスの多い鯖の運用は無理だな…。
これさえクリアできれば、PaintChatを複数動かすのも問題ないかもしれんけど、今の状態で動かしたんじゃあ自殺行為としか思えないわけで。