Book Image

Getting Started with Oracle Tuxedo

Book Image

Getting Started with Oracle Tuxedo

Overview of this book

The client server or Tuxedo has existed for the past few decades and it is expanding every day! Today, Service Oriented Architecture (SOA) or Service Component Architecture (SCA) are considered to be the new approaches to build client server architecture, Tuxedo adopts this concept and can be extended very easily. "Getting Started with Oracle Tuxedo" shows how to develop distributed systems using Tuxedo and extend that to SOA or even a Cloud environment. The primary objective of this book is to show how to develop distributed systems using Tuxedo and extend that to a SOA environment. It also gives fundamentals of Exalogic machines and how Tuxedo application can leverage these new high end machines for enterprise needs. This book introduces you to the client server technology and how it has evolved in past decades. The book also covers various Tuxedo installation procedures, hardware and software requirements, and then how to configure Tuxedo application, all parameters with their syntax and relevant values. You will be introduced to various Tuxedo administrative tools, which are very important for a Tuxedo Administrator to perform his daily work, and with tuning suggestions and best practices. Next comes, Tuxedo APIs to build your applications, combining client and server modules. The book then covers the SALT component, which allows external web service applications to invoke Tuxedo services, and similarly Tuxedo applications can invoke external web services. At the end we discuss briefly the Exalogic machine and its architecture and how to configure and deploy Tuxedo application in this environment.
Table of Contents (12 chapters)

Client/server communication paradigms


In this section, we will discuss client/server communication paradigms. There are four different ways these communications can take place, namely request/reply, conversational, communication by using a queue, and event-based. There is a single namespace for all the service names, so from an administrative point of view, a service name can be defined as either request/response or conversational. A request/reply service can be called using tpcall(), tpacall(), or tpforward(); tpconnect() can only be used to call a conversational service.

Request/reply

This works in the following ways:

  1. First it receives one request at a time and handles one request at a time.

  2. Then it returns (using tpreturn()) or forwards (using tpforward()) the result.

    Tip

    Using tpforward() to invoke a service in the same server works, but it is not considered a best practice as it defeats the purpose of using tpforward() to free up the server to process more requests.

Conversational

A service...