Sei sulla pagina 1di 45

c  

    
Delaware Valley BEA User Group

Aaron Mulder
Chief Technical Officer
Chariot Solutions
°       

‡ New features in WebLogic Server 8.1


± Support for J2SE 1.4 (yes) & J2EE 1.4 (no)
± UI improvements
± New tools & J2EE features
‡ Performance improvements ³under the hood´
‡ Timeline for the 8.1 release
‡ Bonus Slide

March 18 Copyright © 2003 Chariot Solutions DVBUG


About Aaron Mulder
‡ Chief Technical Officer of Chariot Solutions
‡ Published author (Professional EJB, BEA WebLogic 7.0
Server Deployment and Administration Handbook)
‡ Presented at JavaOne 2001-2003, the Philadelphia Java
Users Group, local seminars, etc.
‡ Member of the JSR-88 Expert Group (J2EE Application
Deployment)
‡ Contributed to open-source projects such as JBoss,
OpenEJB, and PostgreSQL

March 18 Copyright © 2003 Chariot Solutions DVBUG


About Chariot Solutions

‡ Information Technology provider focused on automating


business processes
‡ Team of leading Java architects on staff
‡ Technical expertise in software architecture,
development, and systems integration
‡ Proven track record with companies such as ExxonMobil,
Midas, Rosenbluth International, UGI Utilities, and the
State of New Jersey

March 18 Copyright © 2003 Chariot Solutions DVBUG


The Bottom Line
‡ WebLogic Server 8.1 is an improved version of 7.0 (same code
base, better product)
‡ Goal: Improve developer productivity
± Workshop, JBuilder WebLogic Edition, new tools, fewer restarts,
faster startup time, etc.
‡ Goal: Standards-based Integration
± JMS, J2CA, Web Services
‡ But vendor lock-in is profitable too (did I say that out loud?)
± Lots of proprietary extensions, some even useful
‡ Goal: Reduce cost of ownership/management
± Improved admin tools
± Improved monitoring
‡ Goal: Performance enhancements

March 18 Copyright © 2003 Chariot Solutions DVBUG


WLS 8.1 J2SE and J2EE Support
J2EE Support

‡ Supports J2EE 1.3


‡ Minimal J2EE 1.4 support
± Some JSR-77/JSR-88 features
± Web Services implementation is still proprietary
± No EJB 2.1/JSP 2.0 features yet
‡ J2EE 1.4 support may debut in ³Diablo´ (2004)

March 18 Copyright © 2003 Chariot Solutions DVBUG


J2SE Support

‡ WebLogic Server 8.1 runs on J2SE 1.4


± Ships with Sun & JRockit implementations
‡ Includes new features such as:
± new logging API
± NIO (though WebLogic does ‘  use this currently)
± JDBC 3 (includes JDBC 2 Optional Package/Data Sources)
± Enhanced printing support
± Built-in extensions include JAAS, JCE, XML, etc.
± Better thread dumps & debugging support
± Improved garbage collector
‡ JRockit adds more monitoring features

March 18 Copyright © 2003 Chariot Solutions DVBUG


WLS 8.1 UI Improvements
(Domain) Configuration Wizard

‡ Domains are the same as before


± One admin server, zero or more managed servers
± Multiple servers can be in one or more clusters, or may just be
individual
‡ Configuration wizard doesn¶t divide domains based on
number of servers any more
‡ Still need to select a domain type for the services to
include (Workshop, Examples, Platform, etc.)
‡ Wizard lets you configure services such as JDBC, JMS,
etc.
‡ Can use the wizard to update existing domains

March 18 Copyright © 2003 Chariot Solutions DVBUG


Configuration Wizard Screen Shots

March 18 Copyright © 2003 Chariot Solutions DVBUG


Configuration Wizard Screen Shots

March 18 Copyright © 2003 Chariot Solutions DVBUG


Configuration Wizard Screen Shots

March 18 Copyright © 2003 Chariot Solutions DVBUG


Configuration Wizard Screen Shots

March 18 Copyright © 2003 Chariot Solutions DVBUG


