Web Logic 81
-
Upload
billapavan -
Category
Documents
-
view
217 -
download
0
Transcript of Web Logic 81
-
8/8/2019 Web Logic 81
1/45
Introducing WebLogic Server 8.1
Delaware Valley BEA User Group
Aaron MulderChief Technical Officer
Chariot Solutions
-
8/8/2019 Web Logic 81
2/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
Tonight, well take a look at
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
-
8/8/2019 Web Logic 81
3/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
About Aaron Mulder
Chief Technical Officer of Chariot Solutions
Published author (Professional EJB, BEA WebLogic 7.0Server Deployment and Administration Handbook)
Presented at JavaOne 2001-2003, the Philadelphia JavaUsers Group, local seminars, etc.
Member of the JSR-88 Expert Group (J2EE ApplicationDeployment)
Contributed to open-source projects such as JBoss,OpenEJB, and PostgreSQL
-
8/8/2019 Web Logic 81
4/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
About Chariot Solutions
Information Technology provider focused on automatingbusiness 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 theState of New Jersey
-
8/8/2019 Web Logic 81
5/45
-
8/8/2019 Web Logic 81
6/45
WLS 8.1 J2SE and J2EE Support
-
8/8/2019 Web Logic 81
7/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
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)
-
8/8/2019 Web Logic 81
8/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
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 notuse 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
-
8/8/2019 Web Logic 81
9/45
WLS 8.1 UI Improvements
-
8/8/2019 Web Logic 81
10/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
(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 beindividual
Configuration wizard doesnt divide domains based onnumber of servers any more
Still need to select a domain type for the services toinclude (Workshop, Examples, Platform, etc.)
Wizard lets you configure services such as JDBC, JMS,etc.
Can use the wizard to update existing domains
-
8/8/2019 Web Logic 81
11/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
Configuration Wizard Screen Shots
-
8/8/2019 Web Logic 81
12/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
Configuration Wizard Screen Shots
-
8/8/2019 Web Logic 81
13/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
Configuration Wizard Screen Shots
-
8/8/2019 Web Logic 81
14/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
Configuration Wizard Screen Shots
-
8/8/2019 Web Logic 81
15/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
Configuration Wizard Screen Shots
-
8/8/2019 Web Logic 81
16/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
Configuration Wizard Screen Shots
-
8/8/2019 Web Logic 81
17/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
Configuration Wizard Screen Shots
-
8/8/2019 Web Logic 81
18/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
Configuration Wizard Screen Shots
-
8/8/2019 Web Logic 81
19/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
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
-
8/8/2019 Web Logic 81
20/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
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 anincomplete 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 therelevant J2EE properties than it is to learn Basic?)
Its not clear who wants their least-skilled developers working ondistributed enterprise applications
-
8/8/2019 Web Logic 81
21/45
-
8/8/2019 Web Logic 81
22/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
Server Changes
Error messages and suggested actions are indexed onthe WebLogic documentation web site, and available via:java weblogic.GetMessage -detail -id BEA-010202
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
-
8/8/2019 Web Logic 81
23/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
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 froma full pool (previously only limited by TX timeout)
Can set a retry interval for creating connections (if theDB is down, etc.)
Can test connections as they are created
Better support for vendor extensions, including themethod getVendorConnection()
Support for JDBC RowSets
-
8/8/2019 Web Logic 81
24/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
Development Tool Enhancements
New recommended development directory structure, laysout all source code like the EAR, builds to a separatedirectory
3 new tools compile, package, and deploy projects
structured like this
src/META-INF/application.xml (& weblogic-application.xml)
src/APP-INF/lib/3rdparty.jar
src/ejbjar/META-INF/ejb-jar.xml (& weblogic DDs)
src/ejbjar/com/somewhere/SomeBean.java
src/ejbjar/com/somewhere/SomeHome.java (etc)src/webwar/WEB-INF/web.xml (& weblogic.xml)
src/webwar/WEB-INF/lib/3rdparty.jar
src/webwar/WEB-INF/classes/com/somewhere/Servlet.java
src/webwar/index.jsp
-
8/8/2019 Web Logic 81
25/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
Applications: Class Loading
Can add common application libraries to an APP-INF/libdirectory in the EAR
Can specify how individual EJBs are loaded, to makeredeployment 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 redeployedwithout redeploying the entire EJB JAR
Not recommended for production use
Can manually arrange an entire hierarchy of classloaders involving individual EJB JARs and WARs in theweblogic-application.xml deployment descriptor
-
8/8/2019 Web Logic 81
26/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
Applications: Class Loading Example
parent-ejb.jar
parent-web.war
child-ejb.jar
child-web.war
-
8/8/2019 Web Logic 81
27/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
Applications: Lifecycle Classes& Listeners
Startup & shutdown classes are similar to server startup &shutdown classes, but for individual applications
Listeners extendweblogic.application.ApplicationLifecycleListener
Packaged in a JAR in the EAR, or in APP-INF/classes Activated with weblogic-application.xml like this:
com.test.AppListener
listeners.jar
-
8/8/2019 Web Logic 81
28/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
EJB Enhancements
J2EE 1.3 compliant defaults
parameters by value for remote interfaces
MDBs can be assigned to execute queues using thedispatch-policy element in weblogic-ejb-jar.xml
(previously only sessions & entities could do this)
There are some new warnings (EJB loaded from serverclasspath, etc.) and the disable-warning element in
weblogic-ejb-jar.xml
-
8/8/2019 Web Logic 81
29/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
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/CMRfields 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
-
8/8/2019 Web Logic 81
30/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
JMS Enhancements
3rd-party JMS objects can be included in JNDI via theconsole
JMS objects declared in an EJB deployment descriptor:
register in transactions automatically (the JMS provider mustsupport XA transactions if the EJB method uses one)
Support application or container authentication to JMS
Periodically test JMS connections for errors
Restrict methods which shouldnt be called in J2EE apps
Use pooled JMS sessions
-
8/8/2019 Web Logic 81
31/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
JTA Enhancements
A single non-XA resource can be enlisted in atransaction. The XA resources support 2-phase commit(prepare then commit) while the non-XA resourcedoesnt. 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.
-
8/8/2019 Web Logic 81
32/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
Web Services Enhancements
Uses SOAP 1.2
Implements a pre-release version of WS-Security formessage integrity and confidentiality
Current spec drafts already differ from WebLogicimplementation
Includes proprietary features for reliable delivery, onlyusable between WebLogic clients/servers
Includes proprietary features for Web Services over JMS
(not HTTP[s]), only usable between WebLogicclients/servers
Not clear why wed want to take advantage of any of this
-
8/8/2019 Web Logic 81
33/45
WLS 8.1: Under the Hood
-
8/8/2019 Web Logic 81
34/45
-
8/8/2019 Web Logic 81
35/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
Queues (part 1)
Queues have a queue of pending tasks, and a group ofthreads to consume them and do the work
Most queues are only created when theyre 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
-
8/8/2019 Web Logic 81
36/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
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.
-
8/8/2019 Web Logic 81
37/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
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)
-
8/8/2019 Web Logic 81
38/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
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
-
8/8/2019 Web Logic 81
39/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
Threads (part 2)
Socket Reader threads % of threads in the default queue
Synchronous reading when using Java IO (havent got all the kinksworked 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 andconservation 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
-
8/8/2019 Web Logic 81
40/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
JDBC
No JDO support planned
RowSet support introduced in 8.1
Supports disconnected operation (get data, manipulate, sendback 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-tablequery
RowSets will likely be expanded in future releases
caching, explicit PKs/FKs, Object/XML wrappers, QL, etc.
-
8/8/2019 Web Logic 81
41/45
WebLogic 8.1 Platform Timeline
-
8/8/2019 Web Logic 81
42/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
Timeline
WebLogic Server 8.1 final and JRockit 8.1 final due atthe 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
-
8/8/2019 Web Logic 81
43/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
Bonus Slide
If you havent 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 8WebLogic Edition with JBuilder Enterprise support
-
8/8/2019 Web Logic 81
44/45
Questions?
-
8/8/2019 Web Logic 81
45/45
DVBUGMarch 18 Copyright 2003 Chariot Solutions
Download slides at:
http://www.chariotsolutions.com/presentations.html
Presentation feedback at:
http://www.chariotsolutions.com/feedback.html