Middleware Introduction:
Between the client and the server mezzanine, broke through the traditional C/s architecture, in order to build large-scale, high-performance, distributed C/s applications to provide communications, things, security, fault tolerance and other basic services, shielding the underlying application details, applications do not have to be developed from the bottom, in order to gain the complexity of application development simple.
what is tuxedo.
Tuxedo: Transaction for Unix with been Extended for distributed operation distributed operations after the extended UNIX transaction system.
Transaction middleware located between client and server
Tuxedo is a transaction processing (TP) Supervisor (transaction processing Monitor) that manages transactions for online transaction processing (OLTP) system operations. The client generates a request to the server through a Structured Query Language (SQL) call, or other type of request. This transaction-processing supervisor is confident that the correct modifications are made to ensure the integrity of the data. This is important in a distributed database environment where a transaction can change multiple locations of the database. This transaction-handling supervisor uses a two-phase commit to ensure that all databases have received and acknowledged the correctness of the data. Otherwise, the database returns its pre-transaction state
WTC: WebLogic Tuxedo Connector
OLTP: On-line Transaction processing online transaction processing
OLAP: On-line Analytical processing online analytical processing
ATMI: application-to-transaction monitor Interface application to Transaction Monitor interface
DTP:D istributed Transaction processing Distributed transaction processing
mssq: mutile server,singal Queue
TUXEDO uses a three-tier component Software model:
²client is the first logical layer. Implements user interaction and data representation, sends a request to the second-tier server, invokes the Business logic processing service.
²server component Tiers, which are managed by tuxedo, implement business logic services, receive service requests, and return service results.
² The third layer is a resource manager, such as a relational database. Responsible for managing the data resources of the application system
Tuxedo the core subsystem:
Transaction manager TM (Transaction Manager)
Workstation WorkStation
Domains domain
Queues Queue
Queue:
S
x/open DTP Model:
Tuxedo and WebLogic via WTC interconnect:
Usually use tuxedo to achieve the core business of the system, with WebLogic as a system to expand the platform to the web, to achieve e-commerce. The service on Tuxedo is called by WebLogic and a connection needs to be established between tuxedo and WebLogic.
WTC not only allows WebLogic to invoke the service in tuxedo, but also allows Tuxedo to invoke the EJB in WebLogic. But WTC can only achieve the interconnection between the two platforms.
Tuxedo and WebLogic are interconnected by domain, and tuxedo and WebLogic represent two tdomain respectively.
When using WTC, the tuxedo side configures the appropriate domain configuration file (dmconfig) to indicate the IP and port itself and the domain where the WebLogic resides.
The weblogic aspects to be modified when using WTC are:
-In Classpath, add the path where the Jamti.jar is located.
-In the WebLogic configuration file, Bdmconfig.xml, add a description of the two tdomain sections
After Tuxedo and WebLogic start the corresponding service, the WebLogic is dropped by the client with the appropriate EJB, and then the EJB calls the tuxedo service.
Tuxedo application Development:
The necessary steps to develop tuxedo C/s system:
Ø set environment variables, usually written in setenv.sh
The installation path of the Tuxdir:tuxedo application.
Tuxconfig: The path to the tuxedo configuration file later.
The path and file name of the Viewdir/viewfiles:view file.
Ld_library_path:tuxedo the path of the library file to look for when applying.
Path to some executable files used by Path:tuxedo
If domain is involved, there are corresponding environment variables.
Ø encode and compile the client/server program.
Ø Write/Compile the tuxedo configuration file.
The Tuxedo configuration file Ubbconfig describes the application configuration information. The Ubbconfig file is a binary file that is compiled by a text file through the TMLOADCF command.
The contents of the Ubb file include the following section:
Resources: Information that encompasses the entire range of applications. Must be configured in the first section of the file, indispensable.
Machines: section contains information about each processor that the app is about. This section must be listed after *resources.
Groups: The section contains the definition of the service group. A machine to define at least one service group, each group defines the group name, the group number of the mapping group name and the logical machine name
SERVERS: Contains information about the service process. A portal represents a service that is loaded when an app is started. This information includes the service name, command line parameters, service environment, restart, and so on.
SERVICES: Provides information about the application's special transactions, including load balancing (load) and data buffer type checking (buftype). This section can be omitted if all are default values.
Each of these sections contains a number of option options, which, when applied, look at tuxedo related documents and configure them.
At run time, these configuration information is loaded into a shared memory, called (Bulletin-board).
L Tuxedo provides a management process called BBL (Bulletin Board Liaison) that contains a local copy of the bulletin board and the status of the application on the local server.
L Tuxedo provides another management process DBBL (Distinguished Bulletin Board Liaison) for multi-server configuration. DBBL with BBL to ensure the consistency of all parts of the bulletin board content.
Ø start the service.
Ø Test (functional test, pressure test).
Client/client Development
Tasks for clients:
Gets the data that is due to the capture execution operation.
Initiate a request to the server and wait for the service side to respond.
Return the results to the user in a certain format
The client's program design and implementation should be divided into two parts:
User process.
Tuxedo functional section.
Develop the API that the client involves:
Process-Managed