Мониторы контроля транзакций

Первоначально основной задачей мониторов обработки транзакций (ТР-мониторов) в среде клиент-сервер было сокращение числа соединений клиентских систем с БД. При непосредственном обращении клиента к серверу базы данных для каждого клиента устанавливается соединение с СУБД, которое порождает запуск отдельного процесса в рамках ОС. ТР-мониторы брали на себя роль концентратора таких соединений, становясь посредником между клиентом и сервером базы данных.
Постепенно, с развитием трёхзвенной архитектуры клиент-сервер функции ТР-мониторов расширились, и они превратились в платформу для транзакционных приложений в распределённой среде с множеством БД под различными СУБД.
ТР-мониторы представляют одну из самых сложных и многофункциональных технологий в мире промежуточного ПО. Основное их назначение – автоматизированная поддержка приложений, оформленных в виде последовательности транзакций. Каждая транзакция – законченный блок обращений к ресурсу (как правило, базе данных) и некоторых действий над ним, для которого гарантируется выполнение четырёх условий:
- атомарность – операции транзакции образуют неразделимый, атомарный блок с определённым началом и концом. Этот блок либо выполняется от начала до конца, либо не выполняется вообще. Если в процессе выполнения транзакции произошёл сбой, происходит откат (возврат) к исходному состоянию;
- согласованность – по завершении транзакции все задействованные ресурсы находятся в согласованном состоянии;
- изолированность – одновременный доступ транзакций различных приложений к разделяемым ресурсам координируется таким образом, чтобы эти транзакции не влияли друг на друга;
- долговременность – все изменения данных (ресурсов), осуществлённые в процессе выполнения транзакции, не могут быть потеряны.
В системе без ТР-монитора, обеспечение этих свойств берут на себя серверы распределенной БД, использующие двухфазный протокол (2РС- two-phase commit). Протокол 2РС описывает двухфазный процесс, в котором перед началом распределённой транзакции все системы опрашиваются о готовности выполнить необходимые действия. Если каждый из серверов БД даёт утвердительный ответ, транзакция выполняется на всех задействованных источниках данных. Если хотя бы в одном месте происходит какой-либо сбой, будет выполнен откат для всех частей транзакции.
Однако в системе с распределёнными БД выполнение протокола 2РС можно гарантировать только в том случае, если все источники данных принадлежат одному поставщику. Поэтому для сложной распределённой среды, обслуживающей тысячи клиентских мест и работающей с десятками разнородных источников данных, без монитора транзакций не обойтись. ТР-мониторы способны координировать и управлять транзакциями, которые обращаются к серверам баз данных от различных поставщиков благодаря тому, что большинство этих продуктов помимо протокола 2РС поддерживают транзакционную архитектуру (ХА), определяющую интерфейс для взаимодействия ТР-монитора с менеджером ресурсов, например, СУБД Oracle или Sybase. Спецификация ХА является частью общего стандарта распределённой обработки транзакций (distributed transaction processing – DTP), разработанного X/Open.
Функции современных ТР-мониторов не ограничиваются поддержкой целостности прикладных транзакций. Большинство продуктов этой категории способны распределять, планировать и выделять приоритеты запросам нескольких приложений одновременно, тем самым, сокращая процессорную нагрузку и время отклика системы. Обработка запросов организуется в виде «нитей» ОС, а не полновесных процессов, тем самым значительно снижая загруженность системы.
Таким образом снимается одно из серьезных ограничений производительности и масштабируемости клиент-серверной среды – необходимость поддержки отдельного соединения с БД для каждого клиента.
Производители Мониторы контроля транзакций
F.A.Q. Мониторы контроля транзакций
Что такое монитор контроля транзакций (TPM)?
Монитор контроля транзакций (TPM) - это программа, которая отслеживает транзакции от одного этапа к другому, гарантируя, что каждый из них завершается успешно. Если нет или если произошла ошибка, TM Monitor предпринимает соответствующие действия. Основная цель/задача монитора обработки транзакций - обеспечить совместное использование ресурсов и обеспечить оптимальное использование ресурсов приложениями.
Какие функции предоставляет TPM?
TPM предоставляет следующие функциональные возможности:
- Координационные ресурсы
- Балансировка грузов
- Создание новых процессов по мере необходимости
- Обеспечение безопасного доступа к услугам
- Маршрутные услуги
- Упаковка сообщений данных
- Распаковка сообщений в пакеты/структуры данных
- Мониторинг операций/транзакций
- Управление очередями
- Обработка ошибок с помощью таких действий, как перезапуск процесса
- Скрытие деталей межпроцессного взаимодействия от программистов

Мониторы контроля транзакций
https://wiki.c2.com/?TransactionProcessingMonitorМониторы обработки транзакций
http://www.e-biblio.ru/book/bib/01_informatika/infteh/book/docs/piece217.htmTransaction Processing Monitor (TPM)
https://www.techopedia.com/definition/465/transaction-processing-monitor-tpm