eas311 benchmark comparison of j2ee application servers kashif ahmed sr. consultant [powerobjects]...

50
EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] [email protected] (612) 339-3355

Upload: eustacia-anthony

Post on 11-Jan-2016

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

EAS311 Benchmark Comparison of J2EE Application Servers

Kashif AhmedSr. Consultant [PowerObjects][email protected] (612) 339-3355

Page 2: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

Who We Are…

PowerObjects is a Minneapolis-based, multi-million dollar software development and consulting firm.

Sybase Consulting Partner Value Added Reseller Premier Consulting Partner Custom Solutions Provider

Specialize in EAServer and Web Development Offer Web Application Hosting Certified Developers on Staff

PowerBuilder, Java and Microsoft

Our president, Dean Jones, is a member of Team Sybase

Page 3: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

AGENDA

Introduction to J2EE and EJBs Why Application Servers? Introduction to Application Servers Installation Requirements Interactive Demo Comparison Matrix Cost Comparison Performance Comparison Conclusion and Summary References Questions

Page 4: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

INTRODUCTION TO J2EE AND EJBs

J2EE Environment What are Enterprise Java Beans (EJBs)? Basic EJB Environment Types of EJBs Why EJBs?

Page 5: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

INTRODUCTION TO J2EE AND EJBs

J2EE Server Overview The J2EE platform is essentially a

distributed application server environment – a Java environment that provides the following:

A runtime infrastructure for hosting applications

A set of Java extension APIs to build applications

J2EE Environment

Page 6: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

INTRODUCTION TO J2EE AND EJBs

Enterprise Java Beans (EJBs) Enterprise JavaBeans (EJB) is an architecture for server-side,

component-based distributed applications written in Java.

They provide an environment in which components from several manufacturers can be assembled into a working application.

Enterprise beans are specialized components that can encapsulate session information, workflow, and persistent data.

The EJB specification provides a solution for a clear separation of the business logic from the details.

What are Enterprise Java Beans(EJBs)?

Page 7: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

INTRODUCTION TO J2EE AND EJBs

The EJB components run inside the container of an EJB server.

The container has the connection to the database or to other components.

An EJB client can access the EJBs from

the same Java Virtual Machine (JVM) or from another JVM over remote interfaces.

The EJB home component is comparable to a factory for the EJB objects.

The EJB objects retrieved from the home components can be local or remote objects.

Basic EJB Environment

Page 8: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

INTRODUCTION TO J2EE AND EJBs

An enterprise bean has three parts: The home interface is used by the client to create and

discard beans.

The remote interface is used by the client to execute the bean’s business methods.

The implementation or bean class is where the bean’s business methods and callback methods are implemented. The client never invokes these methods directly; they are invoked by the bean container

Basic EJB Environment

Page 9: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

INTRODUCTION TO J2EE AND EJBsTypes of EJBs

Enterprise Bean Type Purpose

Session

• Performs a task for a client• Come in two flavors: stateful and stateless. Stateful

session beans maintain state between method invocations; stateless session beans do not

Entity

• Represents a business entity object that exists in persistent storage

• Similar to enterprise objects (the objects that represent an instance of a data entity in Enterprise Objects). They encapsulate access to data stored in databases and other types of data stores.

Message-Driven• Acts as a listener for the Java Message Service API,

processing messages asynchronously

Page 10: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

INTRODUCTION TO J2EE AND EJBs

ISSUE: The application developers are confronted with many

challenges. Some of the most important ones are managing concurrency, persistence and transactions. As a result, the developers have to either develop proprietary code or buy supporting frameworks.

SOLUTION: These problems are solved by using enterprise beans. The use

of enterprise beans allow developers to focus on the business logic and release them from coding infrastructure and middleware logic. As a result, developers become more productive and efficient.

As with most other technologies, enterprise beans do not provide the unique solution to all problems. Using enterprise beans has advantages and disadvantages. However, the advantages outweigh the disadvantages, especially for more complex applications that require a sophisticated, robust, and distributed persistent model.

Why EJBs?

Page 11: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

WHY APPLICATION SERVERS?

Application servers offer server-side support for developing and deploying business logic.

Business logic may be located on the server or, more often, partitioned across client and server.

