Years ago, when I worked as an Application Support Analyst for a big triple-A Bank, I got acquainted with the BEA product stack.
One of those products was BEA Tuxedo, at that time at the release of 6. I worked at a settlements project, and Tuxedo was used for as distributed transaction processing, to process settlements an clearing messageg from the bank to an international Clearing an Settlements Project, called CLS. It used the SWIFT network to connect; CLSÂ was an international and timezone independent settlements and clearance platform to overcome timezone and bankrupt issues, and prevent a domino effect when an important bank in the chain becomes bankrupt.
Tuxedo is a transaction processing system or transaction-oriented middleware, or enterprise application server for a variety of systems and programming languages.
Tuxedo was designed for high availability and to provideÂ scalable applications to support a lotÂ transactions per second on commonly available distributed systems. It was developed and designed by AT&TÂ if that required online transaction processing (OLTP) capabilities.
Tuxedo is aÂ message routing and queuing system. Requests are sent to named services and Tuxedo uses memory based inter-process communication facilities to queue the requests to servers. The requester is unaware of where the server that actually processes the request is located or how it is implemented. In fact, Tuxedo was already implementing the SOA, in the early days before even the concept of SOA was familiair to any one.
Oracle Tuxedo 12c will be part of the new Exabus stack, a component embedded in the Exalogic solution Oracle launched some earlier.
In this picture, you can see the position of the Exabus stack and in particular Tuxedo:
Oracle poses Tuxedo as THE interface for C/C++ and Cobol applications, so from here Oracle tries to reach the Mainframe segment to migrate those applications to a Exalogic infrastructures with in this case the Tuxedo as a middleware solution for these applications, where on the other side of the Exabus stack Coherence for JAVA applications.
Tuxedo in the Oracle version delivers:
For remote clients (Java, CORBA, or WebServices)
To facilitate the sharing of services across domains, Tuxedo provides domain gateways.
Each machine monitors the state of all servers and can automatically restart failed servers.
Transaction monitoring and coordination
Tuxedo applications canÂ make use of the transactions ( to databases or other subsystems)Â to be controlled by the application or automatically controlled by the Tuxedo configuration, i.e., container controlled transactions.
Tuxedo uses a queuing subsystem called /Q. This facility provides transient and persistent queues. Looks a lot like JMS or MQ
Newer Products from Oracle
To migrate the C/C++ andÂ Cobol applications
For web services, SOAP/HTTP(S) gateway and for developing SCA based applications in C++, Python, PHP and Ruby. Supports modules for Apache Web Server, Oracle HTTP Server, and Oracle iPlanet Web Server
Tuxedo Mainframe Adapters (TMA)
ThisÂ provides a set ofÂ processes that run on Tuxedo that communicate with a mainframe.
ThisÂ is a wrapper toÂ WebLogic Tuxedo Connector (WTC) as part of WebLogic Server . WTC can only be used on WebLogic, but the JCA adapter allows deploying WTC capabilities on other Java Apps Servers that support JEE JCA
I think Tuxedo, although less known than some other software products,Â is a solid, reliable and scalable product which Oracle transformed to be part of the Exabus API. I will be monitoring Tuxedo an will come up with news as soon as I know. The technology is proven in mission critical systems like the SWIFT Banking infrastructure.