Configuration Wizard Screen Shots

March 18 Copyright © 2003 Chariot Solutions DVBUG


Configuration Wizard Screen Shots

March 18 Copyright © 2003 Chariot Solutions DVBUG


Configuration Wizard Screen Shots

March 18 Copyright © 2003 Chariot Solutions DVBUG


Configuration Wizard Screen Shots

March 18 Copyright © 2003 Chariot Solutions DVBUG


Administration Console

‡ All screens split out and hide the ³advanced´ options


‡ Right-mouse works right in navigation applet
‡ Still some options buried in right-mouse menus
‡ Help is included on the main console screens
‡ New wizard for SSL/Keystore configuration
‡ Wizards for JDBC pools, data sources, etc.
‡ Can test a JDBC pool from the console
‡ Data sources use a drop-down to select JDBC pools!!!
‡ No more Data Sources vs. TX Data Sources« mostly
‡ Network channels rolled into server configuration

March 18 Copyright © 2003 Chariot Solutions DVBUG


WebLogic Workshop
‡ Now possible to use Workshop for:
± Web Services (as before)
± Web applications
± EJBs
± Connectors
± Workflow/BPM (for Integration product)
± etc.
‡ Targeted at J2EE developers with less experience and an
incomplete understanding of important J2EE concepts
‡ The ³VB-killer´ (of course, is it really easier to learn Java, HTML,
XML, JSP, JSP expression language, SQL, JSP tags, and all the
relevant J2EE properties than it is to learn Basic?)
‡ It¶s not clear who wants their least-skilled developers working on
distributed enterprise applications

March 18 Copyright © 2003 Chariot Solutions DVBUG


WLS 8.1 New Tools & J2EE Features
Server Changes

‡ Error messages and suggested actions are indexed on


the WebLogic documentation web site, and available via:
ý  
    — 
‡ JCE is supported for application-level SSL, etc.
‡ Admin tool supports batch mode, JDBC & cluster tests,
always returns 0/1 on success/failure
‡ appc precompiler/validator replaces ejbc & jspc
‡ Smaller client JARs for EJB/RMI clients & JMS clients
‡ Can install Node Manager during basic server install
‡ Server archives a preset number of config.xml files

March 18 Copyright © 2003 Chariot Solutions DVBUG


JDBC Enhancements

‡ JDBC Connection pools can be tested in config wizard,


console, admin tool, etc.
‡ Can set a timeout for clients to wait for a connection from
a full pool (previously only limited by TX timeout)
‡ Can set a retry interval for creating connections (if the
DB is down, etc.)
‡ Can test connections as they are created
‡ Better support for vendor extensions, including the
method getVendorConnection()
‡ Support for JDBC RowSets

March 18 Copyright © 2003 Chariot Solutions DVBUG


Development Tool Enhancements
‡ New recommended development directory structure, lays
out all source code like the EAR, builds to a separate
directory
‡ 3 new tools compile, package, and deploy projects
structured like this

 
 
 
 

!! "  # ý 

ýý ýý  
$$

ýý 
%&'  ý 

ýý 
%&( ý  


 )' 


 )' "  # ý 

 )'
 
%& ý 

   ý
*

March 18 Copyright © 2003 Chariot Solutions DVBUG


Applications: Class Loading

‡ Can add common application libraries to an APP-INF/lib


directory in the EAR
‡ Can specify how individual EJBs are loaded, to make
redeployment faster
± If EJB Home/Remote interfaces are loaded in the normal CL,
and the impl is loaded in a child CL, the impl can be redeployed
without redeploying the entire EJB JAR
± Not recommended for production use
‡ Can manually arrange an entire hierarchy of class
loaders involving individual EJB JARs and WARs in the
weblogic-application.xml deployment descriptor

March 18 Copyright © 2003 Chariot Solutions DVBUG


Applications: Class Loading Example
ƒ  


ƒ+,-
ƒ++ -ë   ƒ++ -
ƒ+,-
ƒ+,-
ƒ++ -ë ƒ++ -
ƒ+,-
ƒ  