Enterprises rely daily on server-side business processing, ranging from mainframe transaction systems to client/server DBMS stored procedures.

Page 12: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

WHY APPLICATION SERVERS?

Running business processes on the server provides the following: Re-use:

A variety of client applications (HTML-only, Java applets, COM+ components, etc.) can share the same business logic.

Intellectual property protection: Sensitive business logic often includes or manages trade

secrets that could potentially be reverse engineered.

Security of business logic: By leaving the logic on the server, user access can be

controlled dynamically, revoked at any time.

Security of network communications: Application servers allow use of Internet-standard secure

protocols like SSL or HTTPS in place of less secure proprietary DBMS protocols.

Page 13: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

WHY APPLICATION SERVERS?

Manageability: Server-side applications are easier to monitor, control,

and update.

Performance: Database-intensive business logic will often perform

much better when located near the database, saving network traffic and access latency.

Download time:I*Net (intranet + extranet + Internet) clients most often

require access to many different business processes that could require substantial network bandwidth and client memory to download all logic to the client.

Compute load: Running computation-intensive applications on servers

saves client cycles.

Page 14: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

INTRODUCTION TO APPLICATION SERVERS

BEA WebLogic 7.0

Sybase EAServer 4.2IBM WebSphere 5.0

Page 15: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

INTRODUCTION TO APPLICATION SERVERS

SummaryEAServer has open standards-based support for multiple component models and innovative new performance features and tuning options. Provides various tools and utilities for an easy setup, deployment, and configuration. Its administration capabilities are not wizard-based but still powerful.

Sybase EAServer 4.2

Strengths  Weaknesses

It provides robust performance and scalability support; full J2EE platform support; it provides GUI and CLI tools for deployment and configuration; provides better EJB/Servlet/JSP support; Easily configured and managed clustering. 

Limited monitoring capabilities; lack of wide third-party tools support; missing some features for RAD and wizard-based deployment and configuration; Bigger footprint; Documentation needs improvement.

Page 16: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

INTRODUCTION TO APPLICATION SERVERS

Summary WebLogic offers full J2EE support as well as providing support for prominent

component models (COM). They seem to come out with features ahead of those becoming part of standards giving them the status of a pioneer in server-side Java development. Product offers improved development, deployment, and administrative support.

BEA WebLogic 7.0

 

Strengths 

 

Weaknesses

Full J2EE support; Java- centric; Proprietary extensions and value-added features and utilities; Good support from third-party vendors; Wizard-based deployment; Small footprint; Customizable Administration GUI; Good documentation.

Difficult to configure for high performance and clustering; lack of advanced caching/pooling features for scalability.

Page 17: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

INTRODUCTION TO APPLICATION SERVERS

Summary WebSphere provides a comprehensive array of offerings for the J2EE platform

including complete tools support. It also provides sophisticated management tools (extensive integration with Tivoli line), includes powerful features for self-optimizing, self-configuring, self-protecting and RAS/Troubleshooting

IBM WebSphere 5.0

Strengths 

Weaknesses

WebSphere is Java-centric; Strong contribution to J2EE efforts; It is one of the leading application servers that provides server management tools/APIs, transaction support, security, and messaging infrastructure. It provides custom development and deployment IDE and tools; also provides integration with complimentary third-party products and other IBM products.

Performance features are not as advanced; Setup is complex and management of server also includes complexities.

Page 18: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

INSTALLATION REQUIREMENTS

Minimum Hardware & Software Requirements(Note: The installation program requires 170MB of disk space.) Intel® Pentium® 90 MHz processor minimum or Higher with CD drive 32 MB RAM minimum (64 MB RAM is recommended) Disk space:

Requires 400MB minimum disk space for the FULL installation of Sybase Enterprise Application Server.

Display resolution:

800 x 600 display minimum (1024 x 768 recommended) Supports the following operating systems:

• Windows® 2K

• WindowXP• WinNT 4 w/ Service Pack 5 or higher • Sun Solaris 2.6 or 2.8 requires Sun patches • HP-UX 11.0 requires HP patches • IBM AIX 4.3.3 and 5.1.

Sybase EAServer 4.2

Page 19: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

INSTALLATION REQUIREMENTS

