Смокинг (программное обеспечение)

редактировать
Информацию об аналогичной компании по файловым системам см. В Tuxera.
Смокинг Oracle
Разработчики) Корпорация Oracle
Стабильный выпуск 12.2.2 / 30 апреля 2016 г. ; 5 лет назад ( 2016-04-30)
Написано в C, C ++, COBOL, Java, Python, Ruby, PHP
Операционная система Кроссплатформенность
Тип Сервер приложений
Лицензия Проприетарный
Веб-сайт www.oracle.com / middleware / technologies / tuxedo.html

Tuxedo (транзакции для Unix, расширенный для распределенных операций) - это платформа промежуточного программного обеспечения, используемая для управления распределенной обработкой транзакций в распределенных вычислительных средах. Tuxedo - это система обработки транзакций или связующее ПО, ориентированное на транзакции, или сервер корпоративных приложений для различных систем и языков программирования. Разработанный ATamp;T в 1980-х годах, он стал программным продуктом корпорации Oracle в 2008 году, когда они приобрели BEA Systems. Tuxedo теперь является частью Oracle Fusion Middleware.

СОДЕРЖАНИЕ

  • 1 История
  • 2 Особенности
    • 2.1 Ядро обмена сообщениями
    • 2.2 Кластеризация
    • 2.3 Гибкие форматы буферов
    • 2.4 Коммуникационные концентраторы
    • 2.5 Шлюзы
    • 2.6 Восстановление после сбоя
    • 2.7 Мониторинг и координация транзакций
    • 2.8 Подсистема массового обслуживания
    • 2.9 Подсистема событий
  • 3 дополнительных продукта
    • 3.1 Повторный хостинг мэйнфрейма
    • 3.2 СОЛЬ
    • 3.3 TSAM Plus
    • 3.4 Адаптеры для мэйнфреймов Tuxedo (TMA)
    • 3.5 Адаптер JCA
    • 3.6 Очередь сообщений смокинга
  • 4 ссылки
  • 5 Дальнейшее чтение
  • 6 Внешние ссылки

История

С самого начала в 1983 году ATamp;T разработала Tuxedo для обеспечения высокой доступности и предоставления чрезвычайно масштабируемых приложений для поддержки приложений, требующих тысячи транзакций в секунду в общедоступных распределенных системах. Первоначальная разработка была нацелена на создание и администрирование систем поддержки операций для телефонной компании в США, для которых требовались возможности оперативной обработки транзакций (OLTP).

Концепции Tuxedo заимствованы из Операционной системы поддержания петли (LMOS). Tuxedo поддерживал перенос приложения LMOS с систем мэйнфреймов, использующих систему управления информацией (IMS), с IBM на гораздо более дешевые распределенные системы, работающие (собственная ATamp;T) на Unix.

Первоначальная команда Tuxedo состояла из членов команды LMOS, включая Хуана М. Андраде, Марка Т. Каргеса, Терренса Дуайера и Стивена Фелтса. В 1993 году Novell приобрела подразделение Unix System Laboratories (USL) компании ATamp;T, которое в то время отвечало за разработку Tuxedo. В сентябре 1993 года он был назван «самым известным» монитором обработки распределенных транзакций, работающим на 25 различных платформах. В феврале 1996 года BEA Systems заключила эксклюзивное соглашение с Novell о разработке и распространении Tuxedo на платформах, отличных от NetWare, и большинство сотрудников Novell, работающих с Tuxedo, присоединились к BEA. В 2008 году корпорация Oracle приобрела BEA Systems, и TUXEDO продавался как часть линейки продуктов Oracle Fusion Middleware.

Tuxedo использовался в качестве межплатформенного программного обеспечения для транзакций в ряде инструментов разработки многоуровневых приложений. Open Group использовала некоторые интерфейсы Tuxedo в качестве основы своих стандартов, таких как X / Open XA и XATMI.

Разработчики Tuxedo опубликовали статьи об этом в начале 1990-х годов. Позже он стал основой некоторых исследовательских проектов.

Функции

  • API на основе стандартов - SCA, The Open Group XATMI, Object Management Group CORBA
  • Типы связи - синхронный, асинхронный, разговорный, незапрашиваемые уведомления, публикация / подписка.
  • Типизированные буферы
    • FML / FML32 - Буферы с самоописанием, похожие на Abstract Syntax Notation One или Fast Infoset
    • XML
    • STRING и многобайтовые строки MBSTRING
    • Двоичные капли CARRAY
    • VIEW / VIEW32 внешне описанные записи
    • ЗАПИСЬ, представляющая структуры записи COBOL
  • Управление транзакциями - Глобальные транзакции - Протокол двухфазной фиксации - X / Open XA
  • / D - Кластеризация - Домены
  • / WS - удаленные клиенты
  • WTC - Соединитель для смокингов Weblogic
  • Клиенты Java - Jolt
  • Интеграция с Java EE (J2EE) - адаптер Tuxedo JCA
  • Двунаправленные веб-службы SOAP и REST - SALT
  • / Q - временные (в памяти) и постоянные очереди (также называемые надежными очередями)
  • Маршрутизация, зависимая от данных (DDR)
  • Брокер событий (также называемый обменом сообщениями публикации и подписки)
  • Безопасность - аутентификация, авторизация, аудит и подписание и шифрование сообщений на основе инфраструктуры открытого ключа
  • Программное администрирование и поддержка SNMP
  • Мониторинг производительности системы и приложений - TSAM Plus
  • Балансировка нагрузки, порождение и упадок серверов
  • Возможность подключения к мэйнфрейму - TMA
  • Поддерживает приложения C, C ++, COBOL, Python, Ruby, PHP и Java на большинстве платформ Unix, Linux, Microsoft Windows и других проприетарных платформах, таких как OpenVMS и IBM i.

