Skip Headers

Oracle Application Server 10g Migrating from WebLogic
10g (9.0.4)

Part Number B10425-01
Go To Documentation Library
Home
Go To Table Of Contents
Contents
Go To Index
Index

Go to previous page Go to next page

A
Additional Feature Comparisons

This appendix provides additional comparative information between WebLogic Server 7.0 and Oracle Application Server 10g. This information consists of:

Java Messaging Service (JMS)

Oracle Application Server 10g and WebLogic Server 7.0 both support JMS 1.0.2. Table F-2 highlights some of the key JMS features supported by both application servers.

Table F-2 JMS Feature Comparison Summary 
Feature Oracle Application Server 10g WebLogic Server 7.0

Pluggable JMS Providers

Yes

Yes

Message Retention and Query Ability

Yes

Yes

Persistence of JMS Messages

Yes

Yes

Failover of Persisted JMS Messages

Yes

No

Message Payloads:

Structured Datatypes, Unstructured Datatypes, Relational Data, Text, XML, Objects, Multimedia Data

Yes

Yes

Message Transports:

SOAP, Net8

Yes

Yes

Secure Access

Yes

Yes

Abstraction of Business Logic, Rules, and Routing into Easily Maintainable Tables

Yes

No

Guaranteed Delivery

Yes

No

Ability to Cluster in a High Availability Configuration

Yes

No

Interfacing with Java and Non Java Clients

Yes

No

Oracle Application Server provides support for JMS in the following manner:

OracleJMS (OJMS)

OJMS is the Java front-end for the Oracle database integrated Advanced Queuing (AQ), which offers secure, transactional, recoverable, guaranteed delivery of messages.

Advanced Queuing provides a number of important facilities. OJMS leverages the Oracle database robustness, query-ability and DML operations, scalability and high availability, and support for all data types in message payload, including relational data, text, XML, and multimedia.

The following general features are discussed:

WebLogic Server does not have the following set of capabilities that Oracle Messaging (JMS) provides:

Java Object Cache

The Java Object Cache is designed to improve access performance for shared Java objects and to reduce SQL-to-Java overhead (database access overhead). The Java Object Cache is distributed and can be accessed in-process, across process boundaries on a single machine, and across processor/machine boundaries.

To improve performance, the creation of Java objects is distributed to avoid bottlenecks. The cache is configurable, allowing objects to be grouped, pooled, pinned, and paged as necessary. Finally, the Java Object Cache is clusterable with updates that can be synchronized across clusters.

The goal of the HTTP-level (for servlets), and EJB clusters is to provide a load balanced and fault tolerant system. The Java Object Cache focuses on providing better performance by distributing pre-computed objects across the Oracle Application Server instances so that expensive computation is done only once.

The Java Object Cache is an in-process cache of Java objects that can be used on any Java platform and by any Java application. It allows applications to share objects across requests, across users, and coordinates the life cycle of the objects across processes. The Java Object Cache enables data replication amongst processes even if they have no island, instance, or cluster relationship amongst each other. This replication provides performance improvement by caching expensive (shared) Java objects no matter which application produced them, and also provides availability improvement in case the sources (for example, database, an external application) required to re-create the Java objects are down. Further, if an object is updated or invalidated in one process, it is also updated or invalidated in all other associated processes. This distributed management allows a system of processes to stay synchronized, without the overhead of centralized control. Moreover, the Java Object Cache also supports versioning of objects, thus allowing different applications to have different versions of an object, which is especially useful during application upgrades.

The Java Object Cache supports two modes of operation: local mode and distributed mode. Using local mode, objects are isolated to a single Java VM process and are not shared. Using distributed mode, the Java Object Cache can propagate object changes - including invalidations, destroys, and replaces- through the cache's messaging system to other communicating caches running either on a single system or across a network (the Java Object Cache messaging system is built on top of TCP/IP).

Thus, while the primary focus of the Java Object Cache is performance improvement, it does indeed have the side effect of improved scalability and availability, since the contents of the cache are available for results computation even when the back-end server is down.

