以前も TCP だかタイマーで問題があった2007年11月16日 13時40分27秒

以前にも、VOS でファイルシステムを原因とした問題があったのを思い出した。既に、五、六年は前の事だったと思う。

システムが日中稼働し、外部との通信に TCP を使っていた。アプリケーション層で、一分に一度だったと思うが、ハートビートを交換する仕様になっていた。

何故だか、このハートビートが遅れるようになっていたのだ。起こるのも、いつも同じぐらいの時間。ハートビートへの返信がとても遅れていたのか、こちらが送るべきハートビートが仕様通りに送られていなかったのかは覚えていない。しかし、正しく通信できないのだ。

結局のところ、原因はその特定の時刻に始まるバッチジョブのせいだった。このバッチは、大量のファイルを扱うので、この時にディスクの稼働率が急に上がる。この時を境に、ハートビートに問題が出始めるのだった。記憶が正しければ、ディスクアクセスが、TCP の処理を遅れさせていたらしい。対応としては、ディスクから負荷を軽減させるために、このファイルの処理にスリープを入れ、業と遅らせるようにした。

前回