Jun 1, 2023

Toll Management System

Toll Management System

The goal of the project is to provide efficient and automated toll management for freight traffic. The base concept of this procedure is that the built-in on-board units from the vehicles send their coordinates to the system, which the system approves, snip them on a map, and then determine the toll for that section.

Our project is based on microservices architecture, which enables the easy and independent management, maintenance and scalability of services. The microservices relate to individual processes such as toll calculation, mapping and coordinate receiving.

The system is built on the Kubernetes container orchestration platform, which is one of the most popular and reliable technologies for modern service hosting. The communication between the microservices in our software is provided by a distributed message broker service called RabbitMQ. It enables asynchronous communication between different elements of the system. This allows us to apply various event-driven development paradigms between different services, organizing the coordinate processing chain into a Pipes and Filters architecture.

Scalability plays a key role in the efficient operation of the system. It’s expected to have at least 50000 on boarding units, with a message period of 20 seconds, and this number is expected to dynamically increase in the future. In order to meet this demand, we rely partly on the microservice architecture and partly on various services of Kubernetes (Autoscaling, Load balancer). Together, they provide the possibility for different elements of the system to be horizontally and vertically scalable, meaning that multiple instances can run in parallel from different services and the underlying resources of the instances can also be dynamically adjusted.

Photo credits: https://pixabay.com/hu/photos/kamion-%C3%A1rusz%C3%A1ll%C3%ADt%C3%A1s-sz%C3%A1ll%C3%ADt%C3%A1s-2677373/