Minimum Hardware & Software Requirements Intel® Pentium® II processor minimum (Pentium 200 MHz or higher is

recommended) 256 MB RAM minimum (512 MB RAM is recommended) Disk space:

Requires 170 MB minimum disk space for installing WebLogic Application server.

Display resolution: 800 x 600 display minimum (1024 x 768 recommended)

Supports the following operating systems:

• Windows® 2K Server / Advanced Server

• WindowsXP• WinNT 4 w/ Service Pack 6 or higher• Red Hat Linux• SuSE, Version 7+• UP UX• IBM AIX , IBM AS/400

BEA WebLogic 7.0

Page 20: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

INSTALLATION REQUIREMENTS

Minimum Hardware & Software Requirements Intel® Pentium® processor minimum (Pentium 500 MHz or higher is

recommended) with CD-ROM. 256 MB RAM minimum (512 MB RAM is recommended) Disk space:

Requires 520 MB minimum disk space for installing WebSphere Application Server (including IBM Software Development Kit).

Display resolution: 800 x 600 display minimum (1024 x 768 recommended) 800 x 600 display minimum ( 1024 x 768 recommended )

Supports the following operating systems:• Windows® 2K w/ Service pack 3 or higher• Solaris ver. 8 or 9• WinNT 4 w/ Service Pack 6 or higher• Red Hat Linux, Version 8 or SuSE, Version 7.2• HP-UX ver 1.1 with Quality Pack of December 2002• AIX version 4.3.3 with the 4330-10 recommended maintenance package.

IBM WebSphere 5.0

Page 21: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

INTERACTIVE DEMO

BEA WebLogic 7.0

Sybase EAServer 4.2IBM WebSphere 5.0

Page 22: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

INTERACTIVE DEMOSybase EAServer 4.2

Page 23: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

INTERACTIVE DEMOSybase EAServer 4.2

Page 24: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

INTERACTIVE DEMOBEA WebLogic 7.0

Page 25: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

INTERACTIVE DEMOIBM WebSphere Application Server 5.0

Page 26: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

INTERACTIVE DEMOIBM WebSphere 5.0 – Test Environment

Page 27: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

COMPARISON MATRIX

EAServer 4.2 WebLogic 7.0 WebSphere 5.0

Java Authentication & Authorization Service (JAAS)

Supports v1.0 for authentication only.

Supports v1.0 for authentication only.

Full support for v1.0.

Rich Client Supports Application clients, C/C++ clients, ActiveX, and PowerBuilder clients.

Supports Application clients.

Supports Application clients, C/C++ clients, ActiveX clients (requires ActiveX to EJB bridge).

XML Performance Tools

Message Bridge which compiles XML schemas into Java classes at design time and binds specific XML documents to specific objects at runtime.

XML Streaming APIs for faster parsing of document (improvement over SAX event parser); FastParser (non-validating) for SOAP and WSDL document parsing.

None.

All three application servers support and offer similar Java and industry standards.

Java and Industry Standards

Page 28: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

COMPARISON MATRIX

EAServer 4.2 WebLogic 7.0 WebSphere 5.0

Java (CORBA) Yes. No. (Supports for CORBA components exists in WebLogic Enterprise product).

No.

COM/ActiveX/VB Yes. Yes through jCOM bridge. Supports bi-directional invocation.

No.

C/C++ (CORBA) Yes. Yes. Requires special Tuxedo C++ client ORB.

No.

PowerBuilder Yes. No. Must use COM. No.

MASP Yes. Clients can invoke methods on stateless components via TDS (using Open Client or ODBC) as if they are executing stored procedures.

No equivalent. No equivalent.

Server-side Component Model

Page 29: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

COMPARISON MATRIX

EAServer 4.2 WebLogic 7.0 WebSphere 5.0

Sun Solaris Solaris 8, 2.6. Solaris 8, 9, 2.5.1, 2.6, 2.7.

Solaris 2.8.

Linux Red Hat, Red Flag. Miracle, Red Hat, SuSe. Red Hat 2.1, SuSe 7.0.

Windows Windows NT 4.0/2000/XP

Windows 2000, NT 4.0. Windows NT 4.0/2000.

IBM AIX AIX 4.3.3, 5.1. AIX 4.3.3, 5L v5.1. AIX 4.3.3, 5.1.

