Our client is an American luxury fashion retailer. The company has more than 10,000 employees and offers a wide range of accessories, clothing, and other goods.
The company needed to redesign a critical service to increase its durability, scalability, and efficiency, while removing dependencies on the services planned for deprecation. The legacy service needed to be replaced with a new one with no downtime.
We have helped our partner to design the new service architecture, establish the development process, plan and execute the transition to the new version with no downtime, ensuring data consistency and performance metrics.
Initially, the design of the Order-Invoice Kafka Producer was complex, error-prone, and difficult to debug. It consumed 10 types of events, had the algorithm of event joining with the 8-day time frame only, partial DLQ coverage, and often missed events that were tough to identify.
Service performance was limited to 21k of the RTCIM events (main event type) per hour on 12 pods.
In general, OINK v1 suffered from a significant lag (~400). It processed:
First, Zoolatech helped the client to decouple OINK from the system called OMS and created OINK v2, which was completely compatible with version 1. The quality criterion was the inability of downstream systems to recognize RTCIM parcels created by different OINK versions. As a part of decoupling, Zoolatech created the new testing service “comparator,” which compares the RTCIMs generated by version 1 and version 2.
Also, we created a reliable method of redirecting production traffic from Oink version 1 to version 2. The second version of OINK was tested on the production environment in a shadowed mode, and several upstream issues were identified and resolved. During this task, the Zoolatech team worked closely with OMS, Payment, Tax teams (upstream), ERTM (Enterprise Retail Transaction Management), and Sales Audit departments (downstream).
Peak throughput:
Processing: Three pods of OINK v2 equals 12 pods of OINK v1.
Total Memory Usage (RAM): 14.4GB (OINK v2) vs. 60GB (OINK v1) / 12 pods.
We helped our partner to significantly reduce cloud costs.Three pods of OINK v2 perform approximately the same as 12 pods of OINK v1. So, we can either process data faster with the same resources or reduce costs by approximately four times. Memory consumption is 4+ times less than in the previous version, considering the same number of pods.
Zoolatech helped the company to design a new service architecture, establish the development process, plan and execute the transition to the new version with no downtime, ensuring data consistency and performance metrics.
Overall, our partner achieved a more efficient and reliable critical service, leading to cost savings, increased customer satisfaction, and business performance.