Build Rich Internet Applications (RIA) quickly

The following, are some of Diffusion’s, key features which will aid the building of high performance RIA quickly and painlessly (see Diffusion product page for full list of features):

Simple API

Diffusion’s, simple and flexible software developer kit (SDK), doesn’t demand you to follow any propriety or third party frameworks or force any structure upon your data in implementing it.

Hence, you will be able to integrate Diffusion quickly without having to rewrite great swathes of your existing codebase on either the client or server.

Zero download/Cross browser and firewall compatibility

Diffusion’s ‘web client connector’ is compatible with all major browsers and has no need for any third party plug-ins. The adapter’s ‘cascading transport layer’ (see cascading transport selection) technology ensures your application will not be restricted by corporate firewall restrictions.

Bi-Directional

Not only can you push data and events to the client, but clients can also send requests and events to the server using the same protocol and mechanisms. This enables you to deploy truly ‘rich’ applications over the internet, with the same functionality as traditional ‘thick’ client internal application.

Technology Agnostic

Any technology that can open a socket can connect to Diffusion. Consequently, through a single server you can disseminate your information to many different web browser ‘technologies’ (Flex/Flash, Sliverlight, HTML/JavaScript etc.). This needn’t be restricted to ‘web browser’ based applications and any application deployed over the ‘net’ whether this be an Adobe AIR, mobile phone or interactive TV/games console can connect and be served by the same Diffusion server.

Best Message Delivery

Best Message Delivery (BMD), ensures that your programmers need not defensively coding your applications to support end-users connecting from the worse possible technology environment (e.g. under powered PC and/or poor internet connection) at a detriment to both delivery times of your projects and end-user experience. Diffusion’s BMD auto optimises the delivery of messages to each end user based on their technology environment (see Best Message Delivery for more details).

Hierarchical topics

Hierarchical topics are a powerful tool in ensuring you publish only the finest grain of information that you absolutely need to. Also their tidy structure ensures your application’s code remains easy and logical to understand, hence, reducing maintenance and future development costs as your codebase remains simplistic and easy to follow.

In the example below we can see how you might arrange the topics for FX, GBP/USD, prices.

Hierarchical topics, FX spot/outright example

In the example, you can see that the user only subscribes to the topics they are interested in. Hence, preventing the user from having to consume/handle price updates for tenors they are not interested in. By splitting each tenor into ‘bid’ and ‘offer’ topics we ensure only the bare minimum of information is sent out. For example, should only the ‘bid’ price change for a given tenor, then only this data, the new bid, is published.

At the same time, any, user interested in all the rates associated to GBP/USD can simply subscribe to the parent topic.

Not only does this help you keep bandwidth use to a minimum, but also, given its tidy and logical nature, your application’s code will be easy to understand and consequently reduce support and maintenance.