Named instance pools

Named instance pools provide more administrative control over how components are pooled. This feature allows you to control the number of component instances that EAServer creates for a set of components. Set the com.sybase.jaguar.component.instancePool property to assign your component to a pool other than the default. If this property is not set, the component runs in one of the default pools described in Table 3-3.

Table 3-3: Preconfigured instance pools

Name

Description

Maximum number of instances

SystemPool

The default for components whose Instances/Bind Thread property is disabled.

infinite, denoted by -1

BindThread

The default for components whose Instances/Bind Thread property is enabled.

512

By default, EAServer assigns components that do not have the Bind Thread setting enabled to SystemPool. This pool imposes no limit on the number of instances. For components placed in SystemPool, the component’s properties control how many instances can be pooled.

The BindThread pool has a limited size that you can modify. As described in “Bind thread”, components that run with Bind Thread are resource intensive. Setting a limit on these instances prevents them from monopolizing the available threads.

You can create new pools with different instance pool settings to partition the memory used to run different components. For example, you can create a larger instance pool for frequently used components and create smaller pools for seldom used components.

In EAServer Manager, you can manage the instance pool settings in the top-level Instance Pools folder. Sybase recommends that you do not modify the SystemPool settings, or create new pools that have no size limit.

StepsCreating an instance pool

  1. Highlight the Instance Pools folder.

  2. Select File | New Instance Pool. The Instance Pool Wizard appears.

  3. Follow the wizard pages to configure the properties.

StepsViewing or modifying an instance pool

  1. Expand the Instance Pools folder.

  2. Highlight the instance pool you want to modify and choose File | Properties.

  3. In the Instance Pool Properties dialog box, on the General tab, enter a description and the maximum number of instances. By default, the maximum number of instances is set to 512. Sybase recommends that you do not create an instance pool with the maximum number of instances set to -1 (infinite). If you need an instance pool with an unlimited number of instances, use the preconfigured SystemPool.

  4. To enable debugging, which writes instance pool information to the server log file:

    1. Select the Advanced tab.

    2. Click Add.

    3. Enter these values:

NoteYou must refresh an instance pool or refresh the server before any changes to instance pool properties take effect.

StepsRefreshing an instance pool

  1. Expand the Instance Pools folder, then highlight the instance pool you want to refresh.

  2. Choose File | Refresh.

StepsAssigning a component to an instance pool

If you do not specify an instance pool for a component, EAServer assigns one of the default instance pools automatically using the following criteria. If a component’s Instances/Bind Thread property is enabled, EAServer assigns the component to the BindThread instance pool; otherwise, it assigns the component to the SystemPool instance pool. If you enable the Instances/Bind Thread option for a component in the SystemPool, EAServer changes the instance pool selection so the component uses the BindThread instance pool.

Assign the component to an instance pool as follows:

  1. In EAServer Manager, highlight the component to assign to an instance pool.

  2. Select File | Properties.

  3. On the Resources tab, select a Named Instance Pool from the drop-down list.

StepsDeleting an instance pool

  1. Expand the Instance Pools folder.

  2. Highlight the instance pool you want to modify and choose Edit | Delete.

NoteYou cannot delete the preconfigured SystemPool or BindThread pools.

StepsManaging instance pools using jagtool

  1. You can also use these jagtool commands to create and configure instance pools: copy, create, delete, list, props, refresh, and set_props. For example, to create a new instance pool called “MyPool,” use this syntax:

    jagtool create InstancePool:MyPool