1.1 Evolution of the Application Server

   

The concept of an application server has evolved over the past decade or so, combining several different strands of functionality that we'll explore in this section.

1.1.1 Early Beginnings

Long before Java or application servers existed, there was already a need to service transactions between distributed systems. The transaction monitor was originally created to provide a two-phase commit , assuring that transactions were made real only when committed on two different platforms. Examples of early transaction monitors that gained popularity include CICS (from IBM) and Tuxedo (originally developed by AT&T and later acquired by BEA). Tuxedo first appeared in 1983 and evolved from simply guaranteeing reliable transactions to also providing a middle tier for offloading the workload from transaction-processing databases. Use of the middle tier enabled the database to support many more transaction-processing users at higher performance levels.

By the mid-1980s, the transaction monitor was sometimes referred to as a middleware solution and soon came to be known as an application server . Heterogeneous computer and transaction-processing database support, via the X/Open's XA interface, first appeared in 1989. Other functionality soon was added to the middle-tier solutions, including fault tolerance, load balancing, and more security deployment models.

In 1991, Sun Microsystems began developing a new programming tool in anticipation of a coming convergence of computers and digital consumer devices. With few takers for the technology in the early 1990s, Sun's focus turned toward building and enabling applications for the newly popular Internet and to partnerships with companies such as Netscape. Possibly the most important outcome of this research was the emergence of the Java programming language in 1995.

By its nature, the Internet is enabled through a three-tier architecture consisting of the following components , which are shown in Figure 1-1:

  • A thin client (browser) on the front end

  • An application server in the middle tier

  • A database/server on the back end

Figure 1-1. Typical three-tier configuration with Oracle Application Server
figs/oas_0101.gif

Thus, the Internet computing model created another market for middleware at the same time that Java gained popularity for Internet programming. The natural evolution of application servers toward serving and supporting Java-based applications began. Several providers of early transaction monitors merged their middleware offerings into new application server packaging.

Another result of the growth of applications deployment over the Internet via a middle tier was widespread adoption of standardized protocols that allowed these applications to communicate with each other. These protocols now include:


XML

eXtensible Markup Language


SOAP

Simple Object Access Protocol [1] (for messages based on XML)

[1] Although this is the original expansion of the acronym, the current SOAP acronym isn't associated with this name ; see Chapter 11 for details.


WSDL

Web Services Description Language


UDDI

Universal Description, Discovery, and Integration

The last three protocols are used in the deployment of Web Services, which are getting increasing attention because they provide a way to combine different functionality from separate application modules to other applications.

1.1.2 Oracle and Application Servers

Oracle Corporation was born in the late 1970s as a company named RSI. Early relational database technology was provided to government agencies through custom consulting, and was then made commercially available as a product in 1979. In 1983, RSI was renamed Oracle Corporation for consistency with the database product name. At this time, the developers made a critical decision to create a portable version of Oracle (Version 3) that ran not only on DEC VAX/VMS systems (the initial platform for the product), but also on Unix and other platforms.

Early Oracle database implementations were commonly deployed on minicomputers, and many customers began to explore using distributed databases utilizing several of these relatively inexpensive platforms. At about the same time that the first application servers appeared to manage these configurations for transactions, Oracle began building distributed features in the database for handling distributed queries and two-phase transactional commits. Although Oracle was building such capabilities in the database, popular transaction-processing monitor support was added through interfaces such as XA to enable greater scalability and ensure the portability of such applications to the Oracle database.

Oracle8 i , the "Internet database," added native transaction coordination with the Microsoft Transaction Server (MTS) for Windows platforms. To handle the growing number of connections needed, Oracle also added a Connection Manager feature to the database packaging.

Oracle middleware didn't appear in an application server product as such until 1997-98. Oracle Application Server 4.0 was Oracle's first complete attempt to create a Java-based middle tier in response to the growing Internet deployment model.

In 2000, Oracle redesigned its middle-tier product to enable the following:

  • Application services

  • Communications services

  • Connectivity services

  • Integration and commerce services

  • Management services

  • System services

Components provided in these services and with some specific solutions included industry-standard Web Services, transaction and message handling, Portal technology (including portlets and content management), clustering support, integration components, security and directory support, business intelligence solutions, and wireless support. This redesigned product was known as Oracle9 i Application Server or Oracle9 i AS and is the basis of the application server described in this book. The " i " was included in the product name, as it was in the Oracle8 i and Oracle9 i databases, to indicate Oracle's focus on the Internet computing model.

The current version of Oracle's application server product is Oracle Application Server 10 g , where " g " stands for "grid," indicating Oracle's view that grid computing will be an increasingly popular model for database deployment. Grid computing leverages a large number of systems, also known as nodes , on an as-needed basis. Key components in grid computing include the following:

  • Nodes

  • Network attached storage (NAS) or storage area network (SAN) disk devices

  • A database deployable across the nodes (Oracle Database 10 g with Real Application Clusters)

  • A middle-tier infrastructure for access and load balancing (Oracle Application Server 10 g )

Table 1-1 provides a timeline for some key Oracle technology introductions that led to and include the Oracle Application Server family.

Table 1-1. History of Oracle technology introductions

Year

Feature

1979

Oracle Release 2: the first commercially available relational database to use SQL.

1983

Single code base for Oracle across multiple platforms.

1984

Portable toolset.

1986

Client/server and distributed Oracle relational database.

1987

CASE and 4GL toolset.

1993

Oracle7 with cost-based optimizer.

1997

Oracle8 generally available; Oracle previews Oracle Application Server 4.0.

1998

Oracle Application Server 4.0 generally available; Java-based middle tier.

1999

Oracle8 i generally available; Java Virtual Machine in the database.

2001

Oracle9 i Application Server generally available; Oracle integration in middle tier includes Portal technology; OracleAS Web Cache in Oracle9iAS announced.

2001

Oracle9 i generally available.

2003

Oracle Database10 g enables grid computing and simplifies and automates key management tasks ; Oracle Application Server 10 g generally available.


   


Oracle Application Server 10g Essentials
Oracle Application Server 10g Essentials
ISBN: 0596006217
EAN: 2147483647
Year: 2004
Pages: 120

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net