Суть проекта

Следующим шагом в сотрудничестве с розничным банком, который ранее заказал новую систему взыскания задолженности, стало внедрение микросервисной архитектуры. На первом этапе разработки системы управления взысканием задолженности для банка мы участвовали в переработке системы интеллектуального набора номера (PDS), основанной на микросервисном подходе. Результатом успешной работы стало наше активное участие в переработке устаревшей архитектуры.

  • системы интеллектуального набора номера (PDS) — переработана
  • Брокерская система — в процессе
  • Система по борьбе с отмыванием денег (AML) — в процессе

Задача

С ростом банка стало очевидно, что монолитный подход оказался контрпродуктивным для некоторых динамичных банковских систем, которые требуют частых изменений. Именно поэтому банк решил, что реализация микросервисной архитектуры будет более практичной.

Это изменение произошло не из-за популярности микросервисов в финансовом и банковском секторе, а из-за некоторых проблем с масштабируемостью систем:

  • Структура была слишком сложной с высоким риском нарушения производительности
  • Обслуживание и разработка новых функций были слишком ресурсозатратными
  • Процесс обучения новых сотрудников был слишком медленным, из чего следовала дорогостоящая замена специалистов

При изменении архитектуры необходимо было учитывать новые проблемы и риски, которые несет микросервисная архитектура. Во-первых, архитектура была более сложной, чем предыдущие решения, используемые для тех же целей. Во-вторых, массовое взаимодействие между микросервисами предоставляло больше возможностей для несанкционированного доступа. В-третьих, эффективность всей системы в значительной степени зависела от того, насколько тщательно она была реализована, что возлагало еще большую ответственность на команду разработки.

Кроме того, микросервисный подход не является «серебряной пулей» и переработка всех банковских систем была бы слишком дорогой и не рациональной. Поэтому, было очень важно приоритизировать потребности.

Решение

В ходе предварительного изучения верхнеуровневой архитектуры банка и существующих систем были приняты во внимание все проблемы. Кроме того, мы были не единственными участниками проекта, что обусловило нашу сферу ответственности:

  • PDS: перестройка старого модуля в микросервисную среду.
  • Брокерская система: проведение системного анализа, разработка функциональных и нефункциональных требований и подключение банковских приложений через микросервисы.
  • Система AML: проведение системного анализа; планируется дальнейшая разработка.

Микросервисная архитектура функционирует на независимых облегченных модулях, которые сгруппированы вокруг определенных функций. Микросервисы в банковских приложениях обмениваются данными через различные совместимые форматы и протоколы. По запросу протоколы затем синхронизируются.

Обновленная система набора номера

PDS была одной из систем, которую заказчик планировал изменить. Так как PDS была частью системы управления задолженностью, которую мы внедряли в очень жесткие и критически важные сроки, планируемый заказчиком микросервисный подход не представлялся возможным из-за отсутствия времени на стабилизацию.

Команда PST Labs изучила альтернативные решения и предложила перестроить уже существующую системную логику в микросервсную среду, что позволило бы в необходимые сроки завершить разработку системы управления задолженностью с минимальными рисками.

Определение оптимального подхода в разработке было трудной задачей, однако это позволило избежать проблем в дальнейшем. После успешного завершения процесса разработки системы набора номера, наши специалисты по тестированию провели стандартные тесты, чтобы убедиться в корректной работе.

Анализ и разработка Брокерской Системы

Брокерская система включает в себя процессы, связанные с различными факторами и внешними источниками данных. Например, получение актуальной информации о бирже зависит от регулярных запросов ряда сторонних сервисов.

Микросервис NewsArticle, который является частью системы, получает информацию о торгах из внутренней базы данных. В свою очередь, база данных получает информацию от сторонних онлайн-сервисов, таких как QUIK, NSD и RU Data. На пути к базе данных фрагменты с информацией проходит через определенную трансформацию. Каждый процесс представляет собой отдельный микросервис, что обеспечивает беспрерывную и безопасную связь.

В процессе разработки мы выявили некоторые недостатки ранее разработанной архитектуры. Чтобы исправить их, команда PST Labs добавила несколько промежуточных микросервисов, которые улучшили рабочие процессы и уменьшили дефекты. На этапе разработки мы также успешно обработали несколько запросов на изменение требований.

Например, доступ к информации о торговле акциями QUIK имеет ограниченное количество доступных подключений. Мы разработали систему сбора запросов и отправки их партиями. Это помогло оптимизировать отправку огромного количества запросов от банковской системы.

Гораздо более сложной задачей было настроить метод непрерывной интеграции (CI / CD) и правильно внедрить инфраструктуру с учетом внутренней политики банка и взаимосвязанности всех систем. Для этого наша команда изучила существующие правила банка и получила все права доступа, необходимые для настройки передачи данных.

Внедрение AML

На этапе изучения системы противодействия отмыванию денег (Anti-Money Laundering) мы работали над функциональными требованиями, которые наши разработчики позже переведут в код и настроят процессы непрерывной интеграции (CI/CD).

Влияние

Реализованные нами архитектурные изменения открыли возможность простого и безопасного внедрения новых функций. Также выбор микросервисной архитектуры оказался более экономичным, чем устаревшая архитектура.

Давайте обсудим Ваш проект