appendix c. bea weblogic server review - fots -...
TRANSCRIPT
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 91
Appendix C. BEA WEBLOGIC SERVER REVIEW This document reviews the BEA WebLogic Server v6.1 application server, but refers to the v7.0 bèta where appropriate.
Notational convention Text Marked Inactive Private Info Not Disclosed
Primary Services
Advertized Min. Mem. Req. 64 MB Measured (Clean) 50 MB
Adhemar (NT)
Measured (ECperf) Private Info Advertized Min. Mem. Req. 64 MB Measured (Clean) 90 MB resident,
371 total size
Memory Consumption
Panda (Solaris)
Measured (ECperf) Private Info Thread Pooling YES Socket Multiplexing YES
Resource Management
Pooling See Web Tier, Application Tier, Information Tier Licensed YES
J2EE 1.2 YES Compatible J2EE 1.3 NO1 JTA v1.0 YES (v1.0.1) ∈ J2EE v1.2+ Transaction
Manager JTS YES JNDI v1.2 YES ∈ J2EE v1.2+ Naming &
Directory AS > LDAP NO HTTP Basic YES HTTP Digest YES Form YES
∈ J2EE v1.2+ Client Authentication
SSL YES2 + Authorization JAAS v1.0 Part ∈ J2EE v1.3+
SSL v3.0 YES ∈ J2EE v1.2+
Security
Secure Communication TLS v1.0 NO3 ∈ J2EE v1.3+
v1.0 YES ∈ J2EE v1.2+ HTTP
v1.1 YES HTTPS YES
Java IDL YES ∈ J2SE v1.2+ ⊂ J2EE v1.2+ RMI-IIOP YES ∈ J2EE v1.3+
OMG
CSIv2 NO4 ∈ J2EE v1.3+ YES (v1.0.2)
XA Y5 ∈ J2EE v1.2+ JMS v1.0
NO
Interoperability
Messaging
JAF v1.0 YES ∈ J2EE v1.2+
1 Yes for v7.0. 2 See http://edocs.bea.com/wls/docs61/adminguide/cnfgsec.html#1068298. 3 Yes for v7.0: http://edocs.bea.com/wls/docs70/secintro/model.html#1025955. 4 Yes for v7.0: http://edocs.bea.com/wls/docs70/secintro/model.html#1025955. 5 JMSConnectionFactory>XAConnectionFactoryEnabled=true
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 92
v1.1 YES6 ∈ J2EE v1.2 YES
v1.2 NO ∈ J2EE v1.3
JavaMail
NO YES ∈ J2EE v1.3+
SAX v2 YES/NO DOM v2 YES/NO
Part
XSLT YES/NO
XML JAXP v1.1
NO YES
JAXB NO JAXM NO JAX-RPC NO7 JAXR NO
Soap v1.18 (no headers, no custom data types, attachments ignored) over HTTP(S) WSDL v1.1 RPC-based: SLSB
YES
Msg-based: eg. MDB
Part
Other
NO
Full API
NO
Web Services
UDDI9 NO WAR NO EJB-JAR YES RAR YES10
Deployment Propriatary Deployment Descriptor Required? EAR NO
Tier Support
YES ∈ J2EE v1.2 WAR YES/NO Servlet Names YES/NO Init Params YES/NO isSecure YES/NO
Part
Role Based Security YES/NO
v2.2
NO YES11
∈ J2EE v1.3
Filters YES/NO Part Event Listeners YES/NO
YES Version
v2.3
NO
Servlet
NO YES ∈ J2EE v1.2
Custom Tags YES/NO Part Servlet v2.2 Based YES/NO
v1.1
NO YES ∈ J2EE v1.3
XML Syntax YES
Web Tier
JSP YES Version
v1.2
Part12 Servlet v2.3 Based YES
6 v1.1.3: http://edocs.bea.com/wls/docs61/programming/topics.html#1058886. 7 Yes for v7.0: http://edocs.bea.com/wls/docs70/webServices/overview.html#1036001. 8 Soap v1.2, Swa, … for v7.0: http://edocs.bea.com/wls/docs70/webServices/overview.html#1023894. 9 Yes for v7.0: http://edocs.bea.com/wls/docs70/webServices/overview.html#1054350. 10 See http://e-docs.bea.com/wls/docs61/adminguide/jconnector.html#1234342. 11 Final draft specification. 12 See http://edocs.bea.com/wls/docs61/jsp/intro.html#49347.
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 93
NO Page Caching Custom Tags YES
NO
Caching Deployment Elements NO13 YES ∈ J2EE v1.2 v1.1
NO YES ∈ J2EE v1.3
MDBs YES Local Interfaces YES EJB Relations YES EJB-QL (select & find) YES Home Methods YES
run-as NO
Part14
security unchecked NO
EJB Version
v2.0
NO Dynamic Proxies YES15 Object
Distribution Collocation Optimization YES Method Level YES Element: transaction-isolation
CMT RM Isolation Levels16
NO Optimistic None17 DB Locking
Strategies Pessimistic Element: concurrency-strategy=Database Optimistic None App Tier Locking
Strategies Pessimistic Element: concurrency-strategy=Exclusive
Transactions
Deadlock Detection NO18 Server Level YES Elements: ExecuteQueue, JMSThreadPoolSize
Thread Pooling
NO Bean Level
Element: max-beans-in-free-pool SLSB Element: initial-beans-in-free-pool
SFSB None Element: max-beans-in-free-pool EB Element: initial-beans-in-free-pool Element: max-beans-in-free-pool
YES
MDB Element: initial-beans-in-free-pool
Object Pool Management
NO Server Level YES Element19: None
Resource Management
Socket Multiplexing
NO SFSB cache-type=NRU|LRU
Also: max-beans-in-cache YES
EB cache-type=NRU|LRU Also: max-beans-in-cache
Replacement Management
NO
Application Tier
Caching
Manage YES20
13 Yes for v7.0: http://edocs.bea.com/wls/docs70/notes/new.html#1068049 14 v7.0 has full compliance (J2EE 1.3 certified). 15 Dynamic proxies can be used for RMI: http://e-docs.bea.com/wls/docs61///////rmi/rmi_program.html#1000009048 and generated for EJBs automatically (ejbc delegates to rmic). 16 http://e-docs.bea.com/wls/docs61/ejb/reference.html#1196210 17 concurrency-strategy=Optimistic for v7.0. See http://e-docs.bea.com/wls/docs70/ejb/reference.html#1139340 18 Only through the database: http://www.infogain.com/futurethought/weblogic_overview.htm. 19 ThreadPoolPercentSocketReaders is irrelevant here as it specifies the ratio socket readers/workers.
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 94
YES delay-updates-until-end-of-tx Stores in Application Tier
NO Delay stores to commit time NO
A Element: db-is-shared=false; B Element: db-is-shared=true C Element: max-beans-in-cache=0, db-is-shared-true
Commit Options
D21 Elements: concurrency-strategy=ReadOnly; read-timeout-seconds=X
Read-Mostly YES Element: finders-load-bean (true by default)
YES Element: field-group (all fields if none specified)
YES Field Grouping
NO
Lazy Loads
NO Tuned CMP Updates YES22
Automatic Destination Reconnect for MDBs YES JDBC 2.0 Extensions
YES ∈ J2EE v1.2+ Connection Pooling
YES
Type 1 NO DB: Oracle 8.1.6, 8.1.7, 9.0.1 YES + 3rd Party Drivers
Type 2
NO Type 3 YES
DB: Informix OnLine versions 7.x, 9.x, with 7.x data types, plus the 9.x INT8 and SERIAL8 data types Microsoft SQL Server 6.5, 7.0
Oracle Thin Sybase jConnect DB2
YES
3rd Party
Informix JDBC
NO XA
Type 4
NO Type 1 NO
YES DB: Oracle Type 2 NO
Type 3 YES24 YES 3rd Party Oracle Thin25
Relational DB Integration
JDBC Drivers23
XA
Type 4 NO ∈ J2EE v1.2+
EIS: XA EIS: EIS: Siebel CRM
YES
Included Connectors26 NO
XA EIS: SAP R/3
JCA 1.0
NO
Information Tier
EIS Integration
Other Tuxedo Connector: Java Application-to-Transaction Monitor Interface (JATMI)
Clustering
20 This requires a persistent cache with bidirectional datasource synchronization decoupled from commit time. 21 Read-only cached, with timed update. 22 See http://edocs.bea.com/wls/docs61/ejb/cmp.html#1072366. 23 See http://e-docs.bea.com/wls/docs61/jdbc/intro.html#1029685. 24 “The JTS driver is used in distributed transactions.” 25 See weblogic.developer.interest.jdbc “Re: Type-3 vs Type-4 driver for Oracle” on 22/04/2002. 26 No Connectors in WebLogic Server. WebLogic Integration however provides Siebel CRM and SAP R/3 connectors. http://www.bea.com/products/weblogic/integration/wli_app_intg_wp.pdf p. 36. It also provides a tool to create connectors and generate an XML based session façade for use in BPM.
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 95
Atomic Homogeneous Deployment NO27 Subpartitioning YES Automatic JNDI Discovery NO28 Lifecycle Event Framework NO
Web Server: Apache Web Server: Microsoft Internet Information Server (ISAPI) Web Server: Netscape Enterprise Server Plug-In (NSAPI)
YES
LB Algo’s RR29
Web Server Plugin
NO YES LB Algo’s RR/WRR /Random Servlet Proxy NO YES LB Algo’s RR/WRR/Load/Random
/First_Available Integrated LB in default web server
NO YES LB Algo
Limitations None, if cookie integrated
LB HW Support
NO In-Memory YES File YES
YES HTTP Session Replication
JDBC YES
Failover
NO
YES
Clean Shutdown NO30
Web
NO Architecture Distributed YES Clean Shutdown NO31
JNDI
NO Load Balancing RR/Load/Random by stateless-
bean-load-algorithm Specialized by custom class32
EJBHome
Auto Failover Intra33 Load Balancing Same as EJBHome LBA34
YES
EJBObject Auto Failover Intra: stateless-bean-methods-are-
idempotent=true Inter: stateless-bean-methods-are-idempotent=false
SLSB
NO
YES
EJB YES
SFSB YES EJBHome Load Balancing RR/Load/Random by home-load-algorithm
27 NO by default, but YES for a specialised JMX tool: ftp://edownload:[email protected]/pub/downloads/jmxmonitor.zip (on http://dev2dev.bea.com/code/samples.jsp?highlight=samples). WebLogic v7.0 ensures atomic homogeneous deployment by default (see news: weblogic.developer.interest.clustering>Atomic Homogeneous Deployment). 28 WL recommends to assign an OS DNS name to the cluster. 29 See http://e-docs.bea.com/wls/docs61/cluster/features.html#1006780. 30 Yes for v7.0 through “suspend/resume”. 31 WL will probably never implement this as it requires the server to track all downloaded client stubs and generates a huge network overhead for a simple server suspension. Instead, WL relies on a basic failover. 32 Use a custom class to implement LB: http://e-docs.bea.com/wls/docs61/ejb/reference.html#1070646 33 SLSB EJBHome calls are idempotent. See news: weblogic.developer.interest.clustering>Automatic Failover. 34 The documentation for v6.1 (nor for v7.0) does not specify the default LB algorithm and the reference for v6.1 (nor for v7.0) contains no element. Geert Lingier (BEA) answered the question.
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 96
Specialized by custom class Pin if home-is-clusterable=false
Auto Failover Inter35 Load Balancing None (pin)36 EJBObject Auto Failover Inter37
In-Memory YES File YES JDBC YES
YES
Client Stub NO
State Replication
NO NO
Load Balancing RR/Load/Random by home-load-algorithm Specialized by custom class Pin if home-is-clusterable=false
EJBHome
Auto Failover Inter38 RO None (pin)39 Load Balancing RW None (pin)40 RO Intra if home-is-
clusterable=true
EJBObject
Auto Failover
RW Inter if home-is-clusterable=true41
Optimistic Element: App Tier Locking Strategies
Pessimistic Element:
Deadlock Detection YES/NO Write Update
YES/NO
YES Peer/RM Revalidate
Y42
Write Invalidate
NO
Manage Stores in App Tier
NO A Element: B Element:
Commit Options
D43
Element:
Y
Read-Mostly YES/NO
YES
Distr. Shared Cache
NO44
EB
NO
35 Reason: idempotency is not assumed by WL for a SFSB home (arguable, but a “create” creates a dedicated instance for the client) & there is no deployment property. Note that v7.0 does allow to specify idempotency at the method level through the idempotent-methods element. 36 Reason: performance. 37 Reason: Idempotency not garanteed for SFSB EJBObject & no deployment property. (<-> v7.0) 38 Same note as for SFSB home. Take for example EJBCREATE as a non idempotent method. 39 Reason: performance. See news: weblogic.developer.interest.clustering>Automatic Failover. 40 Same reason as for RO. 41 http://e-docs.bea.com/wls/docs61//ejb/EJB_environment.html#1046391 > Entity EJBs in a Cluster 42 This requires a distributed coherent, persistent cache with bidirectional datasource synchronization decoupled from commit time. 43 Read-only cached, with timed update. 44 v7.0 implements a distributed cache with optimistic (not pessimistic) app tier locking: you cannot set cache-between-transactions to "true" in a WebLogic Server cluster when using exclusive concurrency. However, you can set this element to true when using either optimistic or readonly concurrency.” See http://e-docs.bea.com/wls/docs70/ejb/EJB_environment.html#1157072.
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 97
MDB NO45 Clean Shutdown NO46
NO Load Balancing RR47 (not for first call) YES Auto Failover Inter48
DataSource
NO Load Balancing NO/RR/WRR/Load/Random/F
irst_Available YES
Auto Failover Intra/Inter
Connection Pool
NO49 Load Balancing NO/RR/WRR/Load/Random/F
irst_Available YES
Auto Failover Intra/Inter
Connection
NO50
YES
Clean Shutdown NO
JDBC
NO Load Balancing RR51 (not for first call) YES Auto Failover Inter52
ConnectionFactory
NO Load Balancing NO/RR/WRR/Load/Random/F
irst_Available YES
Auto Failover Intra/Inter
Connection
NO53 Load Balancing NO/RR/WRR/Load/Random/F
irst_Available YES
Auto Failover Intra/Inter
Destination
NO54
YES
Clean Shutdown NO
JMS
NO RMI Objects YES
Custom Services JMS Listeners NO
NO Frameworks Name BEA WebLogic Portal Type Portal Name BEA WebLogic Integration Type Integration, BPM
45 An MDB always resides on the same server as its destination. Non persistent destinations do not failover. 46 Yes for v7.0 through “suspend/resume”. 47 http://e-docs.bea.com/wls/docs61/cluster/overview.html#1004470 titles “Connection LB”, but describes random LB at the DataSource level. 48 Not “intra” as the GETCONNECTION method is not purely idempotent. 49 A DataSource is associated with exactly one ConnectionPool object, i.e.: the one on the same server node. This means that there’s no traditional LB. However, on that single server node, one could replicate the connection pool using a “MultiPool”: http://edocs.bea.com/wls/docs61/jdbc/config.html#1023894. 50 Reason is performance. See news: weblogic.developer.interest.jdbc > “Re: JDBC in a Cluster… any help please”. 51 http://www.theserverside.com/home/thread.jsp?thread_id=12095#41872 says “A similar approach has been, and still is used for the distributed JMS message factories.” 52 Same explanation as for a JDBC DataSource. 53 Load balancing occurs on ConnectionFactory.getConnection(), but this is because the connection factory itself is load balanced. Calls on a connection object are not load balanced for performance reasons. See news: weblogic.developer.interest.jdbc 04/04/2002 >Clustered JMS WLS61.1SP1” 54 Destinations will be clusterable in v7.0. Load balancing will be RR, failover not automatic. Note that messages will NOT be replicated across destination “replica’s”! This could however be implemented by a shared HA filesystem (eg. http://www.unixtools.com/veritas/).
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 98
Administration XML configuration files YES Centralised Domain Management YES
GUI Trap Configuration YES55 YES MIB Data Cache YES56
Administration Server as SNMP Agent
NO YES
M-Let Service YES/NO Timer Service YES58 Monitoring Service YES/NO
Agent Layer
Relation Service YES/NO Standard MBeans YES/NO Dynamic MBeans YES/NO Model MBeans YES/NO Open MBeans YES/NO
Instrumentation Layer
Notifications YES
Part57
Distributed Services Layer [Not yet standardized in JMX 1.0]
Full API
NO HTTP YES SNMP NO
Protocol Adapters
CIM NO RMI NO SOAP NO
Connectors
JMS NO
JMX
JMX Server Architecture YES Tools
Command Line YES59 GUI YES Silent YES
Installer
Networked (version neutral)
NO
Start Servers60 CL/Web Stop Servers RM_CL61/Web
WAR RM_CL62/Web Hot YES EJB-JAR RM_CL/Web Hot YES EAR RM_CL/Web Hot YES JDBC RM_CL63/Web Hot YES RAR Web Hot YES JMS Web Hot YES
Deploy
Drag and Drop Deployment YES, if in development mode. WAR Web Hot Part EJB Web Hot Part JDBC Web Hot NO
Administration
Configure
JCA Web Hot NO
55 See http://e-docs.bea.com/wls/docs61//snmpman/snmptraps.html#1071134. 56 See http://e-docs.bea.com/wls/docs61//snmpman/snmpagent.html#1070435. 57 Only the MBeans for the server core are exposed through the bundeled connector. Note however that the WL’s MBeanServer is a wrapper around Sun’s. 58 See http://e-docs.bea.com/wls/docs61//jmx/monitoring.html. 59 UNIX systems only. See http://e-docs.bea.com/wls/docs61/install/instcon.html#1008419. 60 Locally with scripts or via web with Node Manager: see http://e-docs.bea.com/wls/docs61////adminguide/startstop.html#1033903. 61 See http://e-docs.bea.com/wls/docs61////adminguide/startstop.html#1028914. 62 See weblogic.deploy: http://e-docs.bea.com/wls/docs61////adminguide/utils.html#1138475. 63 See http://e-docs.bea.com/wls/docs61////adminguide/cli.html#1155301 (indeed hot).
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 99
JMS Web Hot Part JTA Web Hot Part Server Web (part) Hot Part LDAP Realm
Web
SNMP Web See Administration>JMX (adapters & connectors)
JMX Also: RM_CL64
WAR RM_CL/Web Hot YES EJB-JAR RM_CL/Web Hot YES EAR RM_CL/Web Hot YES JDBC RM_CL/Web Hot YES RAR Web Hot YES
Undeploy
JMS Web Hot YES Web Web EJB Web JDBC Web/RM_CL66 JCA Web JMS Web JTA Web
Monitor
Server Web
New: JMX remote command line tools65
Cluster Centr. Admin YES XML Editor YES
YES Name DDInit: weblogic.ant.taskdefs.ejb.DDInit67 Name EJBGen Input Tags
Web NO EJB YES O/R > 1 Table NO With Defaults NO
YES
Import Feature YES68
Depl Desc
NO Home Interfaces
YES
YES
Bean Interfaces YES Name XDoclet Input Tags
Web YES EJB YES O/R > 1 Table NO With Defaults NO
YES
Import Feature NO69
Depl Desc
NO Home Interfaces YES
3rd Party
Bean Interfaces YES Name Together, Borland JBuilder Input Dialogs
Web YES EJB YES O/R > 1 Table NO With Defaults YES
Code Generation
3rd Party Depl
Desc YES
Import Feature NO
64 See http://e-docs.bea.com/wls/docs61////adminguide/cli.html#1155716. 65 See ftp://edownload:[email protected]/pub/downloads/jmxmonitor.zip (on http://dev2dev.bea.com/code/samples.jsp?highlight=samples) 66 Monitor pool existence. 67 DDInit generates default deployment descriptors: see http://e-docs.bea.com/wls/docs61/programming/packaging.html 68 http://www.beust.com/ejbgen/#reverse-ejbgen 69 Feature “announced” at time of writing (http://xdoclet.sourceforge.net/tools.html#reverse).
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 100
NO Home Interfaces
YES
Bean Interfaces YES Name WebGain TopLink, Thought Inc CocoBase Input Dialogs
Web NO EJB YES O/R > 1 Table YES With Defaults YES
YES
Import Feature YES
Depl Desc
NO Home Interfaces
YES
3rd Party70
Bean Interfaces YES Web Services Packaging & WSDL generation: WSGEN ANT target
UML 3rdParty71: Together, Rational Rose, WebGain StructureBuilder Modeling BPM Versata Studio, AltoWeb AltoStudio & AltoServer, NeuVis NeuArchitect, Bowstreet
Business Web Factory Remote Debugging
3rdParty: Together, Borland JBuilder, WebGain VisualCafé, NetBeans72
Documentation Readability Easy Table of Contents
Structured
Printable YES Media HTML YES
Searchable YES Installation YES Upgrade YES Documentation Archived
YES
Explanation YES73 Command Line Options YES74
YES
Online Help YES75
Tools
NO WAR Sample / How-to
SLSB Sample / How-to SFSB Sample / How-to
CMP Sample / How-to EB BMP Sample / How-to
EJB-JAR
MDB How-to CORBA YES
Component Development76
Web Services YES JMS77 How-to
Development
JavaMail78 How-to
70 BEA WL v7.0 includes the BEA WebLogic Builder GUI IDE for generating default deployment descriptors: http://edocs.bea.com/wls/docs70/wlbuilder/WebLogicBuilder.html 71 BEA WL v7.0 includes the BEA WebLogic Workshop GUI IDE including Modeling & Debugging features for Web Services based on EJB, JMS, JCA. 72 See http://www.genuitec.com/products.htm#easie. 73 See http://www.bea.com/products/weblogic/tools/index.shtml for official BEA WL Server 3rd party tools. See http://e-docs.bea.com/wls/docs61//ejb/EJB_whatsnew.html#1076934 for WL bundled tools. 74 See http://www.beust.com/cedric/ejbgen/ , http://xdoclet.sourceforge.net/. 75 This applies to the XML editor, not to the ANT integrated development tools. 76 See http://e-docs.bea.com/wls/docs61//programming.html. 77 See http://e-docs.bea.com/wls/docs61/jms/index.html.
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 101
JAAS Sample / How-to79 Explanation YES80 Command Line Options YES81
YES
Online Help YES82
Tools
NO Definition of Administration Concepts YES
JDBC YES JMS YES JCA YES
Remote Starting, Stopping YES Configuration YES
Domain Configuration
Clustering
Sample Topologies YES WAR How-to EJB-JAR How-to
Pet Store Sample EAR Other Sample/How-to83
Deployment Samples
RAR Sample/How-to84 WAR YES85 EJB-JAR YES86
Deployment Descriptor Reference
RAR YES87 Monitoring YES
ACL Management YES Web YES
Security88 SSL
EJB YES JMX YES89
Admin as Agent Configuration YES90 SNMP Server MIB Reference YES91
Performance Tuning YES
Administration
Error Message Reference NO92 FAQ > 20093 Bug List YES94 Webinars YES95 Books YES96 Magazines YES97: BEA WebLogic Developer’s Journal Support Free YES Tested Cases ECperf Building
78 See http://e-docs.bea.com/wls/docs61/programming/topics.html#1058886. 79 See http://e-docs.bea.com/wls/docs61/security/prog.html#1039659. 80 See http://e-docs.bea.com/wls/docs61//adminguide/utils.html#1116200. 81 See http://e-docs.bea.com/wls/docs61/adminguide/cli.html#1159189. 82 http://e-docs.bea.com/wls/docs61/ConsoleHelp/index.html is invoked from admin console. 83 See http://e-docs.bea.com/wls/docs61/deployment/index.html. 84 See http://e-docs.bea.com/wls/docs61/jconnector/adapters.html#1208997. 85 See http://e-docs.bea.com/wls/docs61/webapp/weblogic_xml.html#1022355. 86 See http://e-docs.bea.com/wls/docs61/ejb/reference.html. 87 See http://e-docs.bea.com/wls/docs61/jconnector/dtdappen.html#1037495. 88 See http://edocs.bea.com/wls/docs61/adminguide/cnfgsec.html#1060446. 89 See http://e-docs.bea.com/wls/docs61/jmx/index.html. 90 See http://e-docs.bea.com/wls/docs61/snmpman/index.html. 91 See http://e-docs.bea.com/wls/docs61/snmp/index.html. 92 A message reference is under development. 93 See http://e-docs.bea.com/wls/docs61/faq/index.html. 94 See http://e-docs.bea.com/wls/docs61/notes/issues.html#1071850. 95 See http://www.bea.com/events/webinars.shtml & http://eu.bea.com/events/webinars/index.jsp. 96 See http://dev2dev.bea.com/publications/books.jsp?highlight=books. 97 SYS-CON Media, see http://www.sys-con.com/weblogic/.
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 102
Run ECperf on WL +: Received DDs… -: … for older ECperf version +: Engineer helped getting it right. -: DDInit never mentioned
SerialVersionId Problem Classpath problem (J2EE SDK CP clash)
-: Not Solved by Engineer Peer Gone Problem
Deadlock while running benchmark -: Not Solved by Engineer +: Helped by WL user on J2EE list
NodeManager Nodemanager authentication problem
+: Solved by Engineer Reconnect to Adminserver Assertion
Trying to start a managed server that was already running independently.
-: Not Solved by Engineer First Anwser Next BusDay Avg. Answering Delay Time To Solution +/- 1,5 week
Avg. Engineer Expertise Average Engineer 2 Self 3
Number Solved
Not 0
Trial
NO Number of groups Total: 92; Server-related: +/- 35; Actually Used: 5 Avg. Answering Delay Same Hour/Day for “hot” groups (eg. ejb);
Same Week others (eg. tools) New +/- 5 Hot
Group Replies +/- 15 New 2/week
Daily Activity
Other Replies 2/week After one Day <10% Hot
Group After one Week <10% After one Day >= 90%
Newsgroups
% Unanswered
Other After one Week >=50%
Open Source Open Source NO Pluggability Pluggable Server Components Container (enJin, Javlin, ...) Performance
Performance BBops/min@Std: 16696.17 Rank 3rd Official Results Price/Performance Price/ Bbops@Std: $7 Rank 1st
We used a CMP deployment, except for OrderCustomerEnt and SequenceEnt. The deployment descriptors were prepared by the WebLogic performance tuning group. We made a number of corrections regarding the WLS and ECperf versions98. The server was started with 256 MB of heap (java –ms256m –mx256m). We increased the size of the thread pool associated with the default execute queue to 50 and increased ThreadPoolPercentSocketReaders to 80.
ECperf
Personal HW
Adhemar Performance Private Info
98 See http://thesis.pietervangorp.com/
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 103
Price/Performance Private Info Performance Private Info
Panda
Price/Performance Private Info Custom Test Results
None
Platform Support99
Compaq Alpha with Tru64 UNIX Compaq OpenVMS Bull/IBM RS/6000 with AIX 4.3 Bull/IBM RS/6000 with AIX 5L Hewlett-Packard HP/9000 with HP-UX 11.0 Intel Pentium-compatible with Windows 2000 Professional Intel Pentium-compatible with Windows 2000 Server/Advanced Server Intel Pentium-compatible with Windows NT 4.0 Intel Pentium-compatible with Red Hat Linux Sun Microsystems SPARC with Solaris
Supported Platforms for v6.1.
Sun Microsystems Sparc with Solaris 8 Caldera OpenUNIX 8.0 Compaq NonStop Himalaya Hewlett-Packard HP/9000 with HP-UX 11i IBM AS/400e with OS/400 V4R3 IBM AS/400e with OS/400 V4R4/V4R5 IBM DYNIX/ptx Bull/IBM RS/6000 with AIX 4.2 IBM S/390 with OS/390 Intel Pentium-compatible with Windows 98 Linux for S/390 and zSeries SCO Unixware Siemens MIPS with Reliant UNIX 5.44C Silicon Graphics with IRIX Sun Microsystems SPARC with Solaris 2.5.1, 2.6, 2.7
Supported Platforms (older WLS versions)
Sun Microsystems SPARC with Solaris 8 Prices
Customer Specific (eg. $10K/CPU100) Non Clustered Customer Specific (eg. Private Info)
Production Server
Price per CPU
Clustered Customer Specific Development Server
Price per CPU/Developer
Customer Specific
Remote Price Customer Specific 24x7 Support On-Site Price Customer Specific Remote Price Customer Specific Next Business
Day Support On-Site Price Customer Specific Remote Price Customer Specific Project
Consultant On-Site Price Customer Specific Name WebLogic Integration Item WebLogic Integration Framework Item WebLogic Server Price Customer Specific (eg. Private Info) Name WebLogic Portal Item WebLogic Portal Framework Item WebLogic Server
Bundle
Price Customer Specific (eg. Private Info) Partnership See http://www.bea.com/partners/index.shtml 99 See http://e-docs.bea.com/wls/platforms/index.html. 100 Source: http://www.flashline.com/components/appservermatrix.jsp.
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 105
Appendix D. JBOSS REVIEW This document reviews the JBoss application server integrated with the Tomcat web server/container. It discusses JBoss version 2.4.4 and Tomcat version 3.2.3, but refers to newer versions up to JBoss 3.0 and Tomcat 4.0 where appropriate.
Notational convention Text Marked Inactive Private Info Not Disclosed
Primary Services
Advertized Min. Mem. Req. 64 MB Measured (Clean) 26 MB
Adhemar (NT)
Measured (ECperf) Private Info Advertized Min. Mem. Req. 64 MB Measured (Clean) 73 MB resident,
324 MB total size
Memory Consumption
Panda (Solaris)
Measured (ECperf) Private Info Thread Pooling YES Socket Multiplexing NO101
Resource Management
Pooling See Web Tier, Application Tier, Information Tier Licensed NO
J2EE 1.2 NO Compatible J2EE 1.3 NO JTA v1.0 YES ∈ J2EE v1.2+ Transaction
Management JTS YES102 JNDI v1.2 YES103 ∈ J2EE v1.2+ Naming &
Directory AS > LDAP NO104 HTTP Basic YES HTTP Digest NO106 Form YES
∈ J2EE v1.2+ Client Authentication105
SSL v3.0 NO107 + Authorization JAAS 1.0 YES108 ∈ J2EE v1.3+
SSL v3.0 YES109 ∈ J2EE v1.2+
Security
Secure Communication TLS v1.0 NO110 ∈ J2EE v1.3+
Interoperability HTTP 1.0 YES ∈ J2EE v1.2+
101 Partially yes: JMS connection multiplexes two sockets in one (org.jboss.mq.il.uil.multiplexor.*). 102 Source: JBoss book. 103 v1.2.1 (dixit Scott Stark, CTO JBoss Group, LLC). 104 See http://main.jboss.org/thread.jsp?forum=52&thread=12597. 105 See Tomcat 3.2.x Readme: http://jakarta.apache.org/tomcat/tomcat-3.2-doc/readme 106 Officially, digest authentication is fully available only from Tomcat v4.1. See http://w6.metronet.com/~wjm/tomcat/2001/Sep/msg00184.html 107 SSL client authentication available from Tomcat v4.0 onwards: see http://www.apachelabs.org/tomcat- user/200011.mbox/%[email protected]%3e & http://jakarta.apache.org/tomcat/tomcat-4.0-doc/ssl-howto.html 108 JBoss uses the JAAS 1.0 extension package from Sun which is a full implementation (dixit Scott Stark, CTO JBoss Group, LLC). 109 See http://jakarta.apache.org/tomcat/tomcat-3.2-doc/tomcat-ssl-howto.html. 110 Yes for Tomcat v4.0: see http://jakarta.apache.org/tomcat/tomcat-4.0-doc/ssl-howto.html
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 106
1.1 NO111 HTTPS YES
Java IDL NO112 ∈ J2SE v1.2+ ⊂ J2EE v1.2+ RMI-IIOP NO113 ∈ J2EE v1.3+
OMG
CSIv2 NO ∈ J2EE v1.3+ JMS v1.0 YES
(v1.0.2114) XA Y
115 ∈ J2EE v1.2+
JAF v1.0 YES ∈ J2EE v1.2+ v1.1 Y/N ∈ J2EE v1.2 YES
v1.2 Y116 ∈ J2EE v1.3
Messaging
JavaMail
NO YES117 ∈ J2EE v1.3+
SAX v2 YES/NO DOM v2 YES/NO
Part
XSLT YES/NO
XML JAXP v1.1
NO YES
JAXB NO JAXM NO JAX-RPC Part JAXR NO
YES J2EE Web Service Deployment Specification will be supported
Part118
Other
NO
Full API
NO119
Web Services
UDDI Reg. NO WAR NO EJB-JAR NO RAR NO
Deployment Propriatary Deployment Descriptor Required? EAR NO
Tier Support
YES120 ∈ J2EE v1.2 WAR YES/NO Servlet Names YES/NO Init Params YES/NO isSecure YES/NO
Part
Role Based Security YES/NO
Web Tier Servlet YES Version
v2.2
NO
111 Yes for Tomcat v4.0. 112
YES FOR JBOSS V3.0 WITH JACORB. 113 http://main.jboss.org/thread.jsp?forum=52&thread=6867 announces the feature for JBoss 3.0. http://www.jboss.org/online-manual/HTML/ch12s21.html explains a new CONTAINERINVOKER needs to be implemented. 114 http://www.jboss.org/online-manual/HTML/ch08s03.html says: “The JMS provider. Called JBossMQ, this is the part of JBoss that implements the JMS 1.0.2 specification, including the optional parts, such as the Application Service Facility (ASF)” 115 Through JMS JCA adapter (jms-ra.rar). 116 See http://main.jboss.org/thread.jsp?forum=66&thread=12534&message=3706632&q=#3706632. 117 Through Apache’s crimson.jar. 118 JBoss.NET under development: see http://www.jboss.org/JBossOne2002.zip, slide 20. 119 Web services support is not yet bundled with v2.4. 120 With Tomcat 3.x.
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 107
YES121 ∈ J2EE v1.3 Filters YES/NO Part Event Listeners YES/NO
v2.3
NO
NO YES122 ∈ J2EE v1.2
Custom Tags YES/NO Part Servlet v2.2 Based YES/NO
v1.1
NO YES123 ∈ J2EE v1.3
XML Syntax YES/NO Part Servlet v2.3 Based YES/NO
v1.2
NO
YES Version
Page Caching Custom Tags NO124
JSP
NO
Caching Deployment Elements NO YES ∈ J2EE v1.2 v1.1
NO YES ∈ J2EE v1.3
MDBs YES/NO Local Interfaces YES/NO EJB Relations YES/NO EJB-QL (select & find) YES/NO Home Methods YES/NO
run-as YES/NO
Part
security unchecked YES/NO
EJB Version
v2.0
NO125 Dynamic Proxies YES Object
Distribution Collocation Optimization YES Datasource Level YES Element: mbean org.jboss.jdbc.XADataSourceLoader with attribute ManagedConnectionFactoryProperties including TransactionIsolation=XXX.
CMT RM Isolation Levels
NO Optimistic Not available with CMP127 DB Locking
Strategies Pessimistic Element: locking-policy=org.jboss.ejb.plugins.lock.QueuedPessimisticEJBLock
Optimistic None App Tier Locking Strategies
Pessimistic None
Transactions126
Deadlock Detection NO128
Application Tier
Resource Thread NO Bean / Application / Server Level
121 With Tomcat 4.0. 122 With Tomcat 3.x. 123 With Tomcat 4.0. 124 3rd party Apache lists bèta "Cache Taglib" at time of writing: http://jakarta.apache.org/taglibs/index.html#Overview 125 Yes for JBoss v3.0. See http://www.jboss.org/beanlocking.ppt. 127 Yes for 3rd party plugins from for example MVCSoft. 128 Yes for JBoss v2.4.5+. 129 There is no configurable EJB thread pooling (http://www.jboss.org/j2ee/dtd/jboss_3_0.dtd). It is delegated to the Tomcat/Jetty web tier: e.g. MinThreads and MaxThreads properties of com.mortbay.HTTP.SocketListener in jboss\conf\tomcat\jetty.xml.
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 108
129 Element: Pooling NO
Application Level Element: container-pool-conf>MaximumSize
YES SLSB / SFSB / EB / MDB
Element: container-pool-conf>MaximumSize
Object Pool Management
NO Bean / Application / Server Level YES Element:
Management
Socket Multiplexing
NO SFSB instance-cache=
org.jboss.ejb.plugins.StatefulSessionInstanceCache No passivation: cache-policy= org.jboss.ejb.plugins.NoPassivationCachePolicy LRU: cache-policy= org.jboss.ejb.plugins.LRUEnterpriseContextCachePolicy NRU: overager-period, max-bean-age Also: min-capacity, max-capacity, min-cache-miss-period, max-cache-miss-period, cache-load-factor instance-cache=
YES
EB Same as SFSB but with instance-cache= org.jboss.ejb.plugins.EntitySessionInstanceCache
Replacement Management130
NO YES131
YES Element: None132 Manage Stores in Application Tier
NO Delay stores to commit time NO
A Element: container-configuration>commit-option=A B Element: container-configuration>commit-option=B C Element: container-configuration>commit-option=C
Commit Options
D133 Element: container-configuration>commit-option=D; read-only=true; time-out=X
Caching
Read-Mostly NO134 Elements: eager-load135, read-ahead136
YES Element: lazy-load-group YES
Field Grouping NO
Lazy Loads
NO Tuned CMP Updates YES Element: tuned-updates=true
Automatic Destination Reconnect for MDBs NO137 Information Relational DB JDBC 2.0 YES ∈ J2EE v1.2+ Connection YES
130 See http://www.jboss.org/online-manual/HTML/ch07s16.html > Advanced cache configuration. 131 This requires a persistent cache with bidirectional datasource synchronization decoupled from commit time. 132 Delayed write is enabled by default. 133 Read-only cached, with timed update. 134 Source: Bill Burke, co-developer of JBoss Clustering. 135 Without the eager-load element, all fields are aggressively loaded. With the eager-load element, all but the contained fields are lazyly loaded. 136 This enables aggessive loading for finders: preload a configurable (element: limit) number of query results to solve the n+1 problem. 137 Yes for JBoss v3.0: see http://main.jboss.org/thread.jsp?forum=48&thread=12725.
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 109
Extensions Pooling Type 1 NO
YES DB: Type 2 NO
Type 3 NO YES DB: HSQL Database Engine (hsqldb)
NO XA
Type 4 NO
Type 1 NO YES DB: Type 2 NO
Type 3 NO YES DB: HSQL Database Engine (hsqldb)
Integration JDBC Drivers
XA
Type 4 NO ∈ J2EE v1.2+
EIS: XA138 EIS: EIS: JDBC wrapper139
YES
Included Connectors
NO XA EIS: JMS wrapper
JCA 1.0
NO
Tier
EIS Integration
Other None Clustering
Atomic Homogeneous Deployment YES141 Subpartitioning YES Automatic JNDI Discovery YES142 Lifecycle Event Framework YES143
Web Server: Apache Web Server: Microsoft Internet Information Server (ISAPI) Web Server: Netscape Enterprise Server Plug-In (NSAPI)
YES
LB Algo’s RR/WRR144
Web Server Plugin
NO YES LB Algo’s RR/WRR/Load/Random Servlet Proxy NO YES LB Algo’s RR/First_Available Integrated LB in default web
server NO YES LB Algo
Limitations None, if cookie integrated
LB HW Support
NO
YES140
Web YES
Failover YES145 HTTP Session In-Memory YES
138 JBoss v3.0 bundles with the XA wrappers. 139 The wrapper works for JDBC type 1 and 2 drivers only. 140 For JBoss v3.0. 141 Reliable JavaGroups communication framework ensures message atomicity. 142 A multicast address is used for automatic discovery. 143 Notification of state transfer events and replica availability: HAPARTITIONSTATETRANSFER and REPLICANTLISTENER interfaces. 144 See http://www.ubeans.com/tomcat/index.html & http://www.theserverside.com/resources/article.jsp?l=Tomcat. 145 JBoss has currently implemented HTTP Session replication (hence failover) only for Jetty. Tomcat however implements in-memory session replication by itself: see http://www.theserverside.com/resources/article.jsp?l=Tomcat.
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 110
File NO146 Replication JDBC NO
NO
Clean Shutdown NO147
NO Architecture Distributed YES Clean Shutdown NO148
JNDI
NO Load Balancing RR/First_Available by
home-load-balance-policy EJBHome
Auto Failover Inter Load Balancing RR/First_Available
YES
EJBObject Auto Failover Inter
SLSB
NO Load Balancing RR/First_Available EJBHome Auto Failover Inter Load Balancing RR/First_Available EJBObject Auto Failover Inter
In-Memory YES File NO150 JDBC NO
YES
Client Stub NO151
YES
State Replication
NO
SFSB
NO Load Balancing RR/First_Available EJBHome Auto Failover Inter
RO RR/First_Available Load Balancing RW RR/First_Available
EJBObject
Auto Failover Inter Optimistic Element: App Tier
Locking Strategies
Pessimistic Element:
Deadlock Detection YES/NO Write Update YES/NO
YES Peer/RM Revalidate
Write Invalidate
NO
Manage Stores in App Tier
Y152
A Element: B Element:
EJB YES149
EB YES
Distr. Shared Cache
Y
Commit Options
D153
Element:
146 Developers consider this irrelevant in the upcoming releases of JBoss v3.0, but it could be built. Implementation will handed off to JBoss CMP, hence configuration will be based on deployment descriptors (dixit Sacha Labourey). 147 Clean shutdown not available in first iteration of JBoss v3.0. However dynamic WAR updating, suspending active sessions, is available. 148 This could be built with an interceptor. 149 For all bean types: § Load Balancing: RR and First_Available are implemented. Others will come as plugins. § Automatic failover: inter-method is implemented and all metadata is available for intra-method
failover, but the feature is not yet implemented. 150 As with HTTP Session replication, these features will come in future 3.x releases. 151 This feature is under development. 152 This requires a distributed coherent, persistent cache with bidirectional datasource synchronization decoupled from commit time.
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 111
Read-Mostly YES/NO NO
NO MDB NO154
Clean Shutdown YES155
NO Load Balancing NO/RR/WRR/Load/Random/F
irst_Available YES
Auto Failover Intra/Inter
DataSource
NO Load Balancing NO/RR/WRR/Load/Random/F
irst_Available YES
Failover YES/NO
Connection Pool
NO Load Balancing Irrelevant YES Auto Failover Intra/Inter
Connection
NO
YES
Clean Shutdown YES/NO
JDBC
NO Load Balancing NO/RR/WRR/Load/Random/F
irst_Available YES
Auto Failover Intra/Inter
ConnectionFactory
NO Load Balancing Irrelevant YES Auto Failover Intra/Inter
Connection
NO Load Balancing NO/RR/WRR/Load/Random/F
irst_Available YES
Auto Failover Intra/Inter
Destination
NO
YES
Clean Shutdown YES/NO
JMS
NO RMI Objects
Custom Services JMS Listeners
YES, Any service is clusterable156
NO157 Frameworks Name Open For Business158 Type e-Commerce, Workflow, Content Management, … Name Motosoto Community Portal
Server (CoPS159) Type Portal
Administration XML configuration files YES Centralised Domain Management NO160
GUI Trap Configuration YES/NO Administration Server as SNMP Agent YES MIB Data Cache YES/NO
153 Read-only cached, with timed update. 154 Under development… 155 The interceptor is implemented and will probably be shipped with JBoss v3.0 final. 156 See Clustering docs, section 1.H. 157 For JBoss 2.x. 158 http://www.ofbiz.org/ is an independent open source community producing open source business software based on Java & XML standards. 159 http://sourceforge.net/projects/mtstcops/ is an independent open source portal project. 160 Services can be declared at the domain level and nodes can join such domain dynamically, but there’s no central administration tool yet.
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 112
NO YES161
M-Let Service YES/NO Timer Service YES/NO Monitoring Service YES/NO
Agent Layer
Relation Service YES/NO Standard MBeans YES/NO Dynamic MBeans YES/NO Model MBeans YES/NO Open MBeans YES/NO
Instrumentation Layer
Notifications YES/NO
Part
Distributed Services Layer [Not yet standardized in JMX 1.0]
Full API
NO HTTP YES SNMP NO
Protocol Adapters
CIM NO RMI YES SOAP YES
Connectors
JMS YES
JMX
JMX Server Architecture YES Tools
Command Line NO GUI NO Silent NO162
Installer
Networked (version neutral)
YES
Start Servers NO Stop Servers Web
WAR Hot EJB-JAR Hot EAR
MBean J2EE>J2EEDeployer
Hot
YES
JDBC NO Hot RAR MBean JCA>RARDeployer Hot YES JMS MBean JBossMQ>Server Hot YES
Deploy
Drag and Drop Deployment YES: AutoDeployer163 Web Hot EJB
Yes, but not without custom MBeans. Hot
YES
JDBC MBean (eg. org.jboss.jdbc.XADataSourceLoader)
Hot YES
JCA MBean (eg. org.jboss.resource.ConnectionFactoryLoader)
Hot YES
JMS NO Hot JTA MBean DefaultDomain>TransactionManager Hot YES Server NO Hot LDAP Realm
NO
SNMP NO
Configure
JMX See Administration>JMX (adapters & connectors) WAR Hot EJB-JAR Hot EAR
MBean J2EE>J2EEDeployer
Hot
YES
Administration
Undeploy
JDBC MBean unregistration Hot YES
161 See http://www.jboss.org/developers/jboss-jbossmx.jsp & http://www.jboss.org/JBossMX-JB1-2002.ppt 162 In fact this can be accomplished very easily, but it is not documented as such. 163 See http://www.jboss.org/online-manual/HTML/ch13s72.html.
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 113
RAR MBean JCA>RARDeployer Hot YES JMS MBean JBossMQ>Server Hot YES Web EJB JDBC JCA JMS JTA
Monitor
Server
None bundled164.
Cluster Centr. Admin NO165 XML Editor YES166
Name XDoclet Input Tags
Web YES EJB YES O/R > 1 Table NO With Defaults NO
YES
Import Feature NO167
Depl Desc
NO Home Interfaces YES
3rdParty
Bean Interfaces YES Name Together168, Borland JBuilder169 Input Dialogs
Web YES EJB YES O/R > 1 Table NO With Defaults YES
YES
Import Feature NO
Depl Desc
NO Home Interfaces YES
Code Generation
3rdParty
Bean Interfaces YES Web Services NO170
UML 3rdParty: Together Modeling BPM NO
Remote Debugging
3rdParty: Together, Borland JBuilder, NetBeans171
Documentation Readability Fair Table of Contents
Structured
Printable NO172 Media HTML YES
Searchable YES Installation YES173 Upgrade NO174
164 http://freshmeat.net/projects/log4jmonitor/: 3rd party Log4J message displayer. 165 This feature is under development. 166 See http://lbdpc15.epfl.ch/JAVA/jBoss/ejb.html, but also http://main.jboss.org/thread.jsp?forum=62&thread=10753&message=1175771#1175771 167 Feature “announced” at time of writing (http://xdoclet.sourceforge.net/tools.html#reverse). 168 Plugin for JBoss 2.4 costs $60: see http://www.flashline.com/Components/View.jsp?&prodid=4042. 169 See http://main.jboss.org/thread.jsp?forum=62&thread=8923. 170 No WSDL generation tools etc. are implemented yet. 171 See http://www.genuitec.com/products.htm#easie. 172 Yes for clustering, CMP 2.0 documentation ($10/piece) 173 See http://www.jboss.org/online-manual/HTML/ch01s06.html. 174 http://www.jboss.org/online-manual/HTML/ch03s13.html announces documentation on version migration.
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 114
Documentation Archived
NO175
Explanation YES176 Command Line Options YES177
YES
Online Help NO
Tools
NO WAR Part of other samples
SLSB Sample178/Tutorial179 SFSB Sample180
CMP Sample181/Tutorial182/How-to183 EB BMP NO
EJB-JAR
MDB Sample184/Tutorial/How-to185 CORBA NO
Component Development
Web Services NO JMS Sample186/Tutorial/How-to187 JavaMail Sample188/How-to189
Development
JAAS Sample190/Tutorial/How-to191 Explanation YES192 Command Line Options193
YES/NO YES
Online Help NO
Tools
NO Definition of Administration Concepts NO
JDBC Part194 JMS YES (see development) JCA NO195
Remote Starting, Stopping NO Configuration YES
Domain Configuration
Clustering196
Sample Topologies NO WAR Part of other samples EJB-JAR See development.
Pet Store Sample/Tutorial197 EAR Other See development.
Administration
Deployment Samples
RAR Sample
175 At the time of writing, the free documentation is continuously updated, which is very annoying when not using the latest JBoss version. 176 See http://www.jboss.org/online-manual/HTML/ch10.html (parts outdated at the time of our writing). 177 See http://xdoclet.sourceforge.net/. 178 See org.jboss.docs.interest.InterestBean. 179 See http://www.jboss.org/online-manual/HTML/ch01s09.html. 180 See org.jboss.docs.jaas.howto.StatefulSessionBean. 181 See org.jboss.docs.cmp.jaws.bean.ClassBean. 182 See http://www.jboss.org/online-manual/HTML/ch05.html. 183 See http://www.jboss.org/online-manual/HTML/ch06.html. 184 See org.jboss.docs.jms.mdb.bean.HelloListener. 185 See http://www.jboss.org/online-manual/HTML/ch08s20.html. 186 See org.jboss.docs.jms.*. 187 See http://www.jboss.org/online-manual/HTML/ch08.html. 188 See org.jboss.docs.javamail.MailerBean. 189 See http://www.jboss.org/online-manual/HTML/ch13s98.html. 190 See org.jboss.docs.jaas.howto.*. 191 See http://www.jboss.org/online-manual/HTML/ch13s78.html. 192 Note that this documentation is embedded within other topics... 193 There are no command line administration tools bundled with JBoss. 194 Plain JDBC setup was removed from the free docs. All JDBC now goes through a JCA wrapper. 195 Sample configuration files are available. 196 $10 documentation. 197 See http://www.jboss.org/online-manual/HTML/ch14s02.html.
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 115
WAR NO198 EJB-JAR NO
Deployment Descriptor Reference
RAR NO Monitoring NO
ACL Management NO199 Web YES200
Security SSL
EJB NO JMX YES201
Admin as Agent Configuration NO SNMP Server MIB Reference NO
Performance Tuning YES202
Error Message Reference NO FAQ # 63 (FAQ Forum @ 15/04/2002) Bug List YES203 Webinars NO Books Announced: “The Official JBoss Development and Administration Guide” Magazines NO Support
Tested Cases
First Anwser Same Hour/Same Day/Next
BusDay/Same Week/… Avg. Answering Delay
Time To Solution Same Hour/Same Day/Next BusDay/Same Week/…
Avg. Engineer Expertise Excelent/Average/Bad Engineer # Self #
YES
Number Solved
Not #
FreeTrial
NO Number of groups 17 Avg. Answering Delay Same Week
New # > 10 Hot Group Replies # +/- 30
New # +/- 10/week
Daily Activity
Other Replies # +/- 30/week After one Day <50% Hot
Group After one Week <50% After one Day <50%
Newsgroups
% Unanswered
Other After one Week <50%
Open Source Open Source YES Pluggability Pluggable Server Components Transaction Manager (from org.jboss.tm.TransactionManagerService to
org.jboss.tm.plugins.tyrex.TransactionManagerService MBean) 198 No for all three archives, but documented DTDs are available for Web & EJB tier. 199 LDAP integration is however documented: see http://www.jboss.org/online-manual/HTML/ch13s126.html. 200 See http://www.jboss.org/online-manual/HTML/ch14s12.html. 201 See http://www.jboss.org/online-manual/HTML/ch12s17.html & http://www.jboss.org/JBossMX-JB1-2002.ppt. 202 See http://www.jboss.org/online-manual/HTML/ch11s06.html. 203 See http://sourceforge.net/.
Vergelijkende Studie van J2EE Applicatieservers – http://thesis.pietervangorp.com/ 116
Servlet Container (org.jboss.jetty.JettyService and/or org.jboss.tomcat.EmbeddedTomcatServiceSX and/or ...) Security framework204 JCA Connection Manager205 Network communication framework (from JavaGroups to …)206
Basically any other Mbean server component… Performance
Performance BBops/min@Std: # Rank # Official Results207 Price/Performance Price/ Bbops@Std: # Rank #
We used a total BMP deployment. This may not be optimal. Generating all deployment descriptors is out of the scope of this thesis, but may be an interesting topic of further research. The original deployment descriptors were supplied by a JBoss user Axel Becker. The server was started with 256 MB of heap (java –ms256m –mx256m).
Performance Private Info Adhemar Price/Performance Private Info Performance Private Info
ECperf
Personal HW
Panda Price/Performance Private Info
Custom Test Results
None
Platform Support Platform Any system with 64 MB RAM and compatible with JDK 1.3. Prices Production Server
Price per CPU 0 €
Development Server
Price per CPU/Developer
0 €
Remote Price Customer Specific 24x7 Support On-Site Price Customer Specific Remote Price Customer Specific Next Business
Day Support On-Site Price Customer Specific Remote Price Customer Specific Project
Consultant On-Site Price Customer Specific
See http://www.jboss.org/jbossgroup/services.jsp
Name Item Item Item Item
Bundle
Price
Irrelevant, as the server is free.
Partnership Offerings
See http://www.jboss.org/jbossgroup/partners.jsp
204 See http://www.jboss.org/online-manual/HTML/ch13s78.html. 205 See v3.0 feature matrix: http://www.jboss.org/online-manual/HTML/ch04.html. 206 See v3.0 Clustering documentation 1.C.V. 207 Results for ECperf on JBoss cannot be published officially, because of lack of certification.