This application is a central managing component of sales and cash register software infrastructure. The application helps to simultaneously update the software on all cash registers of the sales network.
Cash Register Manager’s goals:
management of all infrastructure applications configurations;
monitoring the status of infrastructure;
management of the centralized distribution of software updates;
management of the distribution of configuration changes.
The client is a leading retail company in Eastern Europe. It controls several multiformat retail chains: small grocery stores, large supermarkets, an online store, and a food delivery service.
Ecommerce, retail, cash register management software.
By the time the customer turned to us, they already had about 15 thousand stores, as well as 40 thousand cash registers to work with. You can imagine how much data we had to process. Of course, we had to speed up the system for dealing with such an amount of information. And since it was supposed to update applications on all cash registers simultaneously, we had to provide for the possibility of the system to work with the full amount of information.
Programming language — Java.
Integration framework — Apache Camel.
Reactive-stack web framework — Spring WebFlux.
Initially, they used Reactor (Spring WebFlux) to speed up the system. But over time it was abandoned and replaced by the Apache Camel framework.
At the moment, the application is fully functional to send downloads of various kinds of distribution to the stores. However, we are currently implementing these features for administrative staff, as well as developing mobile apps for all employees.
The application is not intended for public use; it can only be used from the client’s intranet.