|
あるお客様の本番機(Solaris9)で、プロセスとしては存在しないが、 TCP上でbindできる奇妙なプロセスが存在し続けるという現象が発生しました。 ps コマンドで叩いて確認したわけではないのですが、おそらく defunct とも表現されていない、 すなわち zombieでもない存在のようです。 技術的には、OSが、Socketの Garbage Collection に失敗したと思われ、 結果として、サーバ側Socketにbindはできるが、プロセスとして存在しないので、 Socketエラーを異常なタイミング返送してくる存在で、Stealth Process とでも言いましょうか。この Stealth processが1ヶ月に一回くらい発生します。 実際には、当該プロセスはバッチなので、処理終了後 kill しているのですが、 プロセスはkill されたが、PortがFIN_WAIT2などになったままで GCされていないプロセスだと思います。 いずれにせよ、結果としてNextra製品で対応しました。 こんな異常ケースに対応する Middlewareは Nextraだけだと思いますが。 これも全て、「落ちても安心な」仕組みを提供するとの公約を果たすためです。 世の中に絶対落ちないシステムはありませんが、落ちても問題のない 仕組みを提供することは可能です。 こういった細かい改善は、11年間、数え切れないほどやってきました。 どんな問題も解決してきました。 ですので、万が一、新規お客様導入で、何か問題があった場合は、 必ず解決できる自信はありますし、ほぼ100%、OS、TCP/IPの問題に起因しています。 Nextraの熟成度はお客様に聞いていただければわかると思います。 大前研一張りに言えば、世の中に解決できない問題など存在しない
ということです。これは、システムにおいても同じで、Application Layer より 下層に位置する問題は、ApplicationとTCPの間に存在するMiddlewareで 解決するのが一番となります。 |

- >
- コンピュータとインターネット
- >
- コンピュータ
- >
- ソフトウェア