Ядро обмена сообщениями

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

Кластеризация

Сердце системы Tuxedo - это Доска объявлений (BB). Это сегмент разделяемой памяти, который содержит конфигурацию и состояние домена Tuxedo. Серверы, службы, транзакции и клиенты зарегистрированы в BB, обеспечивая глобальное представление об их состоянии на всех машинах в домене. Для координации обновлений BB на каждой машине выполняется процесс, называемый связью с доской объявлений (BBL), чтобы поддерживать локальную копию BB в актуальном состоянии. На главной машине выполняется процесс, называемый «Выдающаяся связь с доской объявлений», который координирует обновления BB. Это позволяет каждой машине видеть, какие серверы, службы, транзакции и клиенты находятся на каждой машине в домене.

Другой процесс на каждой машине, называемый мостом, отвечает за передачу запросов от одной машины к другой. Это позволяет Tuxedo распределять нагрузку по различным машинам в домене и позволяет серверам и службам работать на нескольких машинах. Кроме того, BBL и Bridge контролируют друг друга и перезапускают друг друга в случае отказа одного из них. В случае выхода из строя главной машины другая машина, назначенная резервной главной, может взять на себя функцию главной машины. Кроме того, поскольку машины в одном домене могут иметь разные архитектуры (x86, IA32, SPARC, P-Series и т. Д.), Bridge также отвечает за обработку различий в таких вещах, как порядок байтов.

В Oracle Exalogic Tuxedo используются возможности RDMA InfiniBand для обхода моста. Это позволяет клиенту службы на одной машине напрямую обращаться к серверу на другой машине.

Гибкие форматы буферов

Приложения Tuxedo могут использовать различные форматы сообщений в зависимости от типа передаваемых данных. Одним из самых популярных форматов является формат буфера FML, который очень похож на двоичный формат XML или ASN.1. Буферы FML могут содержать произвольное количество именованных полей произвольного типа. Поля могут быть повторяющимися и вложенными. Поскольку это двоичный формат с самоописанием, обработка полей требует очень небольших накладных расходов по сравнению с синтаксическим анализом, необходимым для поддержки чего-то вроде XML. Буферы VIEW - это, по сути, записи, структуры C или тетради COBOL. Буфер VIEW имеет внешнее описание, которое позволяет Tuxedo получать доступ к его полям, если это необходимо для таких вещей, как маршрутизация, зависящая от данных. Другие форматы буферов включают XML, CARRAY (непрозрачные двоичные данные), STRING и MBSTRING (строковый буфер, содержащий многобайтовые символы). Tuxedo может автоматически и прозрачно преобразовывать буферы FML в буферы XML и из них.

Также имеется поддержка типов буферов, разработанных пользователем (например, буферы JamFlex, определенные Tuxedo-версией набора инструментов Panther RAD ).

Концентраторы связи

Для удаленных клиентов (Java, CORBA или / WS) Tuxedo предоставляет концентраторы связи, называемые приемниками / обработчиками, которые обрабатывают удаленную сетевую связь. Клиенты подключаются к этим концентраторам связи, которые действуют как прокси для клиентов. Когда клиенты делают запросы, слушатель / обработчик использует локальную инфраструктуру Tuxedo для выполнения запроса от имени клиента. Затем Tuxedo распределяет нагрузку между серверами в домене, предлагающими услугу, даже если сервер не находится на локальном компьютере. Это контрастирует с большинством серверов приложений Java EE, где балансировка нагрузки выполняется клиентом, выполняющим запросы к разным машинам с кластером.

Шлюзы

Чтобы облегчить совместное использование сервисов между доменами, Tuxedo предоставляет доменные шлюзы. Доменный шлюз позволяет импортировать и экспортировать услуги из удаленных доменов. Это позволяет локальному домену видеть службы в удаленных доменах, как если бы они были локальными службами. Шлюзы домена несут ответственность за распространение контекста безопасности и транзакции в удаленный домен. Помимо соединения доменов Tuxedo, существуют доменные шлюзы для систем мэйнфреймов, использующих TCP / IP, системную сетевую архитектуру IBM (SNA) или протоколы OSI, а также серверы приложений Java Platform, Enterprise Edition. Для шлюзов мэйнфреймов каждая система видит сервисы, импортированные из удаленной системы, как локальные, и использует инфраструктуру локальной системы для взаимодействия с этими сервисами. Это означает, что Tuxedo рассматривает транзакцию CICS как службу Tuxedo, а CICS видит службу Tuxedo как транзакцию CICS.

