ARCHITECTURE OF SAP R/3 AND APPLICATION SERVER AND DATABASE SERVER IN ABAP
ARCHITECTURE OF SAP R/3 AND APPLICATION SERVER AND DATABASE SERVER IN ABAP?
PLEASE EXPLAIN
hi
<b>Presentation Server</b>
It is actually a program named sapgui.exe.
It usually installed in users workstation.
The interface accepts the input from the user in the form of keystrokes, mouse-clicks, and function keys, and sends these requests to the application server.
It receives and displays the result from the application server.
<b>Application Server</b>
An application server is a set of executables that collectively interpret the the ABAP/4 programs.
Each application server has a profile called application server profile, that specifies its characteristics when it starts up and while it is running. It specifies:
1. Number of processes and its types.
2.Amount of memory each process may use.
3. Length of time a user is inactive before being automatically logged off.
If your ABAP/4 program requests information from the database, the application server will format the request and send it to the database server
<b>Database Server</b>
The database server is a set of executables that accepts database requests from the application server.
These requests are passed on to the RDBMS (Relation Database Management System).
The RDBMS sends the data back to the application server.
The RDBMS may run on database servers computer or may be installed on its own computer.
The components of application server are dispatcher, dispatcher queue, work process.
All requests that come in from presentation servers are directed first to the dispatcher.
The dispatcher writes them to the dispatcher queue.
The dispatcher pulls the requests from the queue on a first-in, first-out basis.
Each request is then allocated to the first available work process.
A work process handles one request at a time.
The work process needs two memory areas, the user context and the roll area.
The user context is a memory area that contains the information about the user.
The roll area is a memory area that contains about the program execution.
<b>User Context</b>
User context is a memory area that contains the characteristics of a user that is logged on the R/3 system.
1)It holds, users current settings.
2. The users authorizations.
3. The names of the programs the user is currently running.
When a user logs on, the user context is allocated for that logon. When logs off, it is freed.
<b>Roll Area </b>
A roll area is a memory that is allocated by a work process for an instance of a program.
It holds the information needed by R/3 about the program execution, such as: 1. The values of the variables
2. The dynamic memory allocations
3. The current program pointer.
Each time a user starts a program, a roll area is created for that instance of the program.
If two users are using the same program at the same time, two roll areas will exist-one for each user.
The roll area is freed when the program ends.
Both roll area and the user context play an important roll in dialog processing
<b>pls reward points dor useful ans</b>
<i>regards
vivek</i>
Message was edited by:
Vivek Saxena
Similar Messages
-
How do you clear system and application logs in a server?
Hello all,
How do you clear system and application logs in a server?
thanks,
mikego to start button,all programs,assosories, System tools T event viewer. now select application & rt click & clear & do not save.similarly do for sytem too.
-
Monitoring JBoss Server and applications running on that Server
Hi,
I am new to JMX. My requirement is, we need to monitor health of application server like jBoss and applications running on that server.
I would like to know, is JMX is suitable to my requirement? If so, how to monitor?
Thanks,
Naga Muni Reddy.Restarted computer and now it works. Are ports locked up if I get an exception in the 'wrong' place?
-
How to make appliction server and how to make database server
Hi all
Release 12.1.1 software bundle are labeled as follows:
• Start Here - Disk 1
• APPL_TOP - Disk n
• RDBMS - Disk n
• Tools - Disk n
• Databases - Disk n
i want to make database server and other one is application server
which one software is install in database server and which one software is install in appliction severHello,
Please, find enclosed a link about Oracle Application Concept:
[http://download.oracle.com/docs/cd/B40089_10/current/acrobat/120oacg.pdf]
[http://download.oracle.com/docs/cd/B40089_10/current/html/homeset.html]
You'll get many answers and the best practices.
Hope it can help.
Best regards,
Jean-Valentin -
Renaming Project Server 2010 database server
Hi all,
We have Project Server 2010 + SQL Server 2008 R2, but we need to upgrade DB to cluster SQL Server 2012 Enterprise Edition
SP1 CU7.
Is it ok if we rename Project Server DB server , for example from DBSER05 to DBSRVCL07\APPDB ?As you planning to upgrade SQL server from 2008 r2 to sql server 2012 enterprise edition SP1 CU7.
In this case you have to create your farm from scratch. You have to Create your APP server and FE server all together from scratch and then you have to give your new DB server name DBSRVCL07\APPDB while creating farm.Once you run the configuration
wizard their you have to specify the NEW DB name DBSRVCL07\APPDB it will create Sharepoint config and content.
then you can restore your current project server DBs on new DB cluster server DBSRVCL07\APPDB and create project WEB APP where you can point restored project server DBs.
It means it would be all together back up and restore on new hardware.
i am just guessing if you think you will only upgrade Sql server, create cluster and rename proejct server DB server name in the existing farm that will not work.
Only approach is take back up and restore onto new infrastructure.
http://azlav.umtblog.com/2011/06/07/project-server-2010-database-restore-part-i/
if we rename Project Server DB server , for example from DBSER05 to DBSRVCL07\APPDB-- If you will only rename project
server DB server name then it wont work as project server also uses sharepoint config and content DB which are setting on old DB server name(we give db server name while running wizard) and it will throw errors.
kirtesh -
Disconnect window server with database server
I'm currently run a pl/sql job in database, the database server currently r connected with window server, what i need to do is sometime the window server will down and the job will fail, n i need to recover the database manually. How do i eliminated from connected with window server?
ThanksIn such a scenario why do you want to run the pl/sql job?
-
Can DHCP computers serve as database server?
My laptop is a DHCP computer. I installed Loopback adapter for Oracle 10g Release 2. Can it serve as a database server? Can I use other computer with the client installation to access to the database server? Or I must install the client software at the laptop with the server installation. In this case, does the client connects to the server using Oracle Net Services?
Thanks.Two parts here: DHCP and Database access.
1) DHCP
This is for finding/identifying the computer and is not part of the database discussion. (Assuming TCP/IP for this discussion ...)
A computer has an address and a name. The address is an IP address which may be 'statically' or 'dynamically' assigned. If static, a network admin provides the P address. If dynamc, it is assigned using DHCP. The name is just a readable alias for the address and tat is stored in either a lookup file (/etc/hosts) or 'resolved' by a program called DNS.
The problem with DHCP is that the computer name and address are provided on a time-limited lease. This means that the address can change over time.
A server should be at a known address so that clients can find it easily. (Imagine if your favorite grocery store moved every few weeks.)
So, while a server can use DHCP to run it's service, there is a risk that the service could become unavailable due to retrained leased. To mitigate that risk requires the network administration to take even further steps, such as Dynamic DNS.
Oracle 11gR2 is looking at mitigating that issue to some extent using a 'GNS server'.
2) Database access
The other part to your question relates to the 'service' and/or 'sid'. In brief:
- A sid represents the physical database instance (and is used to derive the start of memory for the database instance)
- A service is logical and points to one or more SIDs (in RAC or standby, the service can imply multiple instances)
- A database instance has at least one service and that service matches the sid
- A database instance may support other services
- A database instance registers the services that it will honour with the listener
- The listener will listen on a network for 'requests for a service'
A TCP/IP client will always use a 3-part request to get to the database instance. The 3 parts are "host computer where the listener is", "the port on which to connect to the listener" "the service for which the listener should provide the final connection". Some of these parts may be implied, but in TCP/IP they are always there.
When you connect using a non-Java client, you may see a connection request like
sqlplus user/password@alias
and the alias looks up in some 'resolver mechanism' to translate the alias into the 3 parts. The resolver mechanism is often the TNSNAMES.ORA usually installed with the client, although that could be different based on the contents of the SQLNET.ORA
In a Java (JDBC) connect, you will use a URL like "jdbc:oracle:thin:scott/tiger@//myhost:1521/orcl" - which is basically "jdbc:oracle:thin:user/password@//host:port/service" (see http://www.oracle.com/technology/tech/java/sqlj_jdbc/htdocs/jdbc_faq.html)
The HOST part in the above needs to get translated into a specific computer - and that is the link back to hostname, IP address, DHCP and DNS.
HTH
/Hans -
How do i transfer some files and applications to and make my ssd a bootable drive
I have a mbp 2009. i'm using the owc data doubler - installing 250gb ssd and keeping my 250 HDD. I want to transfer some apps and files from the HDD to the SSD and make the SSD the bootable drive. I'm not too familiar with teh inner-workings, so i'd appreciate a step-by-step instruction
First - if you want to have the SSD as your boot drive, put it in your hard drive bay and put your hard drive in the optical bay. MacBook Pros 'expect' the boot drive to be in the main bay - not the secondary bay.
After you've made the swap, hold down the option key whilst booting and select your hard drive to start up. Once you've booted, use Disk Utility to format the SSD ("Mac OS Extended (Journaled)") with a single GUID partition. Now you'll be ready to start moving things around.
The best thing you can do - since the HD and the SSD are the same size - is simply to use Carbon Copy Cloner to clone your 'old' drive to the SSD. Then you can boot from the SSD, erase (reformat) your hard drive and then move any files on the SSD that you want on your HD. If I were you, I would try to keep most of your music, photos & other docs on the HD and your applications, etc., on the SSD. DO NOT just move your entire user directory to the HD as there are likely some files that are expected to be found in your user folder (the user Library, etc.).
Easy enough?
Clinton -
Sharepoint 2007 using sql server 2012 database server
We still have an old SharePoint 2007 farm that runs on SQL Server 2008 and Reporting Services 2008. I would like to migrate this app over to SQL Server 2012. From what I gather SharePoint 2007 supports SQL 2012 if you are running WSS service pack 3 and
SharePoint server service pack 3 I am already on SP3. So my question is who all here is running SharePoint 2007 on SQL 2012 and have you had any problems?Yes I have an environment that is SPS 2007 wSP3 and SQL Server 2012, and have been doing this for 2 months. So far, no problems. There have been issies with User Profile services, but those turned out to be unrelated.
Kind regards,
Margriet Bruggeman
Lois & Clark IT Services
web site: http://www.loisandclark.eu
blog: http://www.sharepointdragons.com -
New Blog for SOA and Application server,BPEL
Hi Everyone,
I have created a New Blog for SOA and Application server and BPEL and i would like everyone to have a look at it and give me some comments on it like what is the other information i can keep which can help us all etc....
You can visit it at http://oraclefusionmiddleware.blogspot.comOracle Application Server consists of Oracle HTTP and OC4J servers which deploys J2EE-based applications.
Integration server manages all communication, process interactions, Data Transactions among different systems and applications. Oracle integration server consists of all the SOA elements (BPEL, ESB, Business Rules, and OWSM)
when you want to deploy Java applications then you will deploy to Application Server.When you want to deploy BPEL,ESB Process you will use integraion server(BPEL Server,ESB Server).
Integration server is just the web server which connects to application server which helps in administrating and managing different applications as a whole
Regards,
Deepa -
Mechanism between DB server and application server
Hi,
Currently I have ebs R12.1.3 installed and DB is under upgrade from 11.1.0.7 to 11.2.0.2.
While upgrading the database server, I got a question how the application server finds database server.
The question might sound a bit foolish, but that's how it is. :)
For example, when DB is upgraded, upgrade, configurations, and post activities are explained on DB side in documents.
But then, how does the application find database server after new DB is installed?
Does it work based on the updated listener file only...?
Or, is there any configuration that needs to be done on application server side as well after the DB is upgraded?
Can anyone help with my questions...?
Thanks,While upgrading the database server, I got a question how the application server finds database server.
The question might sound a bit foolish, but that's how it is. :)
For example, when DB is upgraded, upgrade, configurations, and post activities are explained on DB side in documents.
But then, how does the application find database server after new DB is installed?
Does it work based on the updated listener file only...?
Or, is there any configuration that needs to be done on application server side as well after the DB is upgraded?
Can anyone help with my questions...?Your question is answered in (Interoperability Notes Oracle EBS 11i with Oracle Database 11gR2 (11.2.0.2) [ID 881505.1]), Step 24. Implement and run AutoConfig
Thanks,
Hussein -
ORACLE SERVER AND UNIX TP MONITOR-1
제품 : ORACLE SERVER
작성날짜 : 2002-05-17
====================================================================
Subject: Oracle Server and UNIX Transaction Processing Monitors - 1
=====================================================================
PURPOSE
This file contains commonly asked questions about Oracle Server and UNIX
Transaction Processing Monitors (TPMs). The topics covered in this article are
o What is a Transaction Processing Monitor (TPM)?
o What is the X/Open Distributed Transaction Processing Model?
o How does the Oracle Server works with TPMs?
o How should I position TPMs with my customer?
o What Oracle products must a customer purchase?
o Where can my customer purchase a TPM?
o Availability and packaging
Explanation & Example
What is a Transaction Processing Monitor?
=========================================
Under UNIX, a Transaction Processing Monitor (TPM) is a tool that coordinates
the flow of transaction requests between front-end client processes that issue
requests and back-end servers that process them. A TPM is used as
the "glue" to coordinate transactions that require the services of several
different types of back-end processes, such as application servers and
resource managers, possibly distributed over a network.
In a typical TPM environment, front-end client processes perform screen
handling and ask for services from back-end server processes via calls to the
TPM. The TPM then routes the requests to the appropriate back-end server
process or server processes, wherever they are located on the network. Through
configuration information, the TPM knows what services are available and where
they are located. Generally, the back-end server processes are specialized so
that each one handles one type of requested service. The TPM provides
location transparency as well and can send messages through the network
utilizing lower-level transport services such as TCP/IP or OSF DCE.
The back-end servers process the requests as necessary and
return the results back to the TP monitor. The TP monitor then routes
these results back to the original front-end client process.
A TPM is instrumental in the implementation of truly distributed processing.
Front-end clients and back-end processes have no knowledge of each
other. They operate as separate entities, and it is this concept that provides
flexibility in application development. Front-end and back-end processes are
developed in the UNIX client-server style, with each side optimized for its
particular task. Server functionality can be deployed in stages, which makes
it easy to add functionality as needed later in the product cycle. It also
makes it easy to distribute both the front-end and back-end processes
throughout the network on the most appropriate hardware for the job. In
addition, multiple back-end server processes of the same type might be
activated to handle increasing numbers of users.
What is the X/Open Distributed Transaction Processing Model?
============================================================
The X/Open Transaction Processing working group has been working
for several years to establish a standard architecture to implement
distributed transaction processing on open systems. In late 1991,
X/Open published the initial Distributed Transaction Processing (DTP)
model specification and defined the first of several interfaces that
exist between the components of the model. Subsequently, other publications
and a revised model specification have been published.
An important function of the TPM in the X/Open DTP model is the
synchronization of any commits and rollbacks that are required to complete
a distributed transaction request. The Transaction Manager (TM) portion
of the TPM is the entity responsible for ordering when distributed commits
and rollbacks will take place. Thus, if a distributed application program
is written to take advantage of the TM portion of the TPM, then it,
and not the DBMS, becomes responsible for enabling the two-phase commit
process. Article 2 has more detail on this model.
How does the Oracle Server work with TPMs?
==========================================
When a TPM is used without invoking an X/Open TM component to manage the
transactions, Oracle Server needs no special functionality. The transaction
will be managed by Oracle itself. However, when the TPM X/Open TM component
is used to manage the transaction, the Oracle Server, that is the Oracle DBMS,
acts as a Resource Manager--a type of back-end process. In the case of
TPM-managed transactions, the TM needs a way to tell the RMs about the stages
of the transaction. This is done by a standard, X/Open defined interface
called XA. Article 2 of of this document gives more information about both
the X/Open model and Oracle7's use of XA.
Because the XA interface provides a standard interface between the TM and the
resource manager, it follows that the TM can communicate with any XA-compliant
resource manager (e.g., RDBMS), and, conversely, that a resource manager can
communicate with any XA-compliant TM. Thus, the Oracle Server, beginning with
Oracle7, works with any XA-compliant TM.
How should I position TPMs with my customer?
============================================
There's been a great deal of confusion about the need for TPM technology. Some
software suppliers, most notably IBM, will assert that a TPM like CICS is a
necessary requirement for high volume OLTP. Other vendors will assert that
there is seldom a need for such technology. And yet others promote TPMs as
providers of higher transaction throughput.
From Oracle's standpoint, customers might choose TPM technology under any of
the following conditions:
1. For heterogeneous database access, especially for 2PC capability
This means that a TPM can be used to coordinate 2PC between Oracle
DBMS and any other XA-compliant database, such as Informix. This
does NOT provide SQL heterogeneity - SQL calls to Oracle DBMS may be
different than SQL calls to Informix. The TPM handles the routing,
communication, and two-phase commit portion of the transaction, but
does not translate one type of SQL call into another.
2. For transaction monitoring and workload control
The leading TPMs supply tools to actively manage the flow of
transactions between clients and servers and to load balance the work
load across all available processors on a network, not just on a
single multi-processor system. Some TPMs also have the ability to
dynamically bring up additional back-end services during peak work
hours.
3. For more flexible application development and installation
One of the key features of the DTP model is application modularity.
Modularity, that is, the decomposition of a large program into small,
easily defined, coded and maintained "mini-programs" makes it easy to
add new functionality as needed. Modularity also makes it much easier
to distribute the front-end and back-end processes and the resource
managers across hardware throughout a network.
4. For isolating the client from details of the data model
By using the service oriented programming model, the client program
is unaware of the data model. The service can be recoded to use a
different one with no change to the client. To get this advantage,
the application developer must explicitly code the server and client
to fit the service model.
5. For connection of thousands of users
TP Monitors, because of their three-tier architecture, can be used
to connect users to an intermediate machine or machines, removing
the overhead of handling terminal connections from the machine
actually running the database. See Article 4 for more information.
There are also several cases where TPM technology is not the right answer.
These include:
1. If the customer is simply looking for a performance improvement
The customer may have heard a theory that "higher performance
is possible for large scale applications only if they use a
TP monitor". First, no performance gain can be achieved for
existing applications; in fact, they won't even run under a TP
Monitor without recoding. Second, performance improvements have
only been documented for large numbers of users, and "large"
means many hundreds or thousands. Without a TP Monitor,
Oracle Server can handle several hundred users with its normal
two-task architecture and several times that using the Multi
Threaded Server. For more on performance, see Article 4.
2. If the customer has made large investment in his existing Oracle
applications
TP monitor applications must be designed from the ground up to take
advantage of TP monitor technology. Current Oracle customers will find
it difficult to "retrofit" a TP monitor to their existing applications.
The Multi Threaded Server, on the other hand, allows the use of
existing Oracle applications without change.
3. If the customer is committed to the Oracle tool set
Currently, none of Oracle's front-end tools (Oracle Forms, etc.) is
designed to work with TP monitors. It is possible to invoke a
TP Monitor by using user exits. However, the fact that the TP
Monitor model hides the data model from the client means that only
the screen display parts of Forms can be used, not the automatic
mapping from screen blocks to tables.
4. If the customer does not have a staff of experienced software engineers
This is still very young technology for UNIX. There is not a lot of
knowledge in the industry on how to build TP monitor applications or
what techniques are most useful and which are not. Furthermore,
integrating products from different vendors, even with the support
of standard interfaces, is more complex than deploying an integrated
all-Oracle solution. Because TP monitor technology is fairly
complex, we recommend that you let the TP monitor supplier promote
the virtues of their technology and differentiate themselves from
their competitors.
What Oracle products must a customer purchase?
==============================================
If your customer is only interested in building Oracle-managed TP Monitor
transactions, the only Oracle products required are the Oracle Server
and the appropriate Oracle precompiler for whatever language the
application is being written in--most likely C or Cobol. If TPM-managed
transactions are required, the Oracle7 Server with the distributed option
is also required. SQL*Net is optional because the TPM takes care of the
network services. Article 2 describes when you would choose to have the TP
Monitor manage the transactions.
Where can my customer purchase a TPM?
=====================================
There are many vendors offering the UNIX TPM products. (Oracle does not
relicense TPMs.) Information on the most well known products is provided
below:
The following support XA:
Product & Vendor FCS Known OS/Platform Ports
"TUXEDO System/T" 1986 UNIX SVR4 & SVR3: Amdahl, AT&T,
UNIX System Laboratories Bull, Compaq, Dell, Fujitsu, ICL,
190 River Road Motorola, Olivetti, Pyramid,Sequent,
Summit, NJ 07901 Sun, Toshiba, Unisys, NCR, Stratus
Other: IBM AIX, HP/UX, DEC Ultrix
"TOP END" 1992 UNIX SVR4: NCR
NCR Corporation
1334 S. Patterson Blvd.
Dayton, OH 45479
"ENCINA" 1992 IBM AIX, HP, Sun (SunOS and Solaris)
Transarc Corporation Other: OS/2, DOS, HP-UX, STRATUS
707 Grant Street (Depends on DCE)
Pittsburgh, PA 15219
"CICS/6000" 1993 AIX: IBM
IBM Corporation (Depends on DCE)
"CICS 9000" 1994 HP-UX
HP
The following do not currently support XA:
Product & Vendor FCS Known OS/Platform Ports
"VIS/TP" unknown unknown
VISystems, Inc.
11910 Greenville Avenue
Dallas, TX 75243
"UniKix" 1990 UNIX: ARIX, AT&T, NCR, Pyramid,
UniKix Sequent, Sun, Unisys
"MicroFocus 1993 SCO Unix, AIX
Transaction System"
Micro Focus
26 West Street
Newbury RG13 1JT
UK
There are also several third parties who are reselling the products listed
above.
In addition, Groupe Bull, Digital, Siemens-Nixdorf, and several other hardware
vendors are planning to redesign their proprietary TPMs to be XA-compliant and
suitable for use on UNIX systems.
Availability and Packaging
==========================
On what platforms is the XA Library available?
Oracle provides the XA interface with Oracle7 Server on all platforms that
support an XA-compliant TPM. Support for XA is included as part of the
Oracle7 Server distributed option and has no extra charge in and of itself.
Which version of XA does Oracle Server support?
Oracle7 Server supports the Common Application Environment (CAE) version of
XA, based on the specification published by X/Open in late 1991. It will
require that the TM also be at that level. This means Tuxedo /T version 4.2,
for example.
Oracle Server supports all required XA functions. There are some optional
features Oracle Server does not support, such as asynchronous operation.
None of those options affect application programming.
Page (2/4)
This file contains commonly asked questions about Oracle Server and UNIX
Transaction Processing Monitors (TPMs). The topics covered in this article are
o Oracle Server Working with UNIX TPMs
o TPM Application Architecture
The questions answered in part 2 provide additional detail to the information
provided in part 1.
Oracle Server Working with UNIX TP Monitors
===========================================
Do I need XA to use Oracle Server with TPMs? If I don't use it, what are
the consequences?
There are a number of real applications running today with Oracle Server and
TPMs but not using XA. To use a TPM with Oracle without using XA, the user
would write an "application server" program which could handle one or more
"services". For example, a server program might handle a service called
"debit_credit". The key requirement is that the entire transaction,
including the "commit work", must be executed within a single service. This
is the restriction which XA will remove, as we'll see later. Each
server process can serially handle requests on behalf of different clients.
Because a server process can handle many client processes, this can
reduce the total number of active processes on the server system,
thereby reducing resource requirements and possibly increasing overall
throughput.
When Oracle is used with a TPM in this mode, we call it an Oracle-managed
transaction since the transaction commit or rollback is done with a SQL
statement.
What is XA? How does XA help Oracle7 work with UNIX TPMs?
XA is an industry standard interface between a Transaction Manager and a
Resource Manager. A Resource Manager (RM) is an agent which
controls a shared, recoverable resource; such a resource can be
returned to a consistent state after a failure. For example, Oracle7 Server
is an RM and uses its redo log and undo segments to be able to do this.
A Transaction Manager (TM) manages a transaction including the
commitment protocol and, when necessary, the recovery after a failure.
Normally, Oracle Server acts as its own TM and manages its own commitment
and recovery. However, using a standards-based TM allows Oracle7 to
cooperate with other heterogeneous RMs in a single transaction.
The commonly used TPMs include a TM component for this purpose. In order to
use the TM capability of the TPM rather than Oracle7's own transaction
management, the application uses a transaction demarcation API (called TX)
provided by the TPM rather than the SQL transaction control statements (e.g.
"commit work"). For each TX call, the TM then instructs all RMs, by the
appropriate XA commands, to follow the two-phase commit protocol. We
call this a TPM-managed transaction.
The following picture shows these interfaces within a monolithic application
program model. This is the model most commonly described in the
DTP literature. We'll see later what the picture looks like when we add
Oracle7 and when we switch to a modularized client-server application
program model.
| |
| |
| Application Program (AP) |
| |
| |
| | | |
Resource Manager API | | | |
(e.g. SQL) -----|--|------------- | TX API
| | v | |
--------|------------- | |
| v | | v
---------------------- | | --------------------
| | | | | |
| Resource | | |<----->| Transaction |
| Managers | |--- | Manager |
| (RMs) | |<-------->| (TM) |
| |--- | |
| |<----------->| |
---------------------- XA --------------------
Interface
The XA interface is an interface between two system components, not
an application program interface; the application program does
not write XA calls nor need to know the details of this interface.
The TM cannot do transaction coordination without the assistance of
the RM; the XA interface is used to get that assistance.
How does the DTP Model support client-server?
The above picture was actually simplified to make it easier to explain
the role of XA. In a true distributed transaction architecture, there
are multiple applications, each with an Application Program, a Resource
Manager, and a Transaction Manager. The applications communicate by
using a Communication Resource Manager. The CRM is generally provided
as a component of the TPM. It includes the transaction information when
it sends messages between applications, so that both applications can
act of behalf of the same transaction. The following picture
illustrates this:
Client Application
| AP |
||| | |
SQL ||| | TX | CRM
||V V | API
-||-- ----- |
| |V | | | V
--|-- |<---| | -----
| V || | | | |
----- |<----| TM |<-->| CRM |
| || | |XA+ | |
| RMs |<-----| | -----
| | XA | | A
----- ----- | Server Application
| -----------------------------
| | AP |
| -----------------------------
| ||| | |
| SQL ||| | TX | CRM
| ||V V | API
| -||-- ----- |
| | |V | | | V
| --|-- |<---| | -----
| | V || | | | |
| ----- |<----| TM |<-->| CRM |
| | || | |XA+ | |
| | RMs |<-----| | -----
| | | XA | | A
| ----- ----- |
| |
| |
-------- |
/ |
/ |
/ |
Most TP Monitor products include both a TM and a CRM, and also provide
additional functions such as task scheduling and workload monitoring.
What is XA+? What does Oracle need to do to comply with it?
XA+ is an interface that lets the X/Open model actually be distributed
because it allows a communication resource manager to tell a TM on the
server that a message from a client just came in for a particular
transaction. Oracle is not currently planning to provide an X/Open
communication resource manager, so we don't have any plans right now
to do XA+. Version 2 of the DTP model paper from X/Open describes it.
The status of the current XA+ specification is "snapshot".
When would I choose an Oracle-managed transaction vs a TPM-managed
transaction?
Oracle Server is very efficient at managing its own transactions. If
the TPM manages the transaction, in general some additional overhead
will be incurred.
The two main reasons a customer might prefer to use a TPM-managed
transaction are as follows:
(1) He may need to update RMs from different vendors. Experience so far
has been that the most common case is wanting to update both Oracle and
a TP Monitor managed resource such as a transactional queuing service
in the same transaction (see Article 3).
(2) He may want to use the model of having several different services in
a transaction, even to the same database. For example, the
"debit_credit" service could be split into a "debit" service and a
"credit" service. This is a very attractive model, but this type of
modularity does exact a performance penalty (see Article 4).
Can I get a version of XA to run on Oracle Server version 6?
No, the XA functionality uses two underlying mechanisms in the Oracle
Server which are not available in version 6: two-phase commit and
session switching. The upi calls for these functions do not not exist
in version 6.
When would I use XA vs Oracle7 to coordinate all-Oracle distributed
transactions?
Generally speaking, Oracle Server should be used to coordinate all-Oracle
distributed transactions. The main reason for using XA to coordinate
transactions would be that you want to use the TP Monitor service-oriented
architecture. That is, you would like to construct an application built of
services and service requests in order to benefit from the modularity and
workload control such an environment provides.
TP Monitor Application Architecture
===================================
What might a TP Monitor application look like?
Most TPM applications will consist of two more more programs, where
there are front-end client programs which request services and back-end
server programs which provide services. In this case, the TPM supplies an
additional capability which is transactional communication. The client
describes the boundaries of the transaction, through the use of the TX API,
and the TPM relays that transaction information to each requested service.
The overall application structure generally looks like the following in the
client-server model. The "TP Monitor Services" box is not necessarily a
process. It could be one or more processes, or just libraries coordinating
through shared memory. Each client process and server process could be on
a different machine. Normally, the application server processes would be
connected to their Oracle Server processes using the IPC driver; the TPM
would be used to deliver messages between application client processes on
one machine and application server processes on another. However, the
application server processes could also be connected with the standard
Oracle SQL*Net to shadow processes on different machines. This might be
useful if one of the databases was on a machine which did not support TPMs.
|Application| |Application| |Application|
| Client 1 | | Client 2 | | Client 3 |
| | | | | |
\ TPM API | TPM API / TPM API
| |
| TP Monitor Services |
| |
| --------------------- |
| | Transaction Manager | |
---------------|---------------|---------------------
TPM API | | XA | XA | TPM API
| | inter- | inter- |
| | face | face |
| | | |
----------- | | -----------
|Application| | | |Application|
| Server 1 |--- ---| Server 2 |
| (Pro*C) | | | | (Pro*C) |
| SQL | SQL
| | | |
| Resource ----------- ----------- |
| Manager | | | | |
| | Oracle7 | | Oracle7 | |
| | Server | | Server | |
| | Process | | Process | |
| | | | | |
| ----------- ----------- |
| | | |
| ----------------------------------------------------- |
| | | |
| | SGA | |
| | | |
| ----------------------------------------------------- |
| |
Application client programs might be written in C and be linked with
TPM libraries. Alternatively, they could use a screen painter product.
Application server programs would be written in Pro*C or Pro*COBOL and
be linked with TPM libraries, the normal Oracle7 user-side libraries
and libxa.a. The Oracle7 Server process is the regular Oracle7 executable.
More complicated application architectures can also be constructed. Most of
the TPMs allow a server to become a client of another service, so you can
involve additional servers.
Could I use Oracle7's Multi Threaded Server as the SQL*Net connection in the
previous picture?
Yes, but that will not be needed in many cases. For example, both
application server processes in the previous picture could talk to a
single Oracle7 Server process through the Multi Threaded Server in the
previous picture. However, since the TPM architecture typically reduces
the number of server processes, the reduction in processes using Multi
Threaded Server may be less significant than in an architecture without
TPMs. If the application will use database links, however, then MTS will
be required.
How do I write an Oracle TP Monitor application?
The actual API used to talk to the TPM varies between vendors, so you need
to get the documentation from the vendor. However, all have a way to
indicate where a transaction begins and ends and a way to send a request
and receive a response from a client to a server. Some use an RPC model,
some use a pseudo-RPC model, and some use a send/receive model. The TX API
described earlier is a subset of the TPM API as defined by each of
the TPM providers.
The client program and server program might look something like the
following examples. We h (such as Tuxedo's
"tpacall
Reference Ducumment
---------------------hello,
the role is the same on all plattforms. the reports server takes requests for running reports, spawns an engine that executes the request. in addition to that, the server also provides scheduling services and security features for the reports environment.
regards,
the oracle reports team -
Connection of oracle database in database server from application server
Hi,
I have two servers, one is application server and another one is database server…..
I want to connect oracle 10g database in database server to application server. In application server oracle 10g client is installed……In database server, I have set tnsnames.ora, Listener.ora …while checking in lsnrctl…the particular sid is running fine…
In application server, while I give as sqlplus
After giving username and password its showing error as
ORA-12545: Connect failed because target host or object does not exist
While surfing in net it shows check tnsnames.ora and listener.ora….. I have set the environmental variables here in application server…..
It’s connecting when I give
Sqlplus
Sql>username/password @ hostname: 1521/sid_name
Is it possible to connect with the username and password
I have set the host names in /etc/hosts….
If we are giving the hostname, port number and Sid name this connects without using tnsnames.ora…..
While pinging between two servers the connectivity is there between two servers…..
Could u pls help me out?
Thanks in advancehi,
as u said i have done that ..s.till the same problem persists...
lsnrctl>services
$ lsnrctl
LSNRCTL for IBM/AIX RISC System/6000: Version 10.2.0.1.0 - Production on 08-FEB-2007 03:56:23
Copyright (c) 1991, 2005, Oracle. All rights reserved.
Welcome to LSNRCTL, type "help" for information.
LSNRCTL> services
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
Services Summary...
Service "RBTT" has 1 instance(s).
Instance "RBTT", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0 state:ready
LOCAL SERVER
Service "RBTTXDB" has 1 instance(s).
Instance "RBTT", status READY, has 1 handler(s) for this service...
Handler(s):
"D000" established:0 refused:0 current:0 max:1022 state:ready
DISPATCHER <machine: emea, pid: 197076>
(ADDRESS=(PROTOCOL=tcp)(HOST=emea)(PORT=37484))
Service "RBTT_XPT" has 1 instance(s).
Instance "RBTT", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0 state:ready
LOCAL SERVER -
Orcale App Server and Database Server in a distributed setup
Hi,
I had a question about orcale db server. Now, as I understand it in a cluster there is one database SERVER and each machine in the cluster has access to the shared database server.
The entire cluster presents a unified view of the database server. To the developer it appears as though there is only one database server.
Is it possible to have several such clusters and run a query across these clusters in a transparent manner? Say I have Table 1 on database SERVER 1 and table 2 on database SERVER 2. Given the current architecture SERVER 1 is on CLUSTER 1 and SERVER 2 is on CLUSTER 2. Can I run a query joining Table 1 and Table 2 such that I do not have to worry about where CLUSTER 1 is and where CLUSTER 2 is? I am nit talking about partiitioning where one table is spread across nodes in a CLUSTER but is still within the same database server.
Regards,
SandeepHi,
I had a question about orcale db server. Now, as I understand it in a cluster there is one database SERVER and each machine in the cluster has access to the shared database server.
The entire cluster presents a unified view of the database server. To the developer it appears as though there is only one database server.
Is it possible to have several such clusters and run a query across these clusters in a transparent manner? Say I have Table 1 on database SERVER 1 and table 2 on database SERVER 2. Given the current architecture SERVER 1 is on CLUSTER 1 and SERVER 2 is on CLUSTER 2. Can I run a query joining Table 1 and Table 2 such that I do not have to worry about where CLUSTER 1 is and where CLUSTER 2 is? I am nit talking about partiitioning where one table is spread across nodes in a CLUSTER but is still within the same database server.
Regards,
Sandeep -
Install Oracle Application Server on same as database server
How to Install Oracle Application Server.
Can I install on the same server as database server
Can some body provide a simple tutorial for Windows Installation.
SsIf there is no licensing issues - then I could advice SOA Suite installation - there should be AS as well and many other features (BPEL e.g.). Personally I cann't see any need for installation manual as all the installation and configuration assistance poceeds automatically. Documentation can be found http://www.oracle.com/technology/documentation/appserver.html - usually zip contains large library of pdf, installation manual including.
Well - my problem is that I have installed partially SOA Suite (configuration assistants failed at web services) on machine without DB server, then I installed DB server and now I am trying to deinstall SOA Suite - but now for some days machine shows 100% CPU consumption and no any visible actions (no new errors as well)... What should I do? Kill the process and try to manually remove SOA? I plan after make another SOA installation after removal of this one.
Thanks in someone can help me!
Maybe you are looking for
-
When-window-activated trigger not firing
Hi, I got this scenario : Opens a form, the When-new-form-instance runs, the When-window-activated runs. But if a message is shown in the when-new-form-instance trigger, the when-window-activated wont run. Anybody whos got a solution for this, as I n
-
Hi everyone, I'm getting a X position over time and I want to plot the position during the acquisition (online). I use a shift register to keep in memory both time and position and then I use a the XY Graph. I have to display all the signals from the
-
Soft key crashes program but works in Flash 8 emulator
I am developing for the Nokia E62 in Flashlite 2.1 using Flash 8, The E62 is a Symbian S60 v 3 phone with a 320 x 240 pixel screen. The Flashlite 2.1 standalone player works fine on it but the phone comes only with a Flashlite 1.1 player. Flash 8 doe
-
Photos missing from ipad that were there this morning
Yesterday I lost my iPhone. It has not been found and must be turned off. I had hundreds of photos on the iPhone that were synced with iCloud. THis morning I was able to see those images on my iPad and so was happy they were not lost. tonight I went
-
Iphone 4s, search screen keyboard keeps overlapping the next menu screens
Hi, it's about a 4S 32G. While being in the search screen, when I tap the home button (to return to the 1st menu screen) it actually returns me to the first menu screenas it should but does not remove (hide) the search keybord! So, half of the menu