WebLogic Server does not have any feature comparable to the Java Object Cache.

Dynamic Monitoring System (DMS)

Gathering meaningful performance metrics on a deployed application server is essential for an administrator to troubleshoot bottlenecks, identify resource availability issues, and tune the application server. Oracle Application Server provides such a monitoring framework called Dynamic Monitoring Service.

DMS has been instrumented into a number of Oracle Application Server components including the Oracle HTTP Server, OC4J, OracleAS Portal, Oracle SOAP, and JServ. By publishing key metrics within these components and others, DMS provides a comprehensive view into the performance of applications managed by Oracle Application Server.

For instance, metrics such as the number of currently active requests in the Oracle HTTP Server, milliseconds required to parse the incoming request in the OC4J Servlet Engine, total free memory in the JVM, and numerous operating system metrics are published by DMS and displayed through Application Server Control. Since clients such as OEM retrieve DMS data via HTTP connections, these metrics can also be displayed through a browser.

While DMS is built into Oracle Application Server, it is also available as a monitoring framework for developers to utilize when building their own applications. DMS enables application developers to measure and export customized application specific performance metrics, thus making the application easier to support by administrators, developers, and support analysts.

There is a Java API called Java Management Extensions (JMX) that is in some ways similar to DMS and in other ways complimentary to DMS. WebLogic Server has been providing some support for JMX. Both DMS and JMX are being reviewed by the Java Community for possible inclusion into specifications.

Active Components for J2EE (AC4J)

The existing J2EE framework provides a very productive and scalable environment to author and deploy transaction-based, short-lived applications. However, it does not yet fully address emerging E-business requirements of long-lived interactions between autonomous applications. Further, as Web Services proliferate within organizations, Web Services will need to communicate with other Web Services in a loosely coupled environment, over a long period of time, without limiting resources, and surviving abnormal system crashes. Long-lived interactions between autonomous application components and Web Services require that all participants act as peers and communicate in an asynchronous and reliable fashion. To address these issues, Oracle Application Server introduces Active Components for J2EE (AC4J), a programming framework for developing loosely coupled applications, which are consistent, scalable, and recoverable.

AC4J introduces the concept of loosely coupled beans, known as Active Enterprise Java Beans. An AC4J is a standard EJB with the following important features:

There is no AC4J-equivalent feature available in WebLogic Server.

Oracle Application Server TopLink (OracleAS TopLink)

In an enterprise Java environment, one of the most formidable challenges is storing business objects and components in a relational database (RDB). OracleAS TopLink makes application development more productive by offering an easy to use mapping workbench that maps the Java objects to relational databases and by simplifying one of the most difficult aspects of developing applications - persisting information to the database. Using OracleAS TopLink, developers gain the flexibility to map objects and Enterprise Java Beans to a relational database schema with minimal impact on ideal application design or database integrity. The result: developers focused on addressing business needs rather than building infrastructure. OracleAS TopLink is built on JDBC and is portable across any JDBC-compliant database, including Oracles Database, DB2, SQL Server, Sybase, Informix, and Microsoft Access.

The OracleAS TopLink solution offers three key benefits:

In essence, OracleAS TopLink offers the best solution in the market to perform Java-to-relational database object-relational mapping. With OracleAS TopLink, Oracle has blended the Java world and the relational database world in the best way possible, and solved one of the greatest challenges facing J2EE developers: productively mapping their Java objects and entity beans to a relational database.

With Oracle Application Server 10g, OracleAS TopLink is an integrated component of Oracle Application Server. Specifically, the OracleAS TopLink framework is integrated with the Oracle Containers for J2EE, and the OracleAS TopLink mapping Workbench is integrated with JDeveloper.


Go to previous page Go to next page
Oracle
Copyright © 2003 Oracle Corporation.

All Rights Reserved.
Go To Documentation Library
Home
Go To Table Of Contents
Contents
Go To Index
Index