Подібну систему так чи інакше розгортатимуть на сервер приблизно такої конфігурації -
https://www.hetzner.com/dedicated-rootserver/ex62-nvmeОпераційна система повинна побачити 16 потоків (8 ядер) і хоча б 64 GB RAM.
А дискова підсистема – SSD/SSD NVME.
При такому сервері REST API досить швидке і на запити типу "отримати картку клієнта за id" або "отримати картку клієнта за номером телефону" або "отримати баланс бонусів за номером телефону" зможе видавати близько 100-200 відповідей на секунду.
Щоб отримати більшу продуктивність, потрібно зробити ряд хитрощів (не обов'язково все відразу).
1. Для необхідних запитів в API зробити прокладку, що кеширує, на Redis / Aerospike / подібній базі. Основна ідея в тому, що з реляційної SQL-бази OneBox складає дані в дуже швидке key-value сховище, до якого запити летять вже по бінарному протоколі і дуже швидко.
2. Виділити багато ядер бази даних. Для цього можливо доведеться використовувати сервер типу
https://www.hetzner.com/dedicated-rootserver/ax101 або
https://www.hetzner.com/dedicated-rootserver/ax161 або винести базу на окремий сервер/кластер (потрібний буде 10GB LINK між серверами).
Якщо зробити пункт 1 і пункт 2 одночасно - я можу сміливо гарантувати 200 000 запитів в секунду практично для будь-якого api endpoint'a. У мене є Hi-Load проект, який віддає 4 000 000 запитів на секунду.
Звичайно, налаштування цієї інфраструктури коштує грошей, тому що це не входить до базового функціоналу OneBox.