フローティングライセンスのサポート

デフォルトでは、各Magicサーバがプロジェクトを実行する際に使用するライセンス数を予め定義しなければなりません。この数が指定されたライセンス数の範囲内であることを確認するために、マルチプロジェクト環境においてすべてのサーバに対してチェックされます。たとえば、20スレッドのライセンスを使用してマルチプロジェクト環境で実行する2つのプロジェクトがある場合、前もってスレッドの配分を行っておく必要があります。プロジェクトBが5スレッドを使用しているのであれば、プロジェクトAは15のスレッドを使用するようにできます。

マルチプロジェクト環境では、各サーバは、異なるプロジェクトを実行します。これは、各サーバ(プロジェクト)の性能が重要になることを意味しています。そして、ライセンス(スレッド)を共有する能力が非常に重要になります。

Magic xpaのフローティングライセンス機能は、ライセンスをサーバで分配することによって、マルチプロジェクト環境でこれらのライセンスを最適に利用することができます。したがって、特定のプロジェクトが何もしていない場合、他のプロジェクトはそのライセンスも利用することができます。

MRBがサーバとアプリケーションの能力をコントロールするため、そのサーバで利用できるライセンスの総数を知っておく必要があります。MRBは定義されたライセンスに基づいて各サーバが利用しているスレッドの最大数(またはユーザ数の最大値)を合計します。最大スレッド数が"-1"として定義されたサーバは除きます。MRBは、利用できるスレッド/ユーザの総数として、この数値を使用します。MRBが特定のサーバで割り当てられたスレッド/ユーザ数を使用していないことを確認すると、これらのスレッド/ユーザは他のサーバで使用することができます。

この機能を使用するには、以下の手順に従ってください。

  1. 最大並行リクエスト数]>=0または、[最大並行ユーザ数]>=0(RIAの場合)にしたサーバを定義します。この設定を行うと、少なくとも1つのサーバがライセンスの数だけチェックアウトしなければなりません。0に設定した場合、Magicエンジンはライセンスで定義された全てのライセンスをチェックアウトします。

  2. 他の全てのサーバでは、[最大並行リクエスト数]または[最大並行ユーザ数](RIAの場合)を「-1」に設定します。これは、サーバがライセンスをいくつかのスレッドを、チェックアウト済みのエンジンと共有することを意味しています。

  3. mgrb.iniで、FloatingLicenseフラグを「Y」に設定します。

注意:

  • バックグラウンドモードで実行しているアプリケーションサーバエンジン(ActivateRequestsServer = Y)のみが、FloatingLicense= Yで動作しているMRBによってプールされたライセンスを共有することができます。

  • フォアグランド(DeploymentMode=R)で実行しているサーバは、フローティングライセンスモードのMRBには登録されません。しかし、Magic xpa Studoはフォアグラウンドで実行していてもフローティングライセンスモードのMRBに登録されます。

  • MRBは、モバイル用ライセンス(Magic xpa RIA Server for Mobile)では、フローティングライセンスをサポートしません。