Мегаобучалка Главная | О нас | Обратная связь


Транзакционные операции



2018-07-06 710 Обсуждений (0)
Транзакционные операции 0.00 из 5.00 0 оценок




Транзакция– группа последовательных операций с базой данных, которые либо выполняются все целиком, либо не выполняются вообще.

Транзакции позволяют не допустить ситуацию, при которой данные будут находиться в несогласованном состоянии.Иными словами, с помощью транзакций можно менять одно согласованное состояние системы на другое. Причем стоит заметить, что используются не только в базах данных. Например, брокеры сообщений уже давно позволяют публиковать и получать сообщения также внутри транзакций [18].

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

Проблему можно решать несколькими способами:

- Не использовать транзакции вообще.

- Использовать транзакции только в рамках одного микросервиса.

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

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

Связность данных

Данные в интернет-банках, хоть и распределены по различным доменам, однако же очень тесно связаны между собой. Это накладывает определенные сложности даже при разработке интернет-банка с нуля, не говоря уже о переводе существующей системы на целевую архитектуру. Проблему на данный момент можно решить с помощью сосредоточения наиболее близких друг к другу сущностей данных в рамках одного микросервиса, а на другие сущности ссылаться с помощью уникальных идентификаторов. Также существует вариант с использованием общей схемы базы данных для всех микросервисов, которая могла бы решить и проблемы согласованности данных, описанных в предыдущем пункте, однако же сводит на нет преимущество технологической разнородности, которое подразумевает, что микросервисы представляет собой совершенно отдельное приложение и может использовать источник данных, отличный от остальных и более подходящий [19]. И самое главное, совместно используемая схема данных вносит огромную путаницу и неразбериху в ряды разработчиков микросервисов, к разработка и доработка структур данных в базе становится с слишком рискованным и сложным делом. Поэтому в конкретном данном случае стоит сосредоточить наиболее связные данные в одном микросервисе, а если без ссылок на другие источники не обойтись, то использовать уникальные идентификаторы. Например, платеж в базе данных микросервиса вполне может содержать в себе номер счета и идентифиатор дебетовой карты, с которой производится платеж, или, например, автоплатеж может содержать номер счета и идентификатор кредитной карты, на которую прозводится постоянное регулярное пополнение с дебетовой карты [20].

Итог проектирования

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

 

РЕАЛИЗАЦИЯ СИСТЕМЫ

 

Макеты форм

В этом пункте представлены черновые макеты форм, поскольку на текущий момент разработка фронтовой части системы не осуществляется. Предполагается в итоге использовать js-фреймворк AngularJS 5.

На рисунке 28 представлен макет формы входа в систему. Здесь физический клиент вводит свои данные и аутентифицируется в системе.

Рисунок 28 - Макет формы входа в систему

На рисунке 29 представлен макет формы восстановления пароля к системе.

Рисунок 29 - Форма восстановления пароля к системе

 

Далее на рисунке 30 представлен макет главной страницы интернет-банка

Рисунок 30 - Главная страница интернет-банка

 

На рисунке 31 изображен макет страницы с банковскими продуктами, которые уже есть у клиента [21].

 

 

Рисунок 31. Страница продуктов клиента

 

На рисунке 32 показана форма создания платежа.

 

Рисунок 32. Форма создания платежа

 

На рисунке 33 показана форма создания перевода между своими счетами.

Рисунок 33 - Форма перевода между своими счетами

 

Рисунок 34 - Форма создания перевода в другой банк

На рисунке 35показана форма создания перевода по номеру телефона

Рисунок 35 - Форма создания перевода по номеру телефона

На рисунке 36 и рисунке 37 показана форма оформления заявки не кредит.

 

Рисунок 36 - Форма оформления заявки на кредит

 

Рисунок 37 - Продолжение оформления заявки

 

На рисунке 38 показана форма оформления вклада [22].

 

Рисунок 38 - Форма оформления вклада

 

 

Рисунок 39 наглядно показывает форму оформления дебетовой карты.

 

Рисунок 39 - Форма оформления заявки на дебетовую карту



2018-07-06 710 Обсуждений (0)
Транзакционные операции 0.00 из 5.00 0 оценок









Обсуждение в статье: Транзакционные операции

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Как построить свою речь (словесное оформление): При подготовке публичного выступления перед оратором возникает вопрос, как лучше словесно оформить свою...
Как вы ведете себя при стрессе?: Вы можете самостоятельно управлять стрессом! Каждый из нас имеет право и возможность уменьшить его воздействие на нас...
Личность ребенка как объект и субъект в образовательной технологии: В настоящее время в России идет становление новой системы образования, ориентированного на вхождение...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (710)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.006 сек.)