The SiteWhere 1.9.0 release adds 30+ new features, updates, and bug fixes and contains a number of important architectural improvements.
Tenant Management
Improved Tenant Template Support
SiteWhere 1.9.0 adds a more powerful model for using templates to create new tenants. In previous versions, there was a single tenant template which was used to bootstrap all new tenants. The new architecture provides multiple templates which provide more options for creating new tenants. The tenant templates include a base tenant configuration file and can specify data initializers for various parts of the SiteWhere data model. When creating a new tenant, a starting template is specified. Templates included out-of-the-box include:
- Empty Tenant – This template allows a tenant to be create with no data and a very basic tenant configuration. There is no longer a need to delete the sample data that was automatically loaded with previous versions.
- Construction Example – This template loads the construction example data included in previous SiteWhere releases.
- Air Traffic Example – This template loads the air traffic example included in the sitewhere-examples GitHub repository. It includes additional assets for planes and tracking devices as well as a default tenant configuration that is pre-configured to ingest STOMP data sent from the air traffic web application.
In addition to the templates included OOTB, users can add their own templates to make it faster and easier to bootstrap new tenants.
Tenant Lifecycle Persistence
In previous versions, SiteWhere always started all tenants when the server was restarted. SiteWhere 1.9.0 now preserves tenant lifecycle state so tenants that have been stopped will remain stopped on server restart.
Infrastructure Updates
Better Performance in Administrative Console
Previous versions of the administrative console were based on JSP as the view technology. Spring Boot and the embedded Tomcat container have performance issues with JSP, so we updated the view technology to use Apache Velocity templates. The result is a much faster web interface and a much smaller server footprint thanks to the removed transitive dependencies.
Upgrade to Log4J 2
SiteWhere 1.9.0 now uses Log4J 2 as the basis for all system logging. This provides better integration with the existing logging in Spring boot.
Upgrade Swagger Dependencies
In the pre-1.5 Swagger version used in previous versions of SiteWhere, Scala was a transitive dependency. The footprint was huge considering it was not a core server component. SiteWhere 1.9.0 upgrades to a non-Scala version of Swagger, which greatly reduces the overall server footprint. Thanks to dependency improvements, SiteWhere 1.9.0 is almost 25% smaller than the previous version.
InfluxDB Improvements
Updated Client Jar
Updates to the core InfluxDB server caused problems with previous versions of SiteWhere due to non-backward-compatible API changes in the database. SiteWhere 1.9.0 includes the latest InfluxDB jar, which fixes the errors reported by users that upgraded InfluxDB to 1.0+.
Event Processing Fixes
The were a number of bugs in SiteWhere 1.8.0 related to the hybrid MongoDB/InfluxDB model and event processing. All of the reported issues have been fixed along with a number of improvements for the hybrid model.
Download SiteWhere 1.9.0
There are many other new features and bug fixes available in SiteWhere 1.9.0, so download it today!
Cheers!
The SiteWhere Team