0

私は 2 つの genserver 実装を持っています。どちらも http リクエストを作成してルックアップを実行し、両方とも同じ情報を返します。そのために異なるプロバイダーを使用します。

最初のプロセスを実行し、失敗または検証の失敗時に、このプロセスが別のプロバイダーを使用する 2 番目の genserver にフェールオーバーする方法を見つけたいと思います。

基本的に私が達成しようとしているのは、ある種のプロセス フェイルオーバーです。プロセス A を試して、A が失敗した場合はプロセス B を試してください。

Elixirでこれを行うための最良の方法は何ですか?

4

1 に答える 1

1

HTTP リクエストを受信する別のプロキシ プロセス (マネージャ) を作成し、このリクエストを process_A と process_B のどちらで処理するかを決定し、フェイルオーバーの場合は他のプロセスにフェイルオーバーすることができます。

つまり、フェールオーバーを処理するのはワーカー プロセスの仕事ではなく、マネージャー プロセスが引き継ぐべきだと思います。

于 2016-11-11T08:15:27.230 に答える