この作業は、サーバー内でのすべての singleton セッション Bean の書き込みロックに対するデフォルトの不公平なロック・ポリシーをオーバーライドする場合に行います。この作業は、不公平なポリシーに従って singleton セッション Bean メソッド呼び出しの要求をロックすることを希望しない WebSphere® Application Server ユーザーを対象としています。
このタスクについて
singleton セッション Bean メソッドのロックの取得には、デフォルトでは
不公平な ロック・ポリシーが使用されます。ロックが
公平 として構成されている場合は、ほぼ着信順のポリシーを使用しているエントリーでスレッドの競合が発生します。ロックが解放されると、読み取りプログラムであるか書き込みプログラムであるかにかかわらず、最も待機時間の長いロックが認可されます。
ロックが不公平として構成されている場合は、ロックの取得順は保証されません。
読み取りプログラムがアクティブであるときに書き込みプログラムがキューに入った場合は、その書き込みプログラムがロックを認可される前に後続の読み取りプログラムが読み取りロックを認可されることがあります。
手順
- オプション: 管理コンソールを開きます。
- 「サーバー」を選択します。
- 「サーバー・タイプ」を選択します。
- 「WebSphere アプリケーション・サーバー」を選択します。
- 構成するサーバーを選択します。
- 「サーバー・インフラストラクチャー」から、 「プロセス定義」と選択します。
- 「追加プロパティー」から、「Java 仮想マシン」を選択します。
- 「追加プロパティー」エリアで、「カスタム・プロパティー」を選択します。
- 「アプリケーション・サーバー」ページで、「新規」をクリックして、サーバーに対する任意の名前と値のペアを指定します。
- 「名前」入力フィールドに、com.ibm.websphere.ejbcontainer.useFairSingletonLockingPolicy と入力します。
- 「値」入力フィールドに true と入力します。
重要: true と入力すると、singleton セッション Bean メソッドに対して取得されたすべてのロックが公平なポリシーを使用するようになります。false と入力すると、singleton セッション Bean メソッドに対して取得されたすべてのロックが不公平なポリシーを使用するようになります。デフォルトのポリシーは不公平です。
- 「OK」をクリックします。
- 構成を保存します。
- サーバーを再始動します。
タスクの結果
これで、サーバー内で singleton セッション Bean に対して取得されたすべてのロックについてのロック・ポリシーが設定されました。