UP UX HP UX 11.0. HP-UX 11.0 a. No.

Others None. No 64 bit releases on major platforms are available.

IBM AS400 V4/V5, Compaq OpenVMS, Compaq Tru64 Unix.

OS/400 Version 5 (64 bit platform).

Platforms Supported

Page 30: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

COMPARISON MATRIX

EAServer 4.2 WebLogic 7.0 WebSphere 5.0

Dynamic Finder Query

Not supported. Possible extension by providing declarative expressions for dynamic finder queries.

Supported but requires programming.

Yes thru custom executeQuery dynamic API.

Bulk CMP SQL Operations

Supports inserts/updates/deletes thru CMP Driver Wrapper.

Supports Inserts only. None.

EJB-SQL: Mappings based on DBMS

Supported. Not Supported. Supported.

EJB Utilities for automatic Home/Remote interface and DTD generation

None. EJBGen, DDInit.EJBInit. None.

EJB Features

Page 31: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

COMPARISON MATRIX

EAServer 4.2 WebLogic 7.0 WebSphere 5.0

Authentication Supports OS authentication; Custom authentication; JAAS Support.

JAAS based authentication. Provides realms that delegate to NT, Unix, RDBMS, and LDAP. Allows custom authentication by providing alternate realm.

JAAS supported; Custom authentication; Supports Kerboros V5 for resource adapter authentication; Supports OS, RDBMS, LDAP;

Adjudication Support

Available through the use of JAAS.

Yes. Provides Security SPI APIs for third party implementation.

No.

Advanced Security

Yes. LDAP/DBMS based authentication; Policy based Access Control; Fine grained access control (also known as Asset based security).

No. Yes. Implements JSR 115.

Security Features

Most of the Security features are common in all three application Servers.

Page 32: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

COMPARISON MATRIX

EAServer 4.2 WebLogic 7.0 WebSphere 5.0

Load Balancing Yes. Supports random, weighted, round-robin, and automatic (load based) type of load balancing. Based on name server. No dynamic refresh of naming after first lookup on the client side; Preference for locally available component.

Support for LB/HA missing for JDBC resources

Yes. Supports load balancing of JMS server, and JDBC resources; Parameters based routing; Replica-aware stubs for object collocation and transaction collocation. Better support location based LB.

Supports LB/HA by the use of multi-pool.

Yes; Supports various load balancing choices such as load based, round robin, etc. Load balancing can utilitize data obtained by their custom hooks to certain IBM Operating systems but better LB.

Appears to have load balancing capability for the resources such as JDBC.

Failover Both Web and EJB containers.

Both Web and EJB containers.

Both Web and EJB containers.

Each provides different methods for increasing performance and scalability.

Performance and Scalability Features

Page 33: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

COMPARISON MATRIX

Thread Management

EAServer 4.2 WebLogic 7.0 WebSphere 5.0

Native threads Always uses platform native threads which are better for performance; Use thread per connection which is not good for high volume usage.

Use platform threads; On Unix systems, can use native or green threads depending upon choice of JVM; Based on worker thread model.

Uses platform threads; On Unix systems, can use native or green threads depending upon choice of JVM; Based on worker thread model.

Resource Governing

Supports Thread Monitors which can be assigned to components/methods thereby allowing only set number of threads to invoke that component/method; Requires skeleton regeneration currently but can be fixed easily.

Yes, by assigning components to a specific executeQueue. Requires Stub regeneration every time. Not as good.

None.

Performance and Scalability Features

Page 34: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

COMPARISON MATRIX

EAServer 4.2 WebLogic 7.0 WebSphere 5.0

JDBC-CMP Optimization

Implements advanced CMP optimization via a powerful CMP runtime engine and JDBC driver wrapper by batching statements and using stored procedures; Uses Transaction local cache for optimizing EJB operations such as load and store. All optimizations available for Oracle and Sybase databases and entity beans without requiring any code regeneration.

Prepared Statement Caching; Only applicable for Oracle database. Requires regeneration of code if database system is changed.

EJB Data caching; Prepared statement cache (not for all databases);

Transaction Optimization

Provides advanced transaction and security optimization via a light weight container (LWC) for EJBs hosted on the same server.

None. No documentation.

Performance and Scalability Features

Page 35: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

COMPARISON MATRIX

