Store Action Queues in Memory

IBM Seedlist Connector provides asynchronous actions. Each asynchronous action has a queue to store requests until threads become available to process them. These queues are usually stored in a datastore file or in a database hosted on a database server, but in some cases you can increase performance by storing these queues in memory.

NOTE: Storing action queues in memory improves performance only when the server receives large numbers of actions that complete quickly. Before storing queues in memory, you should also consider the following:

  • The queues (including queued actions and the results of finished actions) are lost if IBM Seedlist Connector stops unexpectedly, for example due to a power failure or the component being forcibly stopped. This could result in some requests being lost, and if the queues are restored to a previous state some actions could run more than once.
  • Storing action queues in memory prevents multiple instances of a component being able to share the same queues.
  • Storing action queues in memory increases memory use, so please ensure that the server has sufficient memory to complete actions and store the action queues.

If you stop IBM Seedlist Connector cleanly, IBM Seedlist Connector writes the action queues from memory to disk so that it can resume processing when it is next started.

To configure IBM Seedlist Connector to store asynchronous action queues in memory, follow these steps.

To store action queues in memory

  1. Stop IBM Seedlist Connector, if it is running.
  2. Open the IBM Seedlist Connector configuration file and find the [Actions] section.
  3. If you have set any of the following parameters, remove them:

    • AsyncStoreLibraryDirectory
    • AsyncStoreLibraryName
    • ConnectionString
    • UseStringentDatastore
  4. Set the following configuration parameters.

    UseInMemoryDatastore A Boolean value that specifies whether to keep the queues for asynchronous actions in memory. Set this parameter to TRUE.
    InMemoryDatastoreBackupIntervalMins (Optional) The time interval (in minutes) at which the action queues are written to disk. Writing the queues to disk can reduce the number of queued actions that would be lost if IBM Seedlist Connector stops unexpectedly, but configuring a frequent backup will increase the load on the datastore and might reduce performance.

    For example:

    [Actions]
    UseInMemoryDatastore=TRUE
    InMemoryDatastoreBackupIntervalMins=30
  5. Save and close the configuration file.

    When you start IBM Seedlist Connector, it stores action queues in memory.