2017-11-28 16 views
1

1台のマシンですべてのリソースを使用するには、 複数のサービスインスタンスを1台のマシンに展開し、着信サービス がこれらのインスタンスに広がるように要求します。単一ノード内に複数のサービスインスタンスを追加する

しかし、ドキュメントによれば、負荷分散は だけがサービスインスタンスレベルではなくクラスタノードレベルで動作するようです。

私はテストサービスコードを書いて、 マシンに10個のサービスインスタンスをdeployMultiple()メソッド経由でデプロイしました。私はクライアントの プログラムでこのサービスを使用しましたが、実際にサービスされていた10のサービスインスタンスのうちの1つのみがログに記録されていました。

私の質問は、 マシンで複数のサービスインスタンスを同時に処理できるようにすることですか? 可能でない場合、他の方法はありますか?複数のドッカーインスタンスを の単一マシンにデプロイする、またはサービス内にスレッドプール構造を構築する 実装?

答えて

1

単一のノードに複数のサービスをデプロイすることはできませんが、サービスメソッドの呼び出しは、とにかく同時に処理されます。デフォルトではhttps://apacheignite.readme.io/docs/thread-pools#section-services-pool

それが可能なCPUコアの数があります:

あなたは、サービスのプールサイズを設定することができます。呼び出しがサービスを持つノードに送られた場合、新しいスレッドがプールから取得されます。

したがって、単一のノード上に同じサービスのインスタンスを複数持つことはできません。

関連する問題