High-level technical architectureΒΆ
The above diagram contains the main components of our suite. From top to bottom the solution contains the following functionality:
Frontend services
Messaging
Asynchronous message queueing
Using RabbitMQ
Framework and Services
Distributed / scalable task handling
Easy to develop services
Build-in json schema validation
Database access abstraction layers
Toolbox for often used tasks, keeping the service footprint to a minimum
Data storage
Relational database + using PostgreSQL
NOSQL database + using Apache Cassandra
In the other paragraphs we will describe how communication is processed and how the most important components interact with each other.