When it comes to mail, there is no room for error.
Founded in 1558, The Polish Post is one of the world's oldest postal services. Given its multi-century tradition of absolute reliability and national importance, the Polish Post took extreme care with its technological modernization effort. This is their story.
Polish Post's Challenge
Before long, Envelo received its largest client to date. Under normal circumstances, this would be cause for celebration but the Polish Post instead found itself in a challenging situation.
The problem was two-fold. The business challenge was that the massive increase in throughput required by the new client would require a third party cost that exceeded the Polish Post's revenue on this account. The technical challenge was that the Envelo platform had not been architected to effectively support this level of scale.
The Polish Post leadership team scrambled for a solution. They needed a modern, scalable, and cost-effective Envelo platform that could provide the necessary reliability and scalability at reasonable operating costs.
Enterprises must often choose between open source and proprietary technology stacks. This is a nontrivial choice, as we describe in our blog post on the pros and cons of open source technologies. However, with the right guidance and expertise, open source solutions can offer a reliable and cost-effective alternative.
After careful consideration, we offered the Polish Post a plan for redesigning the Envelo platform. The proposed architecture consisted of several building blocks, as shown in Figure 1.
The microservices and their roles
Not included in the chart, BlueGreen deployment is an approach to updates we implemented into the system. It enables seamless updates by continuous alternation between two identical copies of the software while it’s being updated.
Microservices need to communicate for the whole system to function properly. To make sure that every microservice knows what the other is doing, Apache Kafka and Zookeeper coordinate information exchange between them, delaying delivery until the recipient service is ready to accept it.
Keycloak handles authentication. The system is encrypted symmetrically and requires a two-part encryption key for entry. One part is the main password, the other is randomly generated for each file and stored in a separate database. Only a person who can provide both parts can read the files.
All the files are kept in S3 Object Storage. Min.io manages them and performs regular back-ups for quick and easy recovery. Apart from a microservices architecture, which comes with built-in dependencies and container autofixing capabilities, this is another feature that ensures the system’s reliability.
Every application outputs copious amounts of logs. They can be ignored, but only until something goes wrong. When that happens, fixing the problem often requires finding the right log. Elasticsearch, Filebeat and Kibana comprise the ELK stack, an open source suite for easy log aggregation, visualization, and searching.
Results & Benefits
The rearchitected platform provided a 60% improvement in maintenance cost, a significant reduction in technical debt, and massive improvements in scalability. The Polish Post was confident in taking on enterprise clients of any size. In addition, the blue/green deployment scheme ensured continuous availability during releases and upgrades.
In this case, Clurgo's work and expertise resulted in positive impacts for millions of customers and a number of EU's most vital enterprises that rely on postal services as a core component of their business.