Data source and database tuning

You can specify the data source and database table name used for persistent storage in the message queue and topic properties. A database is required even for applications that use transient messaging. Among other things, EAServer requires the data source to store persistent messages, to store transient messages when the in-memory queue overflows, for temporary storage of transient message queues that are idle.

The default data source for messaging is the message.db data source. You can reconfigure or redefine this data source. To support development use, the default message service configuration connects to the Adaptive Server Anywhere database server runtime that is included with EAServer. For large scale production use, Sybase recommends that you use an enterprise-grade database server such as Sybase Adaptive Server Enterprise.

If your application uses messaging in transactions involving other components, such calling EJB entity bean method in the same transaction, consider running the message service against the same server that hosts the application data. Doing so allows you to avoid the added overhead of two-phase commit transaction management. When transactions enlist multiple data sources, all the data sources must be configured for two-phase commit to achieve atomicity between message queue operations and other resource access.

Tune the message.db data source as described in “Data source settings”.

The default database table in message queue and topic properties is jms_pm. You may get better performance specifying dedicated tables for each queue and topic. EAServer creates the specified table with appropriate indexes. For large-scale use, the table properties may benefit from further tuning by your database administrator.