Remote topic views versus fan-out
Diffusion offers two ways to share topic data between servers that are not in the
- Remote topic views
A remote topic view uses the existing topic view mechanism to map
part of the topic tree from a remote (or primary) server to a secondary
A remote topic view can be combined with the other capabilities of topic
views, enabling sophisticated dynamic mapping and transformation of
topics, as well as delayed or throttled feeds.
Remote topic views are configured dynamically with the API or management
console and the configuration is automatically shared within a cluster,
whereas fan-out requires file-based configuration.
Missing topic notifications can be propagated by remote servers if a
missing topic notification filter is specified for the remote server
that matches the path prefix of a subscription selector that matches no
topics on the secondary server.
Though providing powerful mapping capabilities, remote servers do have a
memory overhead at the secondary server as it is necessary to hold the
value of each topic selected by topic views in the secondary server
(though not within the topic tree). In the case where simple one-to-one
mapping is all that is required (topic A at the primary becomes topic A
at the secondary), fan-out may be more efficient.
Fan-out is used to replicate topics from a remote (or primary) server to
a secondary server where the fan-out link is configured in the
Server.xml configuration at the secondary server. They cannot be
configured dynamically and need to be configured at each cluster member
if operating within a secondary cluster.
Missing topic notifications can be propagated by fan-out links if a
subscription selector matches no topics on the secondary server and the
selector intersects with the fan-out link selector.
Unlike remote servers, fan-out has no memory overhead other than that for
the replicated topic. So when one-to-one mapping is all that is required
fan-out would be more efficient. Simple topic views on the secondary
server could still select fan-out topics as their source topics.