A simple IoT architecture to Ingestion and Reporting — Part VI

Rafael Faita
Javarevisited
Published in
5 min readSep 29, 2020

--

Part I | Part II | Part III | Part IV | Part V

Context

In our sixth and last part, of a series of articles about IoT architects, I will talk about the Gateway implementation, the integration with security server Keycloak and the reverse proxy using Nginx. At the end of the article, I will show how we can wake up our environment using Docker and docker-compose.

Disclaimer

I chose the Spring Framework to create the architecture because my main program language is Java and I have a big experience with Spring. It’s only a preference, you can recreate all of this architecture using another program language.

Big Picture

Gateway Service

All the source code of this project is hosted on GitHub (here)

The Gateway Service in our architecture has two main responsibilities:

  • be the entry point of our services, acting as a proxy, redirecting the incoming call to correct services
  • be the security entry point, filtering and identifying the clients send requests to our backend

To create our gateway first of all we start adding to our pom.xml the following library:

--

--