TomEE + 7.0.2にJava EE 7 REST APIをホストする48個のCPUを持つサーバーがあります。TomEEのマネージエグゼキュータサービス
一部のAPIでは、並列化されたアルゴリズムを実行するときに、できるだけ多くのCPUを使用する必要があります。 並列化された部分は、データベースや他のリソースを必要とせず、共用double [] []マトリックス内で幾分か重く持ち上げるだけです。
私は通常、EJBコンテキストで作業していますが、この特定のインスタンスでは、要件ではありません(また、そうでないことも望ましい)。
これまでのところ私は、executorをインスタンス化するために、
ExecutorService pool = Executors.newFixedThreadPool(maxThreads);
を使用していたが、これは、オペレーティング・システム・レベルでの実際のスレッドを生成するようだと私はそれの大ファンではない - いくつかのJMeter負荷がそれをテストした後bash全体がブロックされ、ハードリブートするまでサーバをSSHできなくなってしまった。
"マネージドエグゼキュータサービス"の概念に遭遇しましたが、私はチュートリアル/その使用方法をオンラインで確認することができません。
誰かが次のような考えを共有できますか?
a)TomEEでスレッドプールを設定する方法(例:server.xml、context.xml、tomee.xmlなど)、コード例はわかりますか?
b)デフォルトのスレッドプールを利用する方法はありますか?チューニングを必要としないほど賢明ですか?いいえ、どこからチューニングを開始できますか?
c)Javaでスレッドプールを検索するにはどうすればよいですか?JDNIルックアップで優先されますか?
d)私が一度そのリソースをEJBの一部にすることに決めた場合、インジェクションのコードはどのように見えますか?
私のアプリケーションコンテキストはserver.xmlの "myContext"として指定されていますので、サンプルを提供すると、検索文字列がどのように正確に見えるかを指定できますか?
Tomone + 7.0.2のインストールは非常に単純ですが、これまでの設定には触れませんでした。
ありがとうございました!ここで
ダニエル