EAServer 4.2 WebLogic 7.0 WebSphere 5.0

Memory Management

Allows for memory management by controlling growth by setting max limit on various pools, instances, and cache sizes; Relies on JVM’s built-in GC capabilities and fine tuning using various JVM options; Only security permission cache (authentication/authorization/role information) is timeout based which could result in growth getting out of control.

Auto-detection of low memory and forced garbage collection. Still requires some setting.

Based on JVM tuning.

Miscellaneous Supports flow-control feature that allows a maximum limit on simultaneous active HTTP or IIOP connections; Listener backlog buffering.

Connection backlog buffering; Detecting stuck threads; Platform optimized; native socket multiplexor; Streaming XML APIs.

None.

Performance and Scalability Features

Page 36: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

COMPARISON MATRIX

EAServer 4.2 WebLogic 7.0 WebSphere 5.0

EJB Utilities None. Relies on IDE class and DTD generation capabilities.

EJBC, EjbGen, and DDInit(EJBInit) for EJB code generation and verification, DTD creation, and deployment.

Application Assembly Tool (AAT)

XML Utilities Message-Bridge for Java; XCM for encoding verification and character set conversion of XML data.

XML Editior; FastParser; XML Streaming APIs.

None.

IDE Integration PowerJ, JBuilder, PowerDesigner for WebServices, Visual Café, Together Control Center.

Java IDE: Jbuilder, Sitraka Jclass, Visual Café, Forte for Java; Mobile: Nokia SDK; WebServices Development platform: Workshop, AltoWeb.

JBuilder, Websphere Studio, Visual Café.

Development and Deployment Aids

Page 37: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

COMPARISON MATRIX

EAServer 4.2 WebLogic 7.0 WebSphere 5.0

Repository Versioning

Yes. No No

Web Console In development for future.

Yes; Strong context based help.

Yes. Multi-user support; Struts and Tiles Implementation; Also provides advanced scripting environment (Wsadmin) based on Bean Scripting Framework (BSF); Supports multiple scripting languages.

Wizard based Deployment

In development for 5.0.

Yes; Most system administration and deployment functions are wizard driven; customization possible by the use of Mbeans and JMX APIs; Very good context-based help for wizard usage.

Yes . GUI Assembly utilities for components such as EJBs, JSPs, etc.

Server Administration

Page 38: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

COMPARISON MATRIX

EAServer 4.2 WebLogic 7.0 WebSphere 5.0

Self-optimizing No. No. Yes.

Self-configuring No. No. Yes.

Self-protecting (security)

No. No. Yes.

Ability to install sub-components

Yes. No. Yes.

Default Server Yes. No. Yes.

Command line utility for configuration

Yes (jagtool/jagant). Easy configuration support after deployment by setting individual properties. Very good.

No. Configuration requires creating WebLogic specific DTD XML files and doing redeployment. Not good.

AAT, ACRCT, XML-SOAP Tool for WS configuration and management; Name Space Dump tool.

OEM Features

Page 39: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

COST COMPARISON

Page 40: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

COST COMPARISON

Enterprise Edition: $20,000 ($28,000 UNIX): Concurrent and per CPU

pricing available.

Advanced Edition: $7500 ($11,250 UNIX): Concurrent and CPU pricing

available.

Small Business Edition: $2995: Server pricing only.

Sybase EAServer 4.2

Page 41: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

COST COMPARISON

Per CPU license: License based on ‘per CPU’ pricing: Dual-processor system requires two

licenses, quad-processor system requires four licenses.

Concurrent User license: Start with 50 Concurrent User license and increment by 50 users each time. If you have dual- or quad-processor machines and the number of users is

minimal, then a Concurrent User license is recommended.

i.e. Quad-processor system with Advanced Edition license: Per CPU for 100 users = 4 x 7,500 = $30,000

Concurrent User license for 100 users(requires two 50 user licenses) = 2 x 7,500 = $15,000

‘Per CPU’ vs. ‘Concurrent User’ License

Page 42: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

COST COMPARISON

Enterprise Edition: ( Clustered / Premium ) $17,000 (Win, Linux)-Per CPU licensing only with unlimited

users.

Advanced Edition: ( Base Version - Advantage ) $10,000 (Win, Linux)-Per CPU licensing only with unlimited

