12.13. キャパシティーポリシー
JBoss EAP は、データソースを含む Jakarta Connectors デプロイメントのキャパシティーポリシーの定義をサポートします。キャパシティーポリシーは、キャパシティーのインクリメントと呼ばれるプールの物理接続の作成方法と、キャパシティーのデクリメントと呼ばれる破棄方法を定義します。デフォルトのポリシーは、キャパシティーのインクリメントではリクエストごとに 1 つの接続を作成し、キャパシティーのデクリメントではアイドル状態のタイムアウトがスケジュールされたときにタイムアウトするとすべての接続が破棄されるよう設定されます。
キャパシティーポリシーを設定するには、キャパシティーインクリメンタークラスかキャパシティーデクリメンタークラスのいずれか、両方を指定する必要があります。
例: キャパシティーポリシーの定義
/subsystem=datasources/data-source=ExampleDS:write-attribute(name=capacity-incrementer-class, value="org.jboss.jca.core.connectionmanager.pool.capacity.SizeIncrementer") /subsystem=datasources/data-source=ExampleDS:write-attribute(name=capacity-decrementer-class, value="org.jboss.jca.core.connectionmanager.pool.capacity.SizeDecrementer")
指定したキャパシティーインクリメンターまたはデクリメンタークラスにプロパティーを設定することもできます。
例: キャパシティーポリシーのプロパティー設定
/subsystem=datasources/data-source=ExampleDS:write-attribute(name=capacity-incrementer-properties.size, value=2) /subsystem=datasources/data-source=ExampleDS:write-attribute(name=capacity-decrementer-properties.size, value=2)
MaxPoolSize インクリメンターポリシー
クラス名: org.jboss.jca.core.connectionmanager.pool.capacity.MaxPoolSizeIncrementer
MaxPoolSize インクリメンターポリシーは、リクエストごとにプールを最大サイズまでインクリメントします。このポリシーは、常時利用できる接続を最大数維持したい場合に便利です。
Size インクリメンターポリシー
クラス名: org.jboss.jca.core.connectionmanager.pool.capacity.SizeIncrementer
Size インクリメンターポリシーは、リクエストごとにプールを指定の接続数までインクリメントします。このポリシーは、次のリクエストにも接続が必要であることを予想する場合に追加の接続数でインクリメントしたい場合に便利です。
名前 | 説明 |
---|---|
Size | 作成される接続数 |
これはデフォルトのインクリメントポリシーで、size の値は 1 になります。
Watermark インクリメンターポリシー
クラス名: org.jboss.jca.core.connectionmanager.pool.capacity.WatermarkIncrementer
Watermark インクリメンターポリシーは、リクエストごとにプールを指定の接続数までインクリメントします。このポリシーは、常時プールに指定数の接続を維持したい場合に便利です。
名前 | 説明 |
---|---|
Watermark | 接続数のウォーターマークレベル |
MinPoolSize デクリメンターポリシー
クラス名: org.jboss.jca.core.connectionmanager.pool.capacity.MinPoolSizeDecrementer
MinPoolSize デクリメンターポリシーは、リクエストごとにのプールを最小サイズまでデクリメントします。このポリシーは、各アイドルタイムアウトリクエストの後に接続の数を制限したい場合に便利です。プールは先入れ先出し (FIFO) で操作します。
Size デクリメンターポリシー
クラス名: org.jboss.jca.core.connectionmanager.pool.capacity.SizeDecrementer
Size デクリメンターポリシーは、アイドルタイムアウトリクエストごとにプールを指定の接続数までデクリメントします。
名前 | 説明 |
---|---|
Size | 破棄されるべき接続の数 |
このポリシーは、プールの使用度が徐々に減少することが予想されるためアイドルタイムアウトリクエストごとの追加接続数をデクリメントしたい場合に便利です。
プールは先入れ先出し (FIFO) で操作します。
TimedOut デクリメンターポリシー
クラス名: org.jboss.jca.core.connectionmanager.pool.capacity.TimedOutDecrementer
TimedOut デクリメンターポリシーは、アイドルタイムアウトリクエストごとにタイムアウトした接続をすべてプールから削除します。プールは先入れ後出し (FILO) で操作します。
このポリシーはデフォルトのデクリメントポリシーです。
TimedOut/FIFO デクリメンターポリシー
クラス名: org.jboss.jca.core.connectionmanager.pool.capacity.TimedOutFIFODecrementer
TimedOutFIFO デクリメンターポリシーは、アイドルタイムアウトリクエストごとにタイムアウトした接続をすべてプールから削除します。プールは先入れ先出し (FIFO) で操作します。
Watermark デクリメンターポリシー
クラス名: org.jboss.jca.core.connectionmanager.pool.capacity.WatermarkDecrementer
Watermark デクリメンターポリシーは、アイドルタイムアウトリクエストごとにプールを指定の接続数までデクリメントします。このポリシーは、常時プールに指定数の接続を維持したい場合に便利です。プールは先入れ先出し (FIFO) で操作します。
名前 | 説明 |
---|---|
Watermark | 接続数のウォーターマークレベル |