Case

OpenRTB Advertising Platform

Technology Stack:
Infrastructure:
Cloudflare, DigitalOcean, Hetzner, Webzilla
Backend:
Node.js, Express.js, RabbitMQ
Databases:
Clickhouse, MySQL, MongoDB, Redis
Frontend:
React, Material UI, TailwindCSS
Project Overview:
The developed service is an advertising network that integrates with partners through the OpenRTB protocol. It faces the challenge of handling an immense volume of requests - up to 60,000 per second - and delivering responses within a few dozen milliseconds. This performance is achieved through a carefully engineered architecture that balances speed, scalability, and data consistency.
01.
Front-End Servers
Request Management
Front-end servers receive incoming queries from partners. The workload is evenly distributed across these servers. During periods of high demand, the number of front-end servers can be dynamically adjusted. In some cases, the system also limits the volume of processed requests to prioritize higher-value traffic.
Data Caching for Speed
To ensure rapid response times, the critical dataset required for generating correct responses is stored in the server’s memory via Redis. This design choice means that individual query processing on a front-end server takes less than 10 milliseconds. With optimal configuration of nginx (including keep-alive and DNS caching mechanisms), the average total response time to the client is kept under 70 milliseconds, although geographical factors may introduce wide variations.
Logging
After processing each request, two JSON records are created and stored in Redis. These records are periodically (every few seconds) forwarded to the database servers for in-depth analysis and long-term storage.
02.
Database Servers
The primary data store is built on the columnar database system ClickHouse.
High Performance at Scale
This technology enables the storage and efficient querying of massive data volumes - even in tables containing billions of records - with minimal degradation in performance.
Immediate Data Accessibility
ClickHouse permits near-instant availability of data following insertion, eliminating the need for time-consuming reindexing.
Limitations
A notable limitation is the need to insert data in large batches (ideally no fewer than 10,000 records per batch). To meet this requirement, data is first aggregated from multiple front-end servers, segmented according to the relevant database tables, and then inserted as a single batch.
Benefits for Reporting
This architecture not only ensures rapid data flow through the system but also supports the generation of:
Real-Time Reports: Nearly immediate reports (with a maximum delay of one minute) that are critical for operational teams.
Long-Term Analytical Reports: Detailed reports over extensive periods (for example, an annual report) can be generated without risking system overload or incurring long waiting times.
03.
Client Interface Servers
The client interface servers provide a dual-function solution:
Partner Dashboards
They offer dedicated portals for different types of partners, facilitating access to data and insights relevant to their needs.
Operational Reporting Interface
They also include a sophisticated interface for the operations team, featuring:
Real-time reporting with minimal delay
Flexible filtering and grouping options for swift data analysis
Tools that support rapid decision-making across the organization
04.
Additional Support Tools
In addition to the core system components, several auxiliary tools have been developed to enhance system reliability and operational efficiency:
Fraud Monitoring Tool
Generates detailed reports on the proportion of suspicious traffic and, if necessary, automatically blocks critical cases.
Advanced Alert System
Notifies teams of anomalies through a multi-channel approach (including push notifications, messenger messages, SMS, and phone calls). This system supports a multi-tiered escalation process - from responsible specialists up to department and company executives.
Infrastructure Health Monitoring
Continuously tracks key metrics such as memory usage, CPU load, disk performance, and the global availability of front-end servers from strategically critical locations.
Scalable Instance Deployment
Implements mechanisms for the rapid deployment of additional server instances to effectively manage peak load periods.

Other Cases

Jonathan K.
Jonathan K.
CEO
The service is designed to empower media outlets by providing deep insights into the performance of their editorial teams and the engagement levels of their audiences.
Country:
United States
Project:
Content & Behavior Analytics for Media
Team size:
7
Duration:
22 months
Budget:
$420 000
Industry:
Media
Technologies:
Node.js, PHP, Clickhouse, Redshift, Redis, RabbitMQ, React, TailwindCSS
Country:
United States
Project:
Content & Behavior Analytics for Media
Team size:
7
Duration:
22 months
Budget:
$420 000
Industry:
Media
Technologies:
Node.js, PHP, Clickhouse, Redshift, Redis, RabbitMQ, React, TailwindCSS
Lumiveo
Lumiveo
Lumiveo is a fast-growing e-commerce platform specializing in home decor, furniture, and lifestyle accessories. The brand offers a curated selection of items from top manufacturers, combining quality with style. With a growing customer base across Europe, Lumiveo was ready to invest in its UX/UI, branding, and digital strategy to scale.
Country:
Lithuania
Project:
Lumiveo
Team size:
5
Duration:
8 months
Budget:
NDA
Industry:
E-commerce / Home Decor
Technologies:
UI/UX
Country:
Lithuania
Project:
Lumiveo
Team size:
5
Duration:
8 months
Budget:
NDA
Industry:
E-commerce / Home Decor
Technologies:
UI/UX
Pavlo M.
Pavlo M.
CEO
At the beginning, we needed an alerting system to notify us when our critical metrics went beyond normal thresholds. However, throughout our collaboration with Yieldy, we received much, much more. Now, what they have built is the command center for our business, which our team uses 24/7.
Country:
Poland
Project:
iGaming Affiliate Network
Team size:
3
Duration:
17 months
Budget:
$94 000
Industry:
Performance Marketing
Technologies:
Node.js, Express.js, MySQL, Redis, Angular
Country:
Poland
Project:
iGaming Affiliate Network
Team size:
3
Duration:
17 months
Budget:
$94 000
Industry:
Performance Marketing
Technologies:
Node.js, Express.js, MySQL, Redis, Angular
Alex J.
Alex J.
Co-founder
Country:
Cyprus
Project:
OpenRTB Advertising Platform
Team size:
4
Duration:
14 months
Budget:
$192 000
Industry:
AdTech
Technologies:
Node.js, Express.js, nginx, MongoDB, Clickhouse, RabbitMQ, React, Material UI, TailwindCSS
Country:
Cyprus
Project:
OpenRTB Advertising Platform
Team size:
4
Duration:
14 months
Budget:
$192 000
Industry:
AdTech
Technologies:
Node.js, Express.js, nginx, MongoDB, Clickhouse, RabbitMQ, React, Material UI, TailwindCSS

Ready to bring your project to life?

Valeria Dorton
Valeria Dorton
Head of delivery at empat
"
Turn Empat into the go to space where ambitious visions come to life.
Project type
Your application has been accepted.
Our specialists will contact you within 24 hours.
Oops! Something went wrong while submitting the form.
Valeria Dorton
Svitlana Rakova
Head of Sales
Business acceleration starts today.
Leveraging AI to make things done