- Awards
- 2015 Best of Swiss Web Silver āOnline Marketingā
- PHP/Symfony
- Elasticsearch
- RabbitMQ
- Kafka
- Varnishcache
We built M-API, that gathers product data from various sources into one central database and provides a real-time API to query product data. The API handles millions of requests per day and processes tens of thousands of product updates. As an internal API, it is not publicly available.
Key figures
One API for All Product Data
The M-API import system connects to ~40 internal business applications to gather product data for about 1 million products. It then provides that data to many applications that need product information.
A custom made API able to handle several million requests a dayBlazingly Fast Under High Load
The data in M-API is used directly by both public websites and the mobile app, as well as synchronised into other systems like web shops. We optimised the system for speed, and thanks to advanced caching, we can deliver up-to-date information even with long product lists with quick response times. Even under heavy load, with 50,000+ requests per minute, we maintain response times under 50 milliseconds.
How we built a High-Load APIActively Developed for Over a Decade
The first iteration of the application went online after just 6 months. Since then, we have continously deployed new features to production several times a month. We believe that vendor lock-in is not an acceptable business strategy. After 8 years of development, Migros started building up an internal development team to continue maintaining and evolving the M-API.
Here is how we developed the M-API for more than 10 yearsAre you interested in our services?
Letās talk about your project!