The latest version of Diffusion™ contains new functions,
performance enhancements and bug fixes.
minimizing the risk of runtime errors caused by type mismatches.
Transport cascading in the Android™ and Java™
You can specify that your client attempts connection using more than one transport. If a
connection attempt using the first specified transport fails, the client cascades to the
next specified transport and uses it to attempt connection.
For more information, see Connecting basics.
Additional support for JSON and binary topics in the Apple® API
Unified API clients now provide the ability to create and subscribe to
JSON topics enable you to structure your data using JSON. The data is transmitted in a Concise Binary Object Representation (CBOR) binary form for increased efficiency.
For more information, see JSON topics.
Binary topics enable you to stream your data in pure binary form without the overhead of
having to encode the binary data into string form.
For more information, see Binary topics.
Reliable reconnection for automated fan-out
The automated fan-out feature now makes use of all the advantages of Diffusion's reliable
reconnection, which was introduced in
Previously, fan-out could not make use of standard reconnection due to the possibility of
message loss. Now a fan-out secondary server that loses its connection to the primary server
can reconnect without any loss of topics.
For more information, see Configuring fan-out.
Propagation of missing topic notifications over automated fan-out connections
Missing topic notifications generated by subscription or fetch requests to a secondary
server are now propagated to missing topic handlers registered against the primary servers.
Control clients can use these notifications to monitor the activity of end-user clients. It
was previously necessary for control clients to establish separate sessions with secondary
servers to receive these notifications. Now clients can receive missing topic notifications
through a single session with a primary server.
For more information, see Using missing topic notifications with fan-out.
Topics can be created without first creating parent topics
The relationship between topics and the topic tree has changed significantly in this
In previous releases, creating a topic at a topic path – for example, a/b – required that there was a topic at all
parent paths – for example, a. If not
present, these parent topics were created as stateless topics at the time the child topic
From Diffusion version 5.9, a topic can be created at any topic
path where there is not an existing topic. No additional parent topics are created. Empty
intermediate topic paths remain empty and topics can be created at these empty paths at a
Because there is no longer a requirement for every topic to have a parent topic, topics can
now be deleted without affecting or deleting any child topics.
Note: These changes only apply to Unified API interactions with the
topic tree. Publishers still create required parent topics when creating a topic and still
delete all topics below a topic selected for deletion.
JMS adapter now available as a standalone application
The Diffusion JMS adapter, which previously could only be run as
part of the Diffusion server process, can now also be run as a
standalone application on a separate system to the Diffusion server.
For more information, see JMS.