Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-285

Add clustered database based timers

XMLWordPrintable

    • Icon: Feature Request Feature Request
    • Resolution: Done
    • Icon: Major Major
    • 9.0.0.Beta1
    • None
    • EJB
    • None

      Clustering should be supported for database timers.

      The general ideal will be that a single database is shared by all nodes in the cluster. When a timer is created it will be inserted into the database. Periodically at a configured interval nodes will refresh their list of active timers from the database.

      When a timer expires a node will attempt to grab ownership of the timer in the database by updating the row. Due to the use of either optimisitic locking or traditional DB locks only 1 node will be successful, and that node will run the task.

      We will also support write only nodes, nodes that can create timer tasks, but do not attempt to run them, to allow timer tasks to be run by a subset of the nodes.

      So that you don't have hundreds of existing partition name feature will allow clustered timers to be grouped into smaller partitions, so you can limit the number of nodes that are contending for a timer.

              sdouglas1@redhat.com Stuart Douglas (Inactive)
              sdouglas1@redhat.com Stuart Douglas (Inactive)
              Votes:
              9 Vote for this issue
              Watchers:
              10 Start watching this issue

                Created:
                Updated:
                Resolved: