node.jsをサーバーとして立ち上げるときにやること1
1.daemon化
foreverを使うのがよいが0.8~しかサポートしなくなった
0.6系を使うならstart-stop-daemonを使う
https://github.com/jiem/start-stop-daemon
これで以下のコマンドで制御できる
node --expose_gc ./daemon.js start
node --expose_gc ./daemon.js stop
2.ユーザー切り替え
setgidでroot「0」だったらlisten後にsetuidでほかのユーザーに切り替える
1024番以下で起動するのにrootで起動しなくてはならないが
攻撃者にプロセス乗っ取られた場合に被害を少なくするため
3.clusterを使う
CPUの数分nodeを立ち上げる
CPUの数立ち上げないとCPU効率がもったいない
クアッドコアなら5000接続*4で同時20000接続とか。
4.高負荷サーバーの場合
gc()を定期的に呼ぶ
0.6、0.8系は呼んだほうがいいんじゃないかな