RU2781749C1 - System for processing traffic of transaction data of payment systems - Google Patents
System for processing traffic of transaction data of payment systems Download PDFInfo
- Publication number
- RU2781749C1 RU2781749C1 RU2021115216A RU2021115216A RU2781749C1 RU 2781749 C1 RU2781749 C1 RU 2781749C1 RU 2021115216 A RU2021115216 A RU 2021115216A RU 2021115216 A RU2021115216 A RU 2021115216A RU 2781749 C1 RU2781749 C1 RU 2781749C1
- Authority
- RU
- Russia
- Prior art keywords
- processing
- data
- server
- messages
- servers
- Prior art date
Links
- 230000003993 interaction Effects 0.000 claims abstract description 7
- 238000000034 method Methods 0.000 claims description 20
- 230000000694 effects Effects 0.000 abstract description 3
- 239000000126 substance Substances 0.000 abstract 1
- 238000005516 engineering process Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000003287 optical Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 241001025261 Neoraja caerulea Species 0.000 description 1
- 241000287219 Serinus canaria Species 0.000 description 1
- 229930002945 all-trans-retinaldehyde Natural products 0.000 description 1
- 230000003190 augmentative Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000005755 formation reaction Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000002085 persistent Effects 0.000 description 1
- 230000002207 retinal Effects 0.000 description 1
- 235000020945 retinal Nutrition 0.000 description 1
- 239000011604 retinal Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Abstract
Description
ОБЛАСТЬ ТЕХНИКИFIELD OF TECHNOLOGY
[0001] Настоящее техническое решение, в общем, относится к области вычислительной обработки данных, а в частности, к системам обработки трафика транзакционных данных платежных систем.[0001] The present technical solution, in general, relates to the field of computational data processing, and in particular, to systems for processing transaction data traffic of payment systems.
УРОВЕНЬ ТЕХНИКИBACKGROUND OF THE INVENTION
[0002] Обмен деньгами в наше время стал значительно проще для всех сторон: покупателей, продавцов, банков и даже для государственных структур. Благодаря переходу денежных средств из физического объекта в информационный продукт все происходит за секунды, поэтому общая денежная масса увеличивается. Уже не надо пересчитывать купюры, заботиться, чтобы они были в кармане в нужное время. Все происходит через каналы связи, а название этой глобальной системе - процессинг платежных карт. Поскольку он может быть банковским и небанковским, то охватывает практически все сферы, где фигурируют финансы.[0002] The exchange of money in our time has become much easier for all parties: buyers, sellers, banks and even government agencies. Thanks to the transfer of money from a physical object to an information product, everything happens in seconds, so the total money supply increases. You no longer need to count banknotes, take care that they are in your pocket at the right time. Everything happens through communication channels, and the name of this global system is the processing of payment cards. Since it can be banking and non-banking, it covers almost all areas where finance appears.
[0003] Процессинг - это процесс обработки информации, которая существует в момент совершения денежной операции. Иными словами, это технология «доставки» денег от покупателя до продавца. За привычными действиями по передаче и приему платежей стоит сложная система, которая связывается с различными участниками, проверяет, передает и фиксирует данные. Поскольку платежи каждый человек производит по несколько раз в день, а предприятия производят тысячи и миллионы операций, то процессинговые системы представляют из себя сложный, многофункциональный механизм.[0003] Processing is the process of processing information that exists at the time of the monetary transaction. In other words, it is a technology of "delivery" of money from the buyer to the seller. Behind the usual actions of sending and receiving payments is a complex system that communicates with various participants, checks, transmits and captures data. Since each person makes payments several times a day, and enterprises perform thousands and millions of transactions, processing systems are a complex, multifunctional mechanism.
[0004] Такие системы широко известны из уровня техники, например, фронтальный компонент SmartVista Front - End https://wvvw.bpcbt.coni/ru/smartvista-solutions/ обладает возможностью принимать и обрабатывать трафик от платежных систем (MasterCard, Visa, МИР, JCB, UPI, Amex) с последующей передачей на авторизацию в процессинговое решение, производящее холдирование и расчет. Также компонент обладает возможность принимать и обрабатывать трафик от эквайринговых терминалов (Банкоматы, POS, Киоски для произведения оплат и проведения инкассации, платежные шлюзы) с последующей передачей на авторизацию в Международные платежные сети или в процессинговое решение банка для проведения авторизации.[0004] Such systems are widely known from the prior art, for example, the front component SmartVista Front - End https://wvvw.bpcbt.coni/en/smartvista-solutions/ has the ability to receive and process traffic from payment systems (MasterCard, Visa, MIR , JCB, UPI, Amex) with subsequent transfer for authorization to the processing solution that performs holding and settlement. The component also has the ability to receive and process traffic from acquiring terminals (ATMs, POS, Kiosks for making payments and collection, payment gateways) with subsequent transfer for authorization to International payment networks or to the bank's processing solution for authorization.
[0005] Недостатком существующих решений в данной области является низкая отказоустойчивость и скорость масштабирования систем.[0005] The disadvantage of existing solutions in this area is the low fault tolerance and scalability of systems.
СУЩНОСТЬ ТЕХНИЧЕСКОГО РЕШЕНИЯESSENCE OF THE TECHNICAL SOLUTION
[0006] Заявленное техническое решение предлагает новый подход в области обработки трафика транзакционных данных платежных систем.[0006] The claimed technical solution offers a new approach in the field of processing transaction data traffic of payment systems.
[0007] Решаемой технической проблемой или технической задачей является создание новой системы обработки трафика транзакционных данных платежных систем, обладающей высокой степенью отказоустойчивости.[0007] The technical problem or challenge to be solved is the creation of a new system for processing traffic of transactional data of payment systems, which has a high degree of fault tolerance.
[0008] Основным техническим результатом, достигающимся при решении вышеуказанной технической проблемы, является повышение отказоустойчивости и скорости масштабирования системы.[0008] The main technical result achieved in solving the above technical problem is to increase the fault tolerance and scalability of the system.
[0009] Заявленный результат достигаются за счет системы обработки трафика транзакционных данных платежных систем, содержащей взаимосвязанные между собой два ЦОД каждый из которых содержит:[0009] The claimed result is achieved through a system for processing transactional data traffic of payment systems, containing two interconnected data centers, each of which contains:
по меньшей мере один сервер обработки и балансировки входящего трафика, выполненный с возможностью: at least one server for processing and balancing incoming traffic, configured to:
получения и отправки сообщений при взаимодействии с внешними потребителями; receiving and sending messages when interacting with external consumers;
передачи сообщений между внутренними компонентами системы во внутреннем формате; passing messages between the internal components of the system in an internal format;
постановки в очередь процессов компонентов системы в соответствии с указанным получателем; queuing the processes of system components in accordance with the specified recipient;
логирования операций и последующей отправки сообщений в распределенный брокер сообщений; logging operations and subsequent sending of messages to a distributed message broker;
управления таймерами обработки операций между серверами; managing timers for processing operations between servers;
по меньшей мере один сервер обработки, выполненный с возможностью: at least one processing server configured to:
переформатирования и отправки сообщений на маршрутизацию во внешнюю систему; reformatting and sending messages for routing to an external system;
взаимодействия с защищенным аппаратным хранилищем данных (HSM), управления криптографическими операциями и выполнения криптографических проверок; interacting with a secure hardware data store (HSM), managing cryptographic operations and performing cryptographic checks;
копирования данных между ЦОД; copying data between data centers;
преобразования сообщений в заданный формат сетевого обмена; converting messages into a given network exchange format;
постановки в очередь процессов компонентов системы в соответствии с указанным получателем; queuing the processes of system components in accordance with the specified recipient;
логирования операций и последующей отправки сообщений в распределенный брокер сообщений; logging operations and subsequent sending of messages to a distributed message broker;
сценарной обработки сообщений и контроля исполнения сценариев, включающих по меньшей мере контроль тайминга отправки сообщений и проверку дупликации данных; scripted processing of messages and control of execution of scripts, including at least control of the timing of sending messages and checking for data duplication;
идентификации банковских карт и маршрутизации сообщений в соответствии с идентифицированными данными банковских карт; identification of bank cards and routing of messages in accordance with the identified data of bank cards;
установки признака необходимости проверки транзакции, а также отправки транзакции на проверку в систему фрод мониторинга; setting the sign of the need to verify the transaction, as well as sending the transaction for verification to the fraud monitoring system;
управления таймерами обработки сообщений между серверами и компонентами системы; managing message processing timers between servers and system components;
реализации и отмен сценариев обработки операций эмитента; implementation and cancellation of scenarios for processing the issuer's transactions;
проверки объектов транзакции на ограничения; checking transaction objects for restrictions;
по меньшей мере один сервер взаимодействия с внешними системами, выполненный с возможностью: at least one server for interaction with external systems, configured to:
обмена данными с внешними системами; data exchange with external systems;
аутентификации и авторизации пользователя; user authentication and authorization;
распределенный брокер сообщений, выполненный с возможностью передачи данных между компонентами системы; a distributed message broker configured to transfer data between system components;
по меньшей мере один сервер долгосрочного хранения данных; at least one long-term storage server;
по меньшей мере один сервер оперативного хранения данных; at least one online data storage server;
по меньшей мере один сервер для хранения исторических логов системы. at least one server for storing historical system logs.
[0010] В одном из частных вариантов осуществления сервер обработки и балансировки входящего трафика выполнен с возможностью обработки сетевого трафика от внешних систем и генерации идентификатора операции.[0010] In one of the private embodiments, the incoming traffic processing and balancing server is configured to process network traffic from external systems and generate an operation identifier.
[0011] В другом частном варианте осуществления сервер обработки, выполнены с возможностью репликации данных в виде двух встречных независимых потоков.[0011] In another particular embodiment, the processing server is configured to replicate data in the form of two opposite independent streams.
[0012] В другом частном варианте осуществления каждый сервер системы дополнительно выполнен с возможностью передачи метрики во внешние системы мониторинга.[0012] In another particular embodiment, each server of the system is additionally configured to transmit metrics to external monitoring systems.
ОПИСАНИЕ ЧЕРТЕЖЕЙDESCRIPTION OF THE DRAWINGS
[0013] Признаки и преимущества настоящего изобретения станут очевидными из приводимого ниже подробного описания изобретения и прилагаемых чертежей, на которых:[0013] The features and advantages of the present invention will become apparent from the following detailed description of the invention and the accompanying drawings, in which:
[0014] Фиг. 1 иллюстрирует общую схему заявленной системы обработки трафика транзакционных данных платежных систем.[0014] FIG. 1 illustrates the general scheme of the claimed system for processing transaction data traffic of payment systems.
[0015] Фиг. 2 иллюстрирует пример вычислительного устройства, на базе которого могут быть реализованы сервера системы.[0015] FIG. 2 illustrates an example of a computing device on which the servers of the system can be implemented.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯIMPLEMENTATION OF THE INVENTION
[0016] Система обработки трафика транзакционных данных платежных систем предназначена для взаимодействия с электронными каналами обслуживания и поступающими из них операциями.[0016] The payment systems transaction data traffic processing system is designed to interact with electronic service channels and transactions coming from them.
[0017] Заявленное решение поддерживает возможность работы со следующими каналами обслуживания:[0017] The claimed solution supports the ability to work with the following service channels:
Платежными системами (Mastercard, VISA, МИР, CUP, JCB);Payment systems (Mastercard, VISA, MIR, CUP, JCB);
Эквайринговыми каналами (POS-терминалами, концентраторами по платежам и электронной коммерции, банкоматным концентратором и банкоматами).Acquiring channels (POS-terminals, concentrators for payments and e-commerce, ATM concentrator and ATMs).
[0018] При этом заявленная система обеспечивает следующий функционал:[0018] In this case, the claimed system provides the following functionality:
Преобразование форматов платежных сетей во внутренний формат, а также поддержку форматов работы с эквайринговыми терминалами, концентраторами эквайринговых терминалов, платежными шлюзами;Converting payment network formats to an internal format, as well as supporting formats for working with acquiring terminals, concentrators of acquiring terminals, payment gateways;
Исполнение сценариев бизнес-логики и маршрутизации сообщений по каналам; Обеспечение доступности сервиса не ниже 99,99%.Execution of scripts for business logic and message routing through channels; Ensuring service availability of at least 99.99%.
[0019] Обеспечение высокой скорости и простоты масштабируемости (пропорциональным добавлением серверов без дополнительных работ по подготовке и переносу данных). Это достигается за счет того, что компоненты системы выступают как отдельные типовые единицы и путем увеличения количества таких единиц горизонтально масштабируется система. Благодаря подключению к единым серверам для хранения данных, все настройки и обрабатываемая информация автоматически оказывается на вновь подключенных компонентах системы.[0019] Ensuring high speed and ease of scalability (proportional addition of servers without additional work on preparing and transferring data). This is achieved due to the fact that the components of the system act as separate typical units, and by increasing the number of such units, the system scales horizontally. Thanks to the connection to single servers for data storage, all settings and processed information automatically appear on the newly connected system components.
[0020] Настройку бизнес функционала без остановки работоспособности системы;[0020] Setting up business functionality without stopping the system;
Работы с сетями уровня L3;Work with L3 level networks;
Поддержку работы на серверах архитектуры Х86;Support for work on X86 architecture servers;
Поддержку работы с несколькими центрами обработки данных (ЦОД) в режиме Active-Active (режим функционирования системы, в котором два плеча функционируют в параллели и одновременно обрабатывают трафик от платежных сетей, также осуществляется переключение между плечами системы при выходе любого из них из строя);Support for working with several data processing centers (DPC) in Active-Active mode (system operation mode in which two arms operate in parallel and simultaneously process traffic from payment networks, switching between system arms is also carried out when any of them fails);
Поддержку функционала рабочего места пользователя системы посредством WEB-интерфейса с ролевой моделью.Support for the functionality of the system user's workplace through a WEB-interface with a role model.
[0021] В заявленной системе реализован ряд решений, направленных на достижение поставленных задач.[0021] The claimed system implements a number of solutions aimed at achieving the goals.
[0022] Введены равнозначные рабочие узлы, применено хранение оперативной информации в NoSQL (базы данных типа «ключ-значение»).[0022] Equivalent work nodes have been introduced, storage of operational information in NoSQL (key-value databases) has been applied.
[0023] Базы данных NoSQL обладают следующими свойствами:[0023] NoSQL databases have the following properties:
базовая доступность (англ. basic availability) - каждый запрос гарантированно завершается (успешно или безуспешно);basic availability - each request is guaranteed to complete (successfully or unsuccessfully);
гибкое состояние (англ. soft state) - состояние системы может изменяться со временем, даже без ввода новых данных, для достижения согласования данных;soft state - the state of the system can change over time, even without the introduction of new data, to achieve data consistency;
согласованность в конечном счете (англ. eventual consistency) - данные могут быть некоторое время рассогласованы, но приходят к согласованию через некоторое время; отсутствие зависимости от типов хранилищ;eventual consistency - data may be inconsistent for some time, but come to agreement after a while; no dependence on storage types;
линейная масштабируемость (добавление процессоров увеличивает производительность).linear scalability (adding processors increases performance).
[0024] Введено долговременное хранилище на шардированной базе данных на основе технологии Oracle Sharding, с использованием механизма репликации, для поддержания возможности системы работать в режиме Active-Active.[0024] Introduced long-term storage on a sharded database based on Oracle Sharding technology, using a replication mechanism, to maintain the system's ability to operate in Active-Active mode.
[0025] В решении применен механизм работы с описанием бизнес-логики работы приложения в декларативном стиле на базе скриптового языка (Lua - мультипарадигменный язык программирования) для обеспечения гибкости настройки исполнения бизнес-сценариев без остановки системы и возможности применения канареечных релизов для отработки новых бизнес-функций на ограниченном объеме и нагрузке.[0025] The solution uses a mechanism for describing the business logic of the application in a declarative style based on a scripting language (Lua is a multi-paradigm programming language) to provide flexibility in configuring the execution of business scenarios without stopping the system and the possibility of using canary releases to develop new business functions on a limited scope and load.
[0026] Также в системе используется BGP протокол динамической маршрутизации, что обеспечивает работу с сетями уровня L3.[0026] The system also uses the BGP dynamic routing protocol, which ensures operation with L3 networks.
[0027] Повышенная отказоустойчивость системы достигается за счет того, что система разделена на два параллельно работающих ЦОД, выполняющих синхронно все функции. Благодаря подключению к единым серверам хранения данных и реализации функции репликации данных между ЦОД, при отказе одного из компонентов, система продолжает работать в прежнем режиме без сбоев и потери данных. Также данная архитектура позволяет без отключения всей системы проводить модернизацию компонентов или наращивать их количество.[0027] Increased fault tolerance of the system is achieved due to the fact that the system is divided into two parallel data centers that perform all functions synchronously. Thanks to the connection to single storage servers and the implementation of the function of data replication between data centers, if one of the components fails, the system continues to operate in the same mode without failures and data loss. Also, this architecture allows, without shutting down the entire system, to upgrade components or increase their number.
[0028] На Фиг. 1 представлена общая схема заявленной системы обработки трафика транзакционных данных платежных систем (100).[0028] In FIG. 1 shows a general scheme of the claimed system for processing transaction data traffic of payment systems (100).
[0029] Заявленная система (100) представляет собой два параллельно работающих взаимосвязанных центра обработки данных каждый из которых содержит, по меньшей мере один сервер обработки и балансировки входящего трафика (200), по меньшей мере один сервер обработки (900), по меньшей мере один сервер долгосрочного хранения данных (600), по меньшей мере один сервер оперативного хранения данных (700) по меньшей мере один сервер взаимодействия с внешними системами (400), распределенный брокер сообщений (500), по меньшей мере один сервер для хранения исторических логов (800). Все компоненты системы связаны между собой каналами для передачи данных.[0029] The claimed system (100) is two parallel interconnected data processing centers, each of which contains at least one server for processing and balancing incoming traffic (200), at least one processing server (900), at least one long-term data storage server (600), at least one online data storage server (700), at least one server for interaction with external systems (400), distributed message broker (500), at least one server for storing historical logs (800 ). All components of the system are interconnected by channels for data transmission.
[0030] Сервера обработки и балансировки входящего трафика (200) предназначены для балансировки входящего трафика в зависимости от нагрузки и доступности серверов приложений в рамках нескольких цодов.[0030] Incoming traffic processing and balancing servers (200) are designed to balance incoming traffic depending on the load and availability of application servers within several data centers.
[0031] Сервера обработки и балансировки входящего трафика (200) выполнены с возможностью передачи сообщений между внутренними компонентами системы во внутреннем формате.[0031] The incoming traffic processing and balancing servers (200) are configured to transfer messages between the internal components of the system in an internal format.
[0032] Сервера (200) осуществляют: подключение к внешним системам, открытие логического подключения, закрытие логического подключения, обработку сетевого трафика от внешних систем, отправку сообщений внешним системам, генерацию идентификатора транзакционной операции.[0032] Servers (200) perform: connecting to external systems, opening a logical connection, closing a logical connection, processing network traffic from external systems, sending messages to external systems, generating a transaction ID.
[0033] Также сервера (200) выполнены с возможностью постановки в очередь процессов компонентов системы в соответствии с указанным получателем.[0033] Also, the servers (200) are configured to queue the processes of the system components in accordance with the specified recipient.
[0034] Сервера (200) обрабатывают входящие сообщения из очереди и отправляют сообщения на обработку в очередь процессов компонентов системы в соответствии с указанным получателем.[0034] Servers (200) process incoming messages from the queue and send messages for processing to the process queue of the system components in accordance with the specified recipient.
[0035] Сервера (200) осуществляют логирование операций и отправку сообщений в распределенный брокер сообщений (500).[0035] Servers (200) log operations and send messages to a distributed message broker (500).
[0036] Каждый сервер системы (100) пишет свой собственный log файл, который хранится в локальном каталоге сервера (800). Запись лога ведется построчно. Объем выводимых в лог данных задается настройками сервера.[0036] Each server of the system (100) writes its own log file, which is stored in the local directory of the server (800). The log is written line by line. The amount of data output to the log is set by the server settings.
[0037] С заданной периодичностью локальные файлы логов выделяются в отдельный файл и архивируются на отдельный сервер (800).[0037] With a given frequency, local log files are allocated to a separate file and archived to a separate server (800).
[0038] Параллельно с основной записью лога, сообщения отмеченные меткой AUDIT, записываются в локальную очередь /csaudit серверов (200). Сервера (200) при появлении сообщения в очереди /csaudit вычитывают его и преобразуют в формат json.[0038] In parallel with the main log entry, messages marked with the AUDIT tag are written to the servers local queue /csaudit (200). Servers (200), when a message appears in the /csaudit queue, read it and convert it to json format.
[0039] Преобразованное сообщение отправляется в распределенный брокер сообщений (500). После передачи сообщения в распределенный брокер сообщений (500) сообщение становится доступным для просмотра в интерфейсах системы.[0039] The transformed message is sent to a distributed message broker (500). After the message is sent to the distributed message broker (500), the message becomes available for viewing in the system interfaces.
[0040] Сервера (200) осуществляют управление таймерами обработки операций между серверами. При попадании операции в систему, взводится таймер, который определяет временной интервал активности операции в системе. Сервера (200) выполнены с возможностью взведения таймера обработки операций между серверами и остановки таймера в случае исполнения операции системой.[0040] Servers (200) manage inter-server transaction processing timers. When an operation enters the system, a timer is set, which determines the time interval for the activity of the operation in the system. Servers (200) are configured to start a timer for processing transactions between servers and stop the timer if the operation is executed by the system.
[0041] Сервера обработки (900) выполнены с возможностью переформатирования и отправки сообщений на маршрутизацию во внешнюю систему.[0041] Processing servers (900) are configured to reformat and send messages for routing to an external system.
[0042] Сервера (900) обеспечивают взаимодействие с защищенным аппаратным хранилищем данных (HSM) и управление криптографическими операциями. Сервера обработки (900) осуществляют управление правилами работы с HSM, подключение к HSM, шифрование и дешифровку сообщений и данных в сообщениях, контроль подключения к HSM, разбор разных типов сообщений (запросов), формирование команд к устройствам (смена сетевых сессионных ключей типа Key Pin Encryption, подпись команды эмитентского скрипта, шифрование команды эмитентского скрипта), отправка команд к устройству HSM, прием ответов на команду от устройства HSM.[0042] Servers (900) provide interaction with secure hardware storage (HSM) and control of cryptographic operations. Processing servers (900) manage the rules for working with the HSM, connect to the HSM, encrypt and decrypt messages and data in messages, control the connection to the HSM, parse various types of messages (requests), generate commands to devices (changing network session keys such as Key Pin Encryption, Emitter Script Command Signing, Emitter Script Command Encryption), sending commands to the HSM device, receiving command responses from the HSM device.
[0043] Также сервера обработки (900) обеспечивают копирование данных между ЦОД. Репликация - механизм синхронизации содержимого нескольких копий объекта (например, содержимого базы данных). Репликация - это процесс, под которым понимается копирование данных из одного источника на другой (между ЦОД). Данная функция обеспечивает синхронизацию двух параллельно работающих ЦОД, что позволяет при отказе какого-либо компонента в системе сохранить работоспособность всей системы. Также при необходимости модификации системы, данная возможность позволяет перевести весь функционал на один ЦОД, пока во втором ЦОД производится замена оборудования.[0043] Also, the processing servers (900) provide data copying between data centers. Replication is a mechanism for synchronizing the contents of multiple copies of an object (for example, the contents of a database). Replication is a process that refers to copying data from one source to another (between data centers). This function ensures the synchronization of two data centers operating in parallel, which allows, in the event of a failure of any component in the system, to maintain the operability of the entire system. Also, if it is necessary to modify the system, this feature allows you to transfer all the functionality to one data center, while the equipment is being replaced in the second data center.
[0044] Сервера (900) осуществляют преобразование сообщений в заданный формат сетевого обмена (преобразование сообщений из международных платежных систем (МПС) (Mastercard, Visa, Мир и др.) во внутренний формат системы, а также преобразование ответного сообщения системы в формат МПС).[0044] Servers (900) convert messages into a given network exchange format (conversion of messages from international payment systems (IPS) (Mastercard, Visa, Mir, etc.) into the internal format of the system, as well as converting the response message of the system into the MPS format) .
[0045] Сервера (900) выполнены с возможностью постановки в очередь процессов компонентов системы в соответствии с указанным получателем. Сервера (900) обрабатывают входящие сообщения из очереди и отправляют сообщения на обработку в очередь процессов компонентов в соответствии с указанным получателем.[0045] The servers (900) are configured to queue the processes of the system components in accordance with the specified recipient. Servers (900) process incoming messages from the queue and send messages for processing to the component process queue according to the specified recipient.
[0046] Сервера обработки (900) выполняют логирование операций с последующей отправкой сообщений в распределенный брокер сообщений (500). Сервера (900) осуществляют: разбор файлов-логов процессов, получение сообщений от компонентов системы, отправку полученных сообщений в распределенный брокер сообщений (500).[0046] Processing servers (900) perform logging of operations with the subsequent sending of messages to a distributed message broker (500). Servers (900) perform: parsing process log files, receiving messages from system components, sending received messages to a distributed message broker (500).
[0047] Каждый компонент системы пишет свой собственный log файл, который хранится в локальном каталоге сервера. Запись лога ведется построчно. При этом объем выводимых в лог данных задается настройками сервера. С заданной периодичностью локальные файлы логов выделяются в отдельный файл и архивируются на сервер для хранения исторических логов системы (800). Параллельно с основной записью лога, сообщения отмеченные меткой AUDIT, записываются в локальную очередь /csaudit сервера. При появлении сообщения в очереди /csaudit сервера (900) вычитывает его и преобразуют в формат json. Преобразованное сообщение отправляется в распределенный брокер сообщений (500). После передачи сообщения в брокер сообщений (500), оно становится доступным для просмотра в интерфейсах системы.[0047] Each component of the system writes its own log file, which is stored in the local directory of the server. The log is written line by line. In this case, the amount of data output to the log is set by the server settings. With a specified frequency, local log files are separated into a separate file and archived to the server to store historical system logs (800). In parallel with the main log entry, messages marked with the AUDIT tag are written to the server's local /csaudit queue. When a message appears in the server's /csaudit queue (900), it reads it and converts it to json format. The transformed message is sent to the distributed message broker (500). After the message is sent to the message broker (500), it becomes available for viewing in the system interfaces.
[0048] Сервера (900) выполняют сценарную обработку сообщений и контроль исполнения сценариев, включающий, по меньшей мере контроль тайминга отправки сообщений и проверку дупликации данных.[0048] Servers (900) perform message scripting and script execution control, including at least control of message sending timing and data duplication checking.
[0049] Сервера (900) выполнены с возможностью идентификации банковских карт и маршрутизации сообщений в соответствии с идентифицированными данными банковских карт. Сервера (900) обеспечивают проверку принадлежности банковских карт относительно справочника Bank Identification Number (BIN), выбор получателя сообщения, возврат сообщения на обработку в систему.[0049] The servers (900) are configured to identify bank cards and route messages in accordance with the identified bank card data. The servers (900) ensure that bank cards belong to the Bank Identification Number (BIN) directory, select the recipient of the message, and return the message to the system for processing.
[0050] Сервера (900) выполнены с возможностью установки признака необходимости проверки транзакции, а также отправки транзакции на проверку в систему фрод мониторинга. Система фрод мониторинга, предназначенная для оценки финансовых транзакций в Интернете на предмет подозрительности с точки зрения мошенничества и предлагающая рекомендации по их дальнейшей обработке.[0050] Servers (900) are configured to set the sign of the need to verify the transaction, as well as send the transaction for verification to the fraud monitoring system. A fraud monitoring system designed to evaluate financial transactions on the Internet for suspicion of fraud and offer recommendations for their further processing.
[0051] Сервера (900) осуществляют управление таймерами обработки операций между серверами. При попадании операции в систему, взводится таймер, который определяет временной интервал активности операции в системе. Сервера (900) выполнены с возможностью взведения таймера обработки операций между серверами и остановки таймера в случае исполнения операции системой.[0051] Servers (900) manage inter-server transaction processing timers. When an operation enters the system, a timer is set, which determines the time interval for the activity of the operation in the system. Servers (900) are configured to start a timer for processing operations between servers and stop the timer in case the operation is executed by the system.
[0052] Сервера (900) выполнены с возможностью реализации и отмен сценариев обработки операций эмитента. Сервера (900) осуществляют логирование действий, кеширование правил автоматической досылки сообщений, проверку соответствия параметров сообщения параметрам правил автоматической досылки сообщений, формирование сообщений автоматической досылки, ведение счетчиков автоматической досылки.[0052] Servers (900) are configured to implement and cancel scripts for processing issuer transactions. Servers (900) perform logging of actions, caching of automatic message forwarding rules, check of correspondence between message parameters and parameters of automatic message forwarding rules, formation of automatic forwarding messages, maintenance of automatic forwarding counters.
[0053] Сервера (900) выполнены с возможностью проверки объектов транзакции на ограничения (проверка суммы транзакции, проверка контрагента на ограничения и т.д.). Сервера (900) осуществляют: проверку объектов транзакций в стоп листах, а также осуществляет информирование о результатах проверки.[0053] The servers (900) are configured to check the transaction objects for restrictions (checking the amount of the transaction, checking the counterparty for restrictions, etc.). Servers (900) carry out: checking of transaction objects in stop lists, and also informing about the results of checking.
[0054] Сервера взаимодействия с внешними системами (400) осуществляют взаимодействия с внешними системами и выполнены с возможностью обмена данными с внешними системами, аутентификации и авторизации пользователя системы.[0054] Servers for interaction with external systems (400) interact with external systems and are configured to exchange data with external systems, authenticate and authorize a system user.
[0055] Распределенный брокер сообщений (500) выполнен с возможностью передачи данных между компонентами системы (100) и реализован в виде сервера.[0055] The distributed message broker (500) is configured to transfer data between system components (100) and is implemented as a server.
[0056] Сервера долгосрочного хранения данных (600).[0056] Long term storage servers (600).
Построенные на технологии Oracle sharding, эти сервера хранят транзакционные настроечные данные, справочники, а также данные о выполненных транзакциях.Built on Oracle sharding technology, these servers store transactional configuration data, directories, and completed transactions.
[0057] Сервера оперативного хранения данных (700).[0057] Online storage servers (700).
Построенные на продукте Apache Ignite (компания GridGain), сервера (700), необходимы для хранения оперативных данных, которые используются для обработки входящего/исходящего трафика. Эти оперативные данные включают в себя: справочники, промежуточные шаги транзакции.Built on the Apache Ignite product (GridGain company), servers (700) are needed to store operational data that is used to process incoming / outgoing traffic. This operational data includes: directories, intermediate steps of the transaction.
[0058] Сервера для хранения исторических логов системы (800). Все компоненты системы (100) пишут лог и отправляют его на сервер хранения исторических логов системы (800).[0058] Servers for storing historical system logs (800). All system components (100) write a log and send it to the system's historical log storage server (800).
[0059] Кроме того, сервер обработки и балансировки входящего трафика (200) выполнен с возможностью обработки сетевого трафика от внешних систем и генерации идентификатора операции.[0059] In addition, the incoming traffic processing and balancing server (200) is configured to process network traffic from external systems and generate an operation ID.
[0060] Сервер обработки (900), выполнен с возможностью репликации данных в виде двух встречных независимых потоков.[0060] The processing server (900) is configured to replicate data in the form of two opposite independent streams.
[0061] Каждый сервер системы дополнительно выполнен с возможностью передачи метрики во внешние системы мониторинга.[0061] Each server of the system is further configured to transmit the metric to external monitoring systems.
[0062] На Фиг. 5 представлен пример вычислительного устройства, на базе которого могут быть реализованы сервера системы (100).[0062] In FIG. 5 shows an example of a computing device on the basis of which the servers of the system (100) can be implemented.
[0063] В общем случае, вычислительное устройство (300) содержит объединенные общей шиной информационного обмена один или несколько процессоров (301), средства памяти, такие как ОЗУ (302) и ПЗУ (303), интерфейсы ввода/вывода (304), устройства ввода/вывода (1105), и устройство для сетевого взаимодействия (306).[0063] In general, the computing device (300) comprises one or more processors (301), memory devices such as RAM (302) and ROM (303), input/output interfaces (304), devices input/output (1105), and a device for networking (306).
[0064] Процессор (301) (или несколько процессоров, многоядерный процессор и т.п.) может выбираться из ассортимента устройств, широко применяемых в настоящее время, например, таких производителей, как: Intel™, AMD™, Apple™, Samsung Exynos™, MediaTEK™, Qualcomm Snapdragon™ и т.п. Под процессором или одним из используемых процессоров в устройстве (300) также необходимо учитывать графический процессор, например, GPU NVIDIA или Graphcore, тип которых также является пригодным для полного или частичного выполнения исполнения серверов системы (100), а также может применяться для обучения и применения моделей машинного обучения в различных информационных системах.[0064] The processor (301) (or multiple processors, multi-core processor, etc.) can be selected from a range of devices currently widely used, for example, manufacturers such as: Intel™, AMD™, Apple™, Samsung Exynos ™, MediaTEK™, Qualcomm Snapdragon™, etc. Under the processor or one of the processors used in the device (300), it is also necessary to take into account the graphics processor, for example, NVIDIA GPU or Graphcore, the type of which is also suitable for full or partial execution of the system servers (100), and can also be used for training and application machine learning models in various information systems.
[0065] ОЗУ (302) представляет собой оперативную память и предназначено для хранения исполняемых процессором (301) машиночитаемых инструкций для выполнения необходимых операций по логической обработке данных. ОЗУ (302), как правило, содержит исполняемые инструкции операционной системы и соответствующих программных компонент (приложения, программные модули и т.п.). При этом в качестве ОЗУ (302) может выступать доступный объем памяти графической карты или графического процессора.[0065] RAM (302) is a random access memory and is designed to store machine-readable instructions executable by the processor (301) to perform the necessary data logical processing operations. The RAM (302) typically contains the executable instructions of the operating system and associated software components (applications, program modules, etc.). In this case, the RAM (302) may be the available memory of the graphics card or graphics processor.
[0066] ПЗУ (303) представляет собой одно или более устройств постоянного хранения данных, например, жесткий диск (HDD), твердотельный накопитель данных (SSD), флэш-память (EEPROM, NAND и т.п.), оптические носители информации (CD-R/RW, DVD-R/RW, BlueRay Disc, MD) и др.[0066] A ROM (303) is one or more persistent storage devices such as a hard disk drive (HDD), a solid state drive (SSD), flash memory (EEPROM, NAND, etc.), optical storage media ( CD-R/RW, DVD-R/RW, BlueRay Disc, MD), etc.
[0067] Для организации работы компонентов вычислительного устройства (300) и организации работы внешних подключаемых устройств применяются различные виды интерфейсов В/В (304). Выбор соответствующих интерфейсов зависит от конкретного исполнения вычислительного устройства, которые могут представлять собой, не ограничиваясь: PCI, AGP, PS/2, IrDa, FireWire, LPT, COM, SATA, IDE, Lightning, USB (2.0, 3.0, 3.1, micro, mini, type C), TRS/Audio jack (2.5, 3.5, 6.35), HDMI, DVI, VGA, Display Port, RJ45, RS232 и т.п.[0067] Various types of I/O interfaces (304) are used to organize the operation of the components of the computing device (300) and organize the operation of external connected devices. The choice of appropriate interfaces depends on the particular design of the computing device, which can be, but not limited to: PCI, AGP, PS/2, IrDa, FireWire, LPT, COM, SATA, IDE, Lightning, USB (2.0, 3.0, 3.1, micro, mini, type C), TRS/Audio jack (2.5, 3.5, 6.35), HDMI, DVI, VGA, Display Port, RJ45, RS232, etc.
[0068] Для обеспечения взаимодействия пользователя с вычислительным устройством (300) применяются различные средства (305) В/В информации, например, клавиатура, дисплей (монитор), сенсорный дисплей, тач-пад, джойстик, манипулятор мышь, световое перо, стилус, сенсорная панель, трекбол, динамики, микрофон, средства дополненной реальности, оптические сенсоры, планшет, световые индикаторы, проектор, камера, средства биометрической идентификации (сканер сетчатки глаза, сканер отпечатков пальцев, модуль распознавания голоса) и т.п.[0068] To ensure user interaction with the computing device (300), various means (305) of I / O information are used, for example, a keyboard, a display (monitor), a touch screen, a touch pad, a joystick, a mouse, a light pen, a stylus, touch panel, trackball, speakers, microphone, augmented reality, optical sensors, tablet, indicator lights, projector, camera, biometric identification tools (retinal scanner, fingerprint scanner, voice recognition module), etc.
[0069] Средство сетевого взаимодействия (306) обеспечивает передачу данных посредством внутренней или внешней вычислительной сети, например, Интранет, Интернет, ЛВС и т.п. В качестве одного или более средств (306) может использоваться, но не ограничиваться: Ethernet карта, GSM модем, GPRS модем, LTE модем, 5G модем, модуль спутниковой связи, NFC модуль, Bluetooth и/или BLE модуль, Wi-Fi модуль и др.[0069] The network communication means (306) provides data transmission via an internal or external computer network, for example, an Intranet, the Internet, a LAN, and the like. As one or more means (306) can be used, but not limited to: Ethernet card, GSM modem, GPRS modem, LTE modem, 5G modem, satellite communication module, NFC module, Bluetooth and / or BLE module, Wi-Fi module and others
[0070] Представленные материалы заявки раскрывают предпочтительные примеры реализации технического решения и не должны трактоваться как ограничивающие иные, частные примеры его воплощения, не выходящие за пределы испрашиваемой правовой охраны, которые являются очевидными для специалистов соответствующей области техники.[0070] The submitted application materials disclose preferred examples of the implementation of the technical solution and should not be construed as limiting other, particular examples of its implementation that do not go beyond the scope of the requested legal protection, which are obvious to specialists in the relevant field of technology.
Claims (30)
Publications (1)
Publication Number | Publication Date |
---|---|
RU2781749C1 true RU2781749C1 (en) | 2022-10-17 |
Family
ID=
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070192178A1 (en) * | 2003-08-06 | 2007-08-16 | Oneempower Pte Ltd | Transaction method and system |
US20100223160A1 (en) * | 2001-10-16 | 2010-09-02 | Nicholas Anthony Lindsay Brown | Money Management Network |
US20150163206A1 (en) * | 2013-12-11 | 2015-06-11 | Intralinks, Inc. | Customizable secure data exchange environment |
US20180316547A1 (en) * | 2017-04-27 | 2018-11-01 | Microsoft Technology Licensing, Llc | Single management interface to route metrics and diagnostic logs for cloud resources to cloud storage, streaming and log analytics services |
RU2723459C1 (en) * | 2019-07-30 | 2020-06-11 | Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) | Method and system for payment for services |
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100223160A1 (en) * | 2001-10-16 | 2010-09-02 | Nicholas Anthony Lindsay Brown | Money Management Network |
US20070192178A1 (en) * | 2003-08-06 | 2007-08-16 | Oneempower Pte Ltd | Transaction method and system |
US20150163206A1 (en) * | 2013-12-11 | 2015-06-11 | Intralinks, Inc. | Customizable secure data exchange environment |
US20180316547A1 (en) * | 2017-04-27 | 2018-11-01 | Microsoft Technology Licensing, Llc | Single management interface to route metrics and diagnostic logs for cloud resources to cloud storage, streaming and log analytics services |
RU2723459C1 (en) * | 2019-07-30 | 2020-06-11 | Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) | Method and system for payment for services |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200151686A1 (en) | System and method for cross-border blockchain platform | |
CA2941280C (en) | System and method for maintaining a segregated database in a multiple distributed ledger system | |
AU2016351569B2 (en) | Method and system for validation of hashed data via acceptance frames | |
US7617152B2 (en) | Bankcard transaction exchange system | |
US20180374062A1 (en) | System and method for implementing an interbank information network | |
CN109299939A (en) | Method and system for the trading processing with complete password accountability | |
US20190164150A1 (en) | Using Blockchain Ledger for Selectively Allocating Transactions to User Accounts | |
CA3005185A1 (en) | Method and system for gross settlement by use of an opaque blockchain | |
EP3427207A1 (en) | Method and system for electronic distribution of controlled tokens | |
CN110717825A (en) | Distributed data transaction accounting system based on block chain | |
CN109919758B (en) | Method and system for social savings platform via blockchain | |
US20230360007A1 (en) | System and method for secure and traceable fund transfer operation through a distributed ledger | |
RU2677384C1 (en) | Way of automatic calculation of the included money in case of failures | |
KR102376783B1 (en) | The blockchain-based transaction history confirmation system | |
RU2781749C1 (en) | System for processing traffic of transaction data of payment systems | |
US20230087478A1 (en) | Authentication of data entries stored across independent ledgers of a shared permissioned database | |
CN111178826A (en) | Consumption financial risk management method based on block chain and cloud platform | |
WO2022250559A1 (en) | System for processing transaction data traffic from payment systems | |
Xue et al. | Cross-chain state machine replication | |
US20230097203A1 (en) | System and method for generating blockchain token support from a set of declarations | |
KR102016586B1 (en) | Interprocessed Electronic Signals for Surrogate Functionality | |
EA045477B1 (en) | TRAFFIC PROCESSING SYSTEM FOR PAYMENT SYSTEMS TRANSACTION DATA | |
US20210295279A1 (en) | Method and system to manage dispute resolution via digital asset network | |
RU2768561C2 (en) | Method of settling transactions between legal entities using distributed ledger technology | |
US11966887B1 (en) | Bridging network transaction platforms to unify cross-platform transfers |