タグ

ブックマーク / waka.hatenablog.com (1)

  • Node.jsのcluster.disconnectの挙動とGracefulリスタート - yo_waka's blog

    clusterモジュールを使ってサーバアプリ管理ツールを作ってるのだけど、cluster.disconnectのコールバックが実行されてもワーカープロセスが死なないことがある。 Chromeでサーバにアクセスすると、cluster.disconnectしてもワーカーの'exit'イベントが発火されずにプロセスが残ってしまう。 しばらく放置しておくとワーカープロセスが死ぬんだけど、これはどういうことだと思ったらこういうことらしい。keep-aliveかー タブを閉じてもダメ。どうもChromeのkeep-aliveのタイムアウト時間は5分みたいですね。 先の記事でいうところの、「すべてのコネクションが終了し、サーバが 'close' イベントを発したときに最終的に閉じます。」という実装をちゃんとしていないサーバの場合、5分経つまで接続が閉じない。 サーバ側の実装がよくないのが根的な原因なん

    Node.jsのcluster.disconnectの挙動とGracefulリスタート - yo_waka's blog
  • 1