A message broker can allow any server in a cluster to publish to, and
subscribe, to a message channel. A server subscribing to a channel can
set up a message filter such that XQuery expressions can be used to
filter against the messages arriving on the channel A message broker can
also utilize a unique filtering algorithm to optimize data access. Static
subscription information can be captured in order for a message broker to
do client-side filtering. A message broker can also construct and
maintain at least one table in memory that indicates whether any server
in the cluster may ever do a dynamic subscription. For dynamic
subscriptions, the publishing server can extract the information from a
database, such as by executing a DBMS select on a subscription table
using a primary key lookup.This description is not intended to be a
complete description of, or limit the scope of, the invention. Other
features, aspects, and objects of the invention can be obtained from a
review of the specification, the figures, and the claims.