+

Search Tips   |   Advanced Search

Configure a timer service for network deployment

We can configure the EJB timer service for timers that can persist through application server shutdowns and restarts.

A database instance must exist before you complete either of the processes that are documented in this topic. For example, we might have a DB2 or Oracle instance. Configure the Timer Service to use that database.

WebSphere Application Server implements the EJB Timer Service. Based on the business needs, we can use persistent timers or non-persistent timers. Persistent timers are helpful if we 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 the 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 they are created. In a clustered environment, if your EJB application automatically creates a non-persistent timer and this application is mirrored on multiple servers, each server has its own non-persistent timer that runs within that server environment. Programmatically created non-persistent timers only run in the cluster member where it was 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 default work manager of the server by default but can be configured to use a different work manager through EJB timer scripting. Non-persistent timers do not use the scheduler service.

Configure a persistent timer in a network deployment environment is mostly about using the same data source.

We can configure the timer service to share the same database across multiple servers. However, each server must use its own unique database table. Complete one of the following processes to configure the timer service to share the same database across multiple servers:

When configuring an EJB Timer/Scheduler, remember that the default scheduler uses the simple file-based Apache Derby database by default so that we can quickly get a functioning environment up and running. DO NOT use the Derby database for production use. Moreover, the default Derby database does not support a clustered job scheduler, nor a clustered batch container.


Tasks

  • Configure the timer service using scripting
  • Use schedulers
  • Configure schedulers
  • EJB timer service settings