ƒ+,-
ƒ++ -   ƒ++ -
ƒ+,-
ƒ+,-
ƒ++ - ƒ++ -
ƒ+,-
ƒ  


ƒ  



March 18 Copyright © 2003 Chariot Solutions DVBUG


Applications: Lifecycle Classes
& Listeners
‡ Startup & shutdown classes are similar to server startup &
shutdown classes, but for individual applications
‡ Listeners extend
weblogic.application.ApplicationLifecycleListener
‡ Packaged in a JAR in the EAR, or in APP-INF/classes
‡ Activated with weblogic-application.xml like this:
ƒ
 
-
ƒ  
ƒ  
 -   ëë   ƒ  
 -
ƒ  + -   ƒ  + -
ƒ  
ƒ  +-ƒ  +
 *-ƒ  ++ *-ƒ  +-
ƒ%+ -ƒ%+ 
 *-ƒ%+ + *-ƒ%+ -
ƒ
 
-

March 18 Copyright © 2003 Chariot Solutions DVBUG


EJB Enhancements

‡ J2EE 1.3 compliant defaults


± parameters by value for remote interfaces
‡ MDBs can be assigned to execute queues using the
 
%
# element in weblogic-ejb-jar.xml
(previously only sessions & entities could do this)
‡ There are some new warnings (EJB loaded from server
classpath, etc.) and the      element in
weblogic-ejb-jar.xml

March 18 Copyright © 2003 Chariot Solutions DVBUG


CMP Entity Bean Enhancements

‡ ³Better performance´
‡ More monitoring information on EJB instance pool/cache
‡ WLS supports bulk updates & deletes as well as bulk
inserts, with appropriate drivers (addBatch(), etc.)
‡ Auto-detects DB type for EJB QL optimization, DDL, etc.
‡ Auto-create tables will replace tables when CMP/CMR
fields change
‡ J2EE 1.3 compliant defaults
± EJB existence checked on every method call (not end of TX)
± Pending changes written before finders/selectors execute
‡ CMP support for DB2

March 18 Copyright © 2003 Chariot Solutions DVBUG


JMS Enhancements

‡ 3rd-party JMS objects can be included in JNDI via the


console
‡ JMS objects declared in an EJB deployment descriptor:
± register in transactions automatically (the JMS provider must
support XA transactions if the EJB method uses one)
± Support application or container authentication to JMS
± Periodically test JMS connections for errors
± Restrict methods which shouldn¶t be called in J2EE apps
± Use pooled JMS sessions

March 18 Copyright © 2003 Chariot Solutions DVBUG


JTA Enhancements

‡ A single non-XA resource can be enlisted in a


transaction. The XA resources support 2-phase commit
(prepare then commit) while the non-XA resource
doesn¶t. The logic looks like this:
1. Prepare all XA resources. If any fail, roll back the TX.
2. Commit the non-XA resource. If it fails, roll back the TX.
3. If everything got this far, commit the XA resources and the TX.

March 18 Copyright © 2003 Chariot Solutions DVBUG


Web Services Enhancements

‡ Uses SOAP 1.2


‡ Implements a pre-release version of WS-Security for
message integrity and confidentiality
± Current spec drafts already differ from WebLogic
implementation
‡ Includes proprietary features for reliable delivery, only
usable between WebLogic clients/servers
‡ Includes proprietary features for Web Services over JMS
(not HTTP[s]), only usable between WebLogic
clients/servers
‡ Not clear why we¶d want to take advantage of any of this

March 18 Copyright © 2003 Chariot Solutions DVBUG


WLS 8.1: Under the Hood
Network & Clustering Enhancements

‡ Reduces sockets required for typical operations


± New client to server load-balancing algorithms can favor a
server for which the client already has open sockets
± Servers can preferentially back up to other servers which they
already have open sockets to
‡ Console is only available on admin server
± can use dedicated admin port as before
‡ Node Manager installation and enhancements make
managed server operation easier

March 18 Copyright © 2003 Chariot Solutions DVBUG


