1b.app
Скопійоване посилання -

Критичні навантаження

Яку максимальну кількість API запитів на секунду зможе витримати програмне забезпечення OneBox
Наприклад, одночасно буде запит на інформацію з різних карток клієнтів.
інформації про купівлю або бонуси, документи, продукти.
2 000 000-3 000 000 клієнтів у базі
1000-1500 касових апаратів
1000 000 карток лояльності
100 000 товарів у базі
Оригинальный вопрос доступен на версии: ru

Відповіді:

Подібну систему так чи інакше розгортатимуть на сервер приблизно такої конфігурації - 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.
02.02.2021, 19:36
Как со мной связаться - никак :)
Задавайте вопросы на форуме публично - и я отвечу.
Подробнее - https://1b.app/ru/user/11/
Оригинальный комментарий доступен на версии: ru

Будь ласка, приєднуйтесь до діалогу. Якщо вам є що сказати – будь ласка, напишіть коментар. Для входу потрібний мобільний телефон та смс-код для ідентифікації. Увійти та написати коментар