17
Программная архитектура информационной системы банка, как и
техническая, берет свое начало от программно-аппаратного комплекса Check
Point Software Technologies, обеспечивающего единую бесшовную виртуальную
сеть на всей территории присутствия банка. Между сетевым экраном и
остальным программным обеспечением стоит программная часть сетевого
экрана вэб-приложений и СУБД Imperva, выполняющая функции фильтрации
сетевых запросов к серверам. Основным адресатом запросов, проходящих через
сетевые экраны из внутренних сетей и из сети интернет, является сервер
балансировки сетевой нагрузки, реализованный с помощью вэб сервера NGINX.
Балансировщик нагрузки распределяет обращения между сервером статических
файлов, серверами баз данных, основным и резервным, сервером веб
приложений, сервером аналитической СУБД ClickHouse и сервером
кэширования информации Memcache. Сервер статических файлов отдает в сеть
изображения, документы и другие неизменяемые файлы сайтов и ПО
организации. Сервер статических файлов реализован средствами еще одного
экземпляра вэб сервера NGINX. Сервера баз данных работают под управлением
СУБД MariaDB. Сервер веб приложений обеспечивает работу интерпретаторов
PHP, Python и является средой запуска для исполняемых файлов. К
исполняемым файлам относятся планировщики заданий и микросервисы
обеспечивающие функционирование части бизнес-процессов организации.
Работа планировщиков заданий связана с бизнес-процессами создания и
проверки исполнения коммуникаций с клиентами и между системами банка.
Исполнением коммуникаций занимаются микросервисы реализованные на языке
программирования Go, скомпилированные в исполняемые файлы. Эти
приложения взаимодействуют с очередями сообщений, сервером электронной
почты и сервисом отправки смс сообщений.
Еще одной функцией сервера вэб приложений является обеспечение
работы мультипротокольного брокера очередей сообщений RabbitMQ, за
которым располагаются остальные информационные системы банка, не
рассматриваемые в рамках данной работы детально, взаимодействие с данными
системамами будет ограничиваться отправкой сообщений в очередь брокера и
получением сообщений от данных систем из очереди. На персональных