Intelligent Distribution Transformers
Real-time IoT device monitoring and analysing web application.
VueJs, HTML5, CSS3, NodeJs, Laravel- PHP, Reddis, and Cassandra
Advantage for the client
This application is one stop solution for configuring and monitoring multiple IoT devices in real time. It gives an excellent graphical user interface for reports and analytics. It was developed as a SPA single page application.
The challenge part of this project is to handle nearly 10k requests per minute. We clustered Nodejs since it involved I/O intensive operations and provided a faultolrent environment. We used write optimized Cassandra DB to handle massive write operations. To ensure “no single point failure” we have configured the network topology strategy in the cassandra keyspace with required replication factor.
The user interface was developed in Vuejs which is a more flexible and component based MVVM framework. To maintain the user role privilege we have used the redis server to storing data in memory.
- Real-time instantaneous parameters updation without page refreshing with real widgets representation. By using virtual DOM the page reloads and updates done very quickly without rendering the entire DOM.
- We have integrated a Graphical chart with zoomable options to visualize the parameters. We have implemented the amcharts with more sophisticated features like Zoom, download, multiline with threshold for graphs.
- We have Integrated the google map with our application for displaying the device’s real location in the map view.
Finally we have deployed this application in the AWS instance using docker containers and kubernetes.
Next part we are going to integrate Spark to read the data efficiently from the cassandra and also planned to support MQTT requests.