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 acquired it in 2008, along with all other products from the BEA stack. I was really curious how Oracle would position this product, but during Oracle OpenWorld 2011 it became clear to me.
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:
Communication concentrators
For remote clients (Java, CORBA, or WebServices)
Gateways
To facilitate the sharing of services across domains, Tuxedo provides domain gateways.
Failure recovery
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.
Queuing subsystem
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
Mainframe re-hosting
To migrate the C/C++ and Cobol applications
SALT
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.
JCA Adapter
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
Conclusion
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.
Can you compare the Tuxedo with any other middleware product that you have come across please?
Just to reinforce the points of Tuxedo. Tuxedo is the only reliable, scalable, and high-performing infrastrcture to handle mission-critical ex-mainframe payloads, natively, on distributed systems. Coupled with Exalogic, Tuxedo is a critical component of the Exabus framework, whereby Oracle provides a fully seamless and transparent environment extending from C-base languages to Java, with unlimited scalability.
Thanks Michel!
Lorenzo Cremona – Oracle Tuxedo Product Management