users. Includes a free Developers' Kit for 4 developers (a $2,500

value)

BEA WebLogic Application Server 7.0

Page 43: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

COST COMPARISON

Enterprise Edition: $27,000 (Win, Linux) -Per CPU licensing only with

unlimited users.

Advanced Edition: $12,000 (Win, Linux)-Per CPU licensing only with

unlimited users.

Express Edition: $2000 (Win, Linux)-Per CPU licensing only with

unlimited users.

IBM WebSphere Application Server 5.0

Page 44: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

COST COMPARISON GRAPHEAServer, WebLogic, WebSphere

0

5000

10000

15000

20000

25000

30000

EnterpriseEidtion

Advance Edition Small BusinessEdition

EAServer 4.2

WebLogic 7.0

WebSphere 5.0

Co

st

$$

Page 45: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

PERFORMANCE COMPARISON

WebLogic startup time Approx: 12 sec to 25 sec.

Memory used during startup Approx: 18,000 KB to 35,000 KB.

Memory used while idle Approx: 17,816 KB

CPU Usage while starting up Approx: 81% - 95%

Shutdown Time Approx: 2 sec.

Jaguar Server startup time Approx: 15 sec to 25 sec.

Memory used during startupApprox: 25,000 KB to

30,000 KB.

Memory used while idle Approx: 13,000 KB

CPU Usage while starting up Approx: 60% -80%

Shutdown Time Approx: 1 sec.

Jaguar Manger startup time

Approx: 15 sec to 20 sec.

JagMgr. memory used during startup

Approx: 20,000 KB to 25,000 KB.

JagMgr. memory used while idle

Approx: 21,000 KB

JagMgr. CPU Usage while starting up

Approx: 85% - 90%

Shutdown Time Approx: 1 sec.

WebSphere startup time Approx: 90 sec to 1 min.

Memory used during startup Approx: 90,000 KB to 106,000 KB.

Memory used while idle Approx: 15,000 KB

CPU Usage while starting up Approx: 85% - 97%

Shutdown Time Approx: 5 sec.

Server Startup and Shutdown time and memory usage.

Page 46: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

SUMMARY / CONCLUSION

As you can see, there is no clear winner in the J2EE application server market. EAServer, WebLogic and WebSphere all offer full J2EE platform support and each has its own strengths and weaknesses. Application server selection should take into consideration a number of different factors including:

How much a company has budgeted for hardware/software purchases? What hardware resources are currently available to the developer? What is the existing development platform? What existing technical skills do your developers have? What is the time frame for project completion?

Conclusion

Page 47: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

REFERENCES

Sun J2EE Tutorial: http://java.sun.com/j2ee/tutorial/1_3-fcs/doc/Overview2.html

Enterprise Bean: http://java.sun.com/j2ee/tutorial/1_3-fcs/doc/EJBConcepts.html

Enterprise Java Bean Intro: http://developer.apple.com/techpubs/webobjects/Enterprise_JavaBeans/Introduction/chapter_2_section_2.html

WSAD home page http://www-3.ibm.com/software/ad/studioappdev/

WebSphere related topics http://www.websphere-world.com/

WebSphere Central http://www.webspherecentral.com

IBM RedBooks http://www.redbooks.ibm.com/

Sybase Web site http://www.sybase.com (Note: comparison matrix is researched by Sybase)

WebLogic Web site http://www.bea.com

IBM WebSphere Application Server http://www.ibmlink.ibm.com/usalets&parms=H_202-167

URLs

Page 48: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

QUESTIONS?

Page 49: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

CONTACT PowerObjects

Send E-mail and Questions to: [email protected] [email protected] [email protected]

Visit our Web site: http://www.powerobjects.com To download this presentation and related code:

http://www.kashifahmed.com/papers

Call Us: PowerObjects office: 612.339.3355

Page 50: EAS311 Benchmark Comparison of J2EE Application Servers Kashif Ahmed Sr. Consultant [PowerObjects] kashif@powerobjects.com (612) 339-3355

Please take one of my business cards

Kashif AhmedSr. Consultantwww.powerobjects.com

401 2nd Ave. S. Suite 843Minneapolis, MN 55401

Office 612.339.3355 x 118

fax [email protected]