We are happy to announce a significant milestone for the OpenDolphin project: the 0.8 release.
With 1.0 coming closer, we have focused on harmonizing the API and supporting production systems in terms of scalability, performance, resource consumption and monitoring capabilities.
The original plan was to care about the production support after the 1.0 release but since OpenDolphin is already used in mission critical and reasonably large production systems, we had to adapt. This led to a deferral of the 0.8 release date but with the benefit of having a production-ready system much earlier.
Between the various improvements are:
- new internal asynchronous event handling based on kanbanflow that has proven to scale very nicely with the number of available processing units. OpenDolphin is ready for the multi-core era.
- client-side presentation models are an option for cases where you need the full versatility of presentation models for the view without the controller knowing anything about it. This enhances performance since no updates are ever sent to the server and it dramatically reduces memory footprint on the server.
- command batching collects client-side commands in packets before sending them to the server. This is a tremendous time saver when there are very many commands to be sent. It goes without saying that all OpenDolphin characteristics like asynchronous sending and strict command sequence remain untouched.
- compressing codecs can be used when there is a lot of data to be sent in either direction. We just zip it up.
- adaptive logging allows to set log levels at runtime (!) on a granularity of your choice to look into pretty much every detail of OpenDolphin.
- session affinity checks protect your application against server misbehavior with respect to breaches of session affinity (as experienced with market-leading products).
In the project infrastructure we have seen advances such as
- 100% test coverage, i.e. statement coverage without any exclusions as visible from the continuous integration builds.
- revamped website, which we hope you’ll like.
- more demos particularly around synchronizing many clients and a large set of data points but also for point-of-sale systems and typical business applications.
- improvements to the jump-start project and the project generator for quickly getting into OpenDolphin.
The ecosystem around OpenDolphin is growing and has come up with great new approaches like
- OpenDolphin on the Raspberry Pi to show the small resource requirements and
- dolphin.js as a prototype for OpenDolphin on the web, on mobile devices, and in live-update multi-channel applications.
- and many projects, events, and blog posts
I’d like to say a big thank you to all involved parties, particularly our early-adopting users for their great feedback.
I’m also happy to point out the contributions of our new committers Andreas, Detlef, Christoph, and Sven.
In order to use the latest release, just update your dependencies from 0.7 to 0.8.
We plan to release version 1.0 this summer with additional convenience features and a more extensive user guide.