Apache Karaf: the crossroad of IoT and Java
The Internet of Things is a interdisciplinary environment where cross-functional teams cooperate to deliver the right solution: firmware developers, backend sw engineers, GUI designers and web app software developers combine their expertise to implement all the stack for IoT verticals. In this context, there are many challenges to face like coping with the fallacies of distributed computing or even more simply reducing frictions between different technological domains.
This presentation tells how Apache Karaf can help mitigating the inherent IoT complexity, providing an elastic runtime on top of which a complete IoT stack can be built: the demo will show how to integrate MQTT-enabled device (e.g. Raspberry-PI) with the Karaf backend, process the data and redirect the data flow as a web-socket stream to an AngularJS application. The web app is served by the embedded Karaf application server. Karaf JPA support is used to persist data.
Leveraging OSGi modularity and dynamicity, new data visitors can be installed at runtime, enabling a truly data-centric architecture that is capable to evolve and scale out.