Данная система предоставляет функции для управления счетами банковских клиентов.
Система предоставляется следующие функции:
- Взаимодействие с клиентами через REST API.
- Создание аккаунтов клиентов.
- Создание и просмотр счетов у клиента для определенной валюты.
- Пополнение счета.
- Перевод средств между счетами одного клиента и между счетами клиентов с конвертацией валюты.
- Отправка сообщений об изменении счетов через WebSocket.
- Отправка уведомлений при изменении счетов.
Данная система имеет микросервисную архитектуру и состоит из следующих сервисов:
- Сервис accounts выполняет запросы по обработке счетов и аккаунтов клиентов.
- Сервис converter выполняет конвертацию валюты по запросам от accounts, которые осуществяются по gRPC.
- Сервис rates выдает актуальный курс валют для converter по REST API.
- Сервис keycloak авторизует запросы от converter к rates.
- RDBMS хранит данные о клиентах.
- Redis выполняет функцию поддержания идемпотентности запросов изменения счетов клиентов.
