Properties on this tab govern the allocation and deallocation of resources required by the component.
Transaction timeout A component’s Transaction Timeout property specifies the maximum duration of an EAServer transaction. See Chapter 2, “Understanding Transactions and Component Lifecycles” for more information on EAServer transactions.
You can set the timeout for components and at the server level, with server property com.sybase.jaguar.server.tx_timeout (set on the Advanced tab in the Server Properties dialog box). EAServer determines the transaction timeout period as follows:
If the component Transaction Timeout property is set to a non-zero value, this is the timeout period.
Otherwise, the server transaction timeout property
is checked (the server transaction timeout is specified by the com.sybase.jaguar.server.tx_timeout
property).
If the server transaction timeout is non-zero, this specifies the
timeout period.
Otherwise, the component Instance Timeout value is checked. If this value is non-zero, this specifies the transaction timeout period as well as the instance timeout period.
Otherwise, the transaction timeout is infinite.
For both the component and server setting, the timeout period is configured in seconds, with 0 indicating infinity (that is, no timeout). The default for a new server is 0. When specifying timeouts, a resolution of 5 seconds is recommended. Network transport time is included in the measured timeout period. You may need to configure a larger timeout period if clients connect over slow networks.
EAServer checks for timeouts after each method returns. Your component will not be deactivated in the middle of an invocation because of a timeout. When a transaction times out, the next method invocation in the client-side ORB throws the CORBA::TRANSACTION_ROLLEDBACK system exception.
Instance timeout Specifies how long, in seconds, an active component instance can remain idle between method calls before the client’s proxy becomes invalid. If the timeout expires, the instance is automatically deactivated. Instance Timeout is useful for ensuring timely deactivation of stateful components. (“Stateful versus stateless components” explains this term.) The setting has no effect for stateless components.
When the timeout period is exceeded, EAServer deactivates the component and invalidates the client’s object reference. If the client attempts another method invocation, the client-side ORB throws the CORBA::OBJECT_NOT_EXIST exception. At this point, the client must create a new proxy instance for the component.
This property is not set for new components; the component inherits a default value from the server properties. At the server level, configure the instance timeout by displaying the Advanced tab in the Server Properties window. Then set the com.sybase.jaguar.server.timeout property.
The timeout period is configured in seconds, with 0 indicating infinity (that is, no timeout). If the component’s Instance Timeout property is not set, the default is inherited from the server properties. The default for a new server is 0. When specifying timeouts, a resolution of 5 seconds is recommended.
Network transport time is not included in the measured timeout period. You may need to configure a larger timeout period if clients connect over slow networks.
Maximum Active Instances Specifies the maximum number of instances that can exist at the same time. For a C++ component that runs as an external process, specifies the maximum number of simultaneously running external processes. If a request arrives when the maximum number of instances exist and are all busy, the request blocks, with blocking time constrained by the Maximum Wait setting.
Maximum Pooled Instances When instance pooling is enabled with the Pooling checkbox on the Instances tab, specifies the maximum pool size. If the maximum pool size is reached, EAServer destroys excess instances after deactivation. The default is 0, which means no maximum pool size is in effect.
Minimum Pooled Instances When pooling is enabled, specifies the minimum pool size. The default is 0.
Maximum Wait This setting applies only when the Maximum Active Instances property is set to specify a limit on the number of simultaneous active instances. If a request arrives when the maximum number of instances exist and are all busy, the request blocks, with blocking time constrained by the Maximum Wait property. If the blocking time expires, the caller receives a CORBA::NO_RESOURCE_EXCEPTION.
Maximum Response Time The maximum allowable average response time for the component, in seconds. If the average method completion time rises above this limit, EAServer blocks creation of additional instances of this component until the average drops below the specified limit. The default is -1, which indicates no time limit.
Minimum Number of Instances When the Maximum Response Time is set to a non-default value, specifies the minimum numer of instances that must be allowed to execute regardless of observed response times. The default is -1, which means no new instances are blocked by the Performance Monitor. For more information on this feature, see Chapter 9, “Using the Performance Monitor,” in the EAServer Performance and Tuning Guide.
Named Instance Pool Constrains the component to run in the specified instance pool.
For information on tuning the instance pool size properties, see “Instance pooling” in Chapter 3, “Component Tuning,” in the EAServer Performance and Tuning Guide.
Copyright © 2005. Sybase Inc. All rights reserved. |