Восстановление после сбоя

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

Мониторинг и координация транзакций

Приложения Tuxedo могут запрашивать, чтобы все вызовы служб и связанные с ними обновления любых ресурсов, контролируемых менеджерами ресурсов (например, базами данных), управлялись транзакцией. Как только приложение начинает транзакцию, все последующие вызовы служб и вложенные вызовы включаются в эту транзакцию, даже те службы, которые выполнялись в удаленных доменах. Затем Tuxedo координирует обработку фиксации с менеджерами ресурсов, чтобы обеспечить атомарные обновления всех затронутых ресурсов. Транзакции могут управляться приложением или автоматически управляться конфигурацией Tuxedo, т. Е. Транзакциями, управляемыми контейнером.

Подсистема массового обслуживания

Tuxedo предоставляет подсистему очередей под названием / Q. Это средство предоставляет временные и постоянные очереди, которые позволяют приложениям явно ставить и удалять сообщения из именованных очередей. Очереди можно упорядочить по времени доступности сообщений, времени истечения срока действия, приоритету, LIFO, FIFO или их комбинации. Очереди управляются XA-совместимым диспетчером ресурсов, позволяющим операциям с очередями участвовать в распределенных транзакциях. Предоставляется сервер автоматической пересылки очереди, который удаляет записи из очереди и вызывает связанные службы Tuxedo, помещая ответное сообщение в связанную очередь ответов.

Подсистема событий

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

Дополнительные продукты

Oracle предлагает ряд дополнительных продуктов к Tuxedo.

Повторный хостинг мэйнфреймов

В марте 2010 года Oracle анонсировала два новых продукта. Application Runtime для CICS и Batch вместе со связанной с ним Oracle Tuxedo Application Rehosting Workbench позволяет переносить IBM Customer Information Control System (CICS) и пакетные приложения на Tuxedo в распределенных системах. Благодаря предоставлению инструментов автоматического преобразования, расширению макросов препроцессора API, эквивалентному CICS, и среде выполнения пакетной обработки, подобной JES-2, миграция приложений для мэйнфреймов значительно упрощается.

ПОВАРЕННАЯ СОЛЬ

Этот продукт предоставляет двунаправленный шлюз SOAP / HTTP (S) веб-служб. Этот шлюз позволяет внешним клиентам SOAP получать доступ к службам Tuxedo без внесения каких-либо изменений в службу Tuxedo. Точно так же приложения Tuxedo могут вызывать внешнюю веб-службу, как если бы это была локальная служба Tuxedo. Последняя версия SALT поддерживает WS-AtomicTransactions и модули для веб-сервера Apache, HTTP-сервера Oracle и веб-сервера Oracle iPlanet, что позволяет создавать динамический веб-контент путем вызова служб Tuxedo. В версии 12.1.3 SALT добавлена ​​поддержка сервисов RESTful.

TSAM Plus

Этот продукт предоставляет возможности централизованного мониторинга для нескольких доменов Tuxedo. Агенты TSAM Plus развернуты на машинах в домене Tuxedo. Эти агенты собирают метрические данные из запущенных процессов Tuxedo на основе настроенной политики и отправляют данные обратно в TSAM Plus Manager, где они используются исторически или в реальном времени. TSAM Plus предоставляет информацию о конфигурации, пути вызова, шаблоне вызова, выполнении службы, транзакции и других показателях мониторинга. TSAM Plus также контролирует Tuxedo ART CICS и пакетные приложения. Дополнительный компонент TSAM Plus - это подключаемый модуль для Oracle Enterprise Manager Cloud Control, который обеспечивает полную работу, настройку, администрирование и управление приложением Tuxedo.

Адаптеры для мэйнфреймов Tuxedo (TMA)

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

Адаптер JCA

Адаптер Tuxedo JCA предоставляет адаптер ресурсов, совместимый с JCA 1.5, который можно развернуть в любом контейнере JCA Java EE (J2EE) 1.5 или более поздней версии. Адаптер поддерживает интерфейс JCA Common Client или CCI, а также интерфейс JATMI, поддерживаемый компонентом Oracle WebLogic Tuxedo Connector Oracle WebLogic Server. Приток и отток сообщений поддерживаются наряду с поддержкой распределенных транзакций.

Очередь сообщений смокинга

Предоставляет возможности корпоративного обмена сообщениями, объединяющие функции Oracle MessageQ с Tuxedo. Это расширяет существующее средство организации очереди сообщений / Q в Tuxedo, предоставляя такие вещи, как уведомление о доставке, автономный обмен сообщениями, а также возможность хранения и пересылки.

использованная литература

дальнейшее чтение

внешние ссылки

Последняя правка сделана 2024-01-08 05:23:47
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте