Network Deployment (Distributed operating systems), v8.0 > Administer applications and their environment > Administer EJB applications
Configure a timer service
We can configure and manage the EJB timer service for a specific EJB container.
WAS implements the EJB Timer Service. Based on your business needs, you can use persistent timers or non-persistent timers. Persistent timers are helpful if you are creating a timer for a time-based event that requires assurance of timer existence beyond the life cycle of the server to persist through server shutdowns and restarts. Previously started persistent timers automatically start when your server starts, and they require a database instance.
Non-persistent timers do not use a data store and are canceled when the application server is stopped or fails to remain in an active state. Non-persistent timers exist only on the server where the timer is created.
Both persistent and non-persistent timers require a work manager. Persistent timers use the work manager used by the scheduler service. Non-persistent timers use the server default work manager by default, but can be configured to use another work manager using EJB timer scripting. Non-persistent timers do not use the scheduler service.
We can configure and manage the EJB timer service for persistent and non-persistent timers in the admin console. The configuration for persistent and non-persistent timers is not mutually exclusive. Your application might contain both persistent and non-persistent timers.
Procedure
- Click Servers > Application servers > server_name
> EJB Container settings > EJB timer service settings .
- Configure the persistent EJB timer support.
- To use the internal, or pre-configured, scheduler instance, select Use internal EJB timer service scheduler instance. If you choose not to change the default settings, this instance for the scheduler is associated with an Apache Derby database. If you choose to customize the pre-configured instance, complete the following actions:
- To change the data source, enter your Data source JNDI name. We can use any supported database, such as DB2 or Oracle.
- Enter your chosen Data source alias.
- Enter your chosen Table prefix to have several server processes use the same database, but different tables.
- Enter a Poll interval value in milliseconds.
- If you want more timers to run concurrently, enter a new value for Number of timer threads.
For more details, see information about timer service settings.
- To configure your own scheduler instance instead of using the pre-configured internal one, select Use custom scheduler instance. You might want to use your own instance to:
- Change scheduler service configuration options not available for customization on this panel
- Keep EJB timer tasks in the same database tables as your other tasks
- Have a single scheduler instance handle all the EJB timers in a cluster. This way, an ejbTimer task created on one cluster member can run on a different cluster member.
To use your own instance, :
- Configure a scheduler instance through the scheduler service graphical user interface. See the using schedulers documentation for information about how to do this.
- Select your Scheduler JNDI name from the list.
- Configure the non-persistent timer support. Support for non-persistent timers is configured in addition to (not instead of) support for persistent timers.
Optional. Configure data caching for your EJB timers. Caching allows the application server to reuse timer data without having to query the database each time that data is required. See the topic on caching data for a timer service for information on configuring this feature.
- Enter your chosen Maximum number of retries.
- Enter your chosen Time interval between retries.
- Select the Share thread pool configured for persistent timers or the Create a separate thread pool for non-persistent timers option. If you choose the Create a separate thread pool for non-persistent timers option, enter your chosen Number of timer threads.
- Click Apply.
- Click OK.
Related
Configure a timer service for network deployment
EJB timer service settings
Configure the timer service using scripting
Use schedulers