Queues (part 1)
‡ Queues have a queue of pending tasks, and a group of
threads to consume them and do the work
‡ Most queues are only created when they¶re necessary
‡ One admin queue
± JMX
± weblogic.Admin
± console (HTTP)
± Admin server to managed server traffic
‡ One non-blocking queue (used to be several)
± In-memory replication
± Transactions
± Stateful session bean replication

March 18 Copyright © 2003 Chariot Solutions DVBUG


Queues (part 2)

‡ Multicast queue
± JNDI announcements System queue
± Internal tasks such as HTTP session invalidation
± Development mode poller for application updates
± Transaction timeouts
‡ JMS dispatcher queue
± Sends JMS messages
‡ JMSStore IO queue
± Reads/writes persistent messages, etc.
‡ JMS Timer queue
± Delivery timeouts, etc.

March 18 Copyright © 2003 Chariot Solutions DVBUG


Queues (part 3)

‡ Default queue
± Handles user requests
‡ User-defined queues
± In 8.1, can define on:
‡ EJB (including MDB)
‡ EJB JAR
‡ Servlet (including JSP)
‡ WAR
± Used for performance management for apps
± Used to defeat deadlocks on multi-hop requests
‡ A request only switches threads/queues on remote calls
(to another server, or servlet to EJB)

March 18 Copyright © 2003 Chariot Solutions DVBUG


Threads (part 1)

‡ Listen threads
± plain text (t3, http, etc.)
± secure (t3s, https, etc.)
± admin port (used to be mixed with secure)
± network channels
‡ Health monitor thread
± More information available when using JRockit
‡ Timed event generator (1 thread only)
± Cluster heartbeat
± Scheduled jobs
± Only high priority thread in the whole server

March 18 Copyright © 2003 Chariot Solutions DVBUG


Threads (part 2)
‡ Socket Reader threads
± % of threads in the default queue
± Synchronous reading when using Java IO (haven¶t got all the kinks
worked out for NIO)
‡ Would like to have 1 thread per socket
‡ OK for a client, not so good for a server
± Asynchronous when using a performance pack
± Fewer threads are necessary due to improved affinity and
conservation of sockets
‡ Thread dumps
± weblogic.Admin « THREAD_DUMP
± kill -3
± Ctrl-Break
± JRockit management console
± J2SE 1.4 has better deadlock detection then most J2SE 1.3 VMs

March 18 Copyright © 2003 Chariot Solutions DVBUG


JDBC

‡ No JDO support planned


‡ RowSet support introduced in 8.1
± Supports disconnected operation (get data, manipulate, send
back and apply and lose any intervening changes)
± Supports disconnected optimistic operation (get data,
manipulate, send back, server checks for intervening updates)
± Can serialize as objects or to XML
± WLS aggregates changes and uses bulk updates
± Supports arbitrary SQL, some support for updating a multi-table
query
‡ RowSets will likely be expanded in future releases
± caching, explicit PKs/FKs, Object/XML wrappers, QL, etc.

March 18 Copyright © 2003 Chariot Solutions DVBUG


WebLogic 8.1 Platform Timeline
Timeline

‡ WebLogic Server 8.1 final and JRockit 8.1 final due at


the end of March
‡ WebLogic Platform 8.1 final due by the end of ³Q2´
(JavaOne?)
‡ Next release is ³Diablo´
± beta Q1 2004
± final Q2 2004

March 18 Copyright © 2003 Chariot Solutions DVBUG


Bonus Slide

If you haven¶t heard:


‡ It is now free to develop on WebLogic
± You can download a 1-year, 20-connection license
‡ For $599, you get quarterly CD releases, support,
³education materials´, and WebLogic Developers Journal
‡ For $4659 you get all that plus a copy of JBuilder 8
WebLogic Edition with JBuilder Enterprise support

March 18 Copyright © 2003 Chariot Solutions DVBUG


  
‡ Download slides at:

http://www.chariotsolutions.com/presentations.html

‡ Presentation feedback at:

http://www.chariotsolutions.com/feedback.html

March 18 Copyright © 2003 Chariot Solutions DVBUG

Potrebbero piacerti anche