Mathematica 9 is now available
6.5 複数カーネルプール

ドキュメント6. より高度なトピック

 

6.5 複数カーネルプール

アプリケーションによっては,別々のリクエストに応えるためにMathematica カーネルのプールをいくつか使うとよい場合があります.各プールのカーネル毎に,タイムアウトのパラメータや初期化ファイルの設定等を変えることができます.また,Mathematica カーネルが1つしかないプールをデモンストレ−ションサーバとして利用し,Mathematica カーネルが4つある別のプールを使って顧客のリクエストに応えることもできます.こうすることで,顧客を優先することができます.複数のプールを使う利点として,1セットの計算を他と完全に切り離せることも挙げられます.しかし,管理が複雑になりwebMathematica のライセンスも追加しなければならないという欠点もあります.

MSPツールが起動されると,常にプールが1つ作られます.このプールは「Generalプール」と呼ばれるものです.もしプールを追加したければ,以下の例で示すようにKernelPools文をMSP.confファイルに追加してください.

KernelPools=Examples, Test

これは「Examples」と「Test」という2つの追加プールを指定しています.システムはMSP.confと同じディレクトリにある設定ファイル,Examples.confTest.confを探します.これらの設定ファイルで,主ファイルで設定されたパラメータを変更することができます.まだ設定されていない値はMSP.confから値を取ります.プール特定の設定ファイルが見つからないときは,すべての値がMSP.confから取られます.これらのファイルに置くことのできるパラメータについてはMSP.confに関するドキュメントをご覧ください.

複数のプールを使いたいときは,起動したい数に応じたwebMathematica のライセンスが必要です.「カーネルモニタ」には全プールの情報があるので,プールが適切に初期化されていることを確認するのに適しています.サーブレットのログファイルにも各プールの情報があります.これについては「ログ」をご覧ください.

次に,特定のプールからのカーネルの割当てについて説明します.

6.5.1 JSPのプールへのマッピング

JSPのカスタムタグmsp:allocateKernelはカーネルの割当てに使われます.このタグがカーネルを取るために使うプールは,使えるプールとJSPの名前によって決まります.これはMSP.confのPoolPathの設定で決まります.PoolPathはJSPのディレクトリをプールにマッピングします.以下の例をご覧ください.

KernelPools=Examples, Test
PoolPath.Examples=ExampleDir
PoolPath.Test=TestDir

この例ではExamplesTestの2つのカーネルプールが使われています.トップレベルのディレクトリExampleDirの中か,あるいはその下にあるJSPがExamplesプールを使い,TestDirディレクトリにあるJSPがTestプールを使います.その他のJSPはGeneralプールを使います.例えば,webMathematica/ExampleDir/Files/Work.jspを参照するhttp://host/webMathematica/ExampleDir/Files/Work.jspはExamplesプールを使います.

6.5.2 複数のWebアプリケーション

リクエストを分散する第3の方法として,複数のWebアプリケーションをインストールすることが考えられます.お使いのサーバがWebのアプリケーションに特別の設定を提供しているなら,これがよい方法かもしれません.このためにはwebMathematica Webアプリケーションのインストールプロセスを繰り返し,新しいインストールの度に異なった名前を付けます.Java Virtual Machineと共通のインスタンスで起動するWebアプリケーションは,すべて同一のカーネルモニタを使用します.



Any questions about topics on this page? Click here to get an individual response.Buy NowMore Information