Erlangのフォールトトレランス(私が理解しているように)には、スーパーバイザープロセスを使用してワーカープロセスを監視することが含まれているため、ワーカーが死亡した場合、スーパーバイザーは新しいプロセスを起動できます。
特に分散シナリオでは、Erlangはこの監視をどのように行いますか?プロセスが実際に停止したことをどのように確認できますか?ハートビートはありますか?ランタイム環境に何かが組み込まれていますか?ネットワークケーブルが接続されていない場合はどうなりますか?他のプロセスと通信できない場合、他のプロセスが停止したと見なされますか?等
私は、JVM(JavaやScalaなど)でErlangが主張するのと同じフォールトトレランスなどを実現する方法を考えていました。しかし、Erlangと同様に、JVMに組み込まれたサポートが必要かどうかはわかりませんでした。比較のポイントとして、Erlangがどのようにそれを行うかについての定義にまだ出くわしていませんでした。