Упрощенная схема
Для начала давай верхнеуровнево посмотрим на все модули, а потом погрузимся в каждый кусок по отдельности.
GeoDNS
Данный элемент позволит нашей системе устанавливать соединение с ближайшим сервером биржи
Биржа
Внешняя система, которая высылает котировки по тикерам (акциям)
Data Receiver
Система, которая принимает данные от Биржи, обрабатывает и отправляет дальше в нашу систему
Pub/Sub
Инструмент для агрегации тикеров. Выполняет сразу 2 функции:
- Быстро передает данные от Биржи к Клиенту (так как нет записи на Диск)
- Сохраняет время от времени state, чтобы при подключении/переподключении клиента можно было накатить последний state у tickers
API streaming
Сервис для вычитки инфы из Pub/Sub cluster и доставки к клиенту
Api Gw
В данном случае выполняет несколько функций:
- auth для проверки, что клиент имеет право читать инфу с Биржи
- Перевод с gRPC-Web на gRPC streaming (об этом подробнее поговорим в блоке про API Gw)
LB
Классический LB, который занимается роутингом соединений от клиента до Api Gw