Components in Utilitarian#
Utilitarian API#
The main application for Utilitarian. It stores all data and handles all scheduling of reading jobs. We provide a REST API to manage the data and jobs.
docker pull quay.io/pwit/utilitarian:version
See component settings on how to configure Utilitarian API
DLMS UDP Server#
A high throughput UDP server to receive DLMS DataNotifications from meters.
docker pull quay.io/pwit/utilitarian-dlms-udp-server:version
DLMS Processor#
Many DLMS push messages are encrypted and to decrypt UDP messages in the receiving server would reduce throughput and we could loose messages if the server is not available to process them. Instead the UDP server sends the DLMS messages to the message broker and they are consumed by the DLMS Processor where they get decrypted and parsed into Meter Readings that is published back to the message broker.
docker pull quay.io/pwit/utilitarian-dlms-processor:version
Utilitarian Poster#
The Utilitarian poster is a queue consumer that will receive all data that are to be saved in the Utilitarian API and send it over HTTP to the correct endpoint.
docker pull quay.io/pwit/utilitarian-poster:version
Database#
Utilitarian uses PostgreSQL as database.
Message Broker#
Utilitarian uses RabbitMQ as message broker.