Some notes that I managed to take whilst at the talk.
www.glassfish.org
Claimed to be the fastest Java EE AS
V2.0 -> reference implementation for Java EE 5
V3.x -> reference implementation for Java EE 6
Java EE standard 10 years old
Metro -> Interop between MS and Java WS.* standards
GlassFish is Open Source under CDDL and GPL 2 license
java.sun.com/javaee
Transparent development
Organic growth into middleware areas
First appearance 2005
V2 in 2007
Current v2.1 in Feb 2009
www.beta.glassfish.java.net:81/maps
6-700 downloads per month, 8 million in the last year / ~28k per day
GlassFish portfolio is a set of related technologies including the AS
- Enterprise server (including support for SNMP)
- Web space server (joined with Life Ray - social networking & portal technologies)
- Web sack (a complete (L)(S)(?)AMP stack)
- GlassFish ESB (SOA platform) for integration, connectors, adaptors
Java EE + Ruby on Rails, PHP and other frameworks
(note - what is SFA?)
Enterprise version adds:
- Performance advisor, performance monitor, SNMP, self management and alert manager
- Update center
Example / reference sites:
- wotif.com - Glassfish & OpenMQ
- www.travelmuse.com GlassFish, message queue and mysql (started by using community edition)
- North american Nationwide Health Information Network - connect (NHIN- Connect)
- OpenESB
- ESB.SOA framework
- Facebook - large mysql based system ~70million users
GlassFish has same levels and structure in terms of support and licensing as MySQL
Web Services: WS.*
- Metro is core in GlassFish AS
- Project Metro Web services stack provides high level WS stack with security, reliability etc -> .NET 3 interoperability (incorporates project tango - MS .NET interop)
REST
- JAX-RS JSR-311 Java API for RESTFul Web Services
- Annotation based server side API
- HTTP Centric
- Server Side only
- Servlet or SE deployment
Jersey project provides implementation for JSR-311
Performance:
Similar / faster than Weblogic and Websphere
GlassFish V3:
- OSGi: Apache Felix as default (origins in JSR-8)
- 1 sec startup
- 21Mb download
- admin and update tool downloaded on demand
Add-ons, modules available from update center:
- EJB 3.1 (preview
- jRuby on Rails (new WAR packaging required)
- Grails (also on GFv2)
- Jersey and Metro (Web services)
- jMaki (AJAX)
Tools:
- NetBeans and Eclipse
- Embedded GlassFish API
MicroKernel approach - modularity - base App server + on demand module loading, extensible and customizable
("Eclipse Con" -> announces GlassFiish bundle available)
Db connection pooling and connection (connector) pooling (JCA)
V3 Prelude
- available from http://glassfish.org -> using modular (microkernel) v3 ideas with existing EE5 technologies -> this version is supported!
- v3 prelude is Java EE Web layer only (i.e. servlets, JSPs etc but no Enterprise beans etc)
Compile / Deploy on Change support, dynamic debug loop (netbeans & eclipse), incremental compile of all Java EE artifacts. Auto-deply of all Java EE and static artifacts
Support for: JRuby, Ruby, Groovy, Grails, Python, jython, django, jmaki, JavaScript phobos
Ruby / jRuby and rails can be run on 2.1 today (by packaging up dependancies), on v3 available as OSGi jRuby container
PHP
- Quercis (Caucho) opensource GPL php 5 implementation in Java
- War Packaging
- Java Bridge
V2 -> ee 5
V3 -> prelude with EE5 support
V3 -> early access is EE6 spec (but not supported)
GF Web Stack:
- Apache HTTPd
- Sun web server 7 (most scalable web server - now open sourced!) optimized for multi-core CMT (chip-based Multithreaded) systems - 2x scaling vs. Apache & Tomcat
- lightpd
- memcached
- mod_jk, perl, ruby, PHP Ruby, Python, Squid, Tomcat
Current GF web stack is 1.4 (Python 2.5.2, Squid 2.6, Tomcat 5.5.27, memcached 1.2.5, mysql 5.0.67)
GF ESB:
- JSR 208 JBI (Java business Integration)
- Plug-able integration into backbone
- "Metacontainer" - add new containers within the container, extend the AS
- BPEL, WS-*, XSLT, FTP, LDAP, HTTP, DB service and binding
- Based on OpnESB -> http://openesb.org / community open-esb.dev.java.net/Components.html
- Maybe engines and connectors to things like Corba etc
What's next -> http://fuji.dev.java.net -> OpenESB V3 - next gen of SOA
(JBI and SCA stated as "complimentary, not conflicting")
GF: Web Space server (project web synergy)
- Portlet spec JSR-268 and more (social networking, communities)
- OpenSSO, identify mechanisms
- Compelling web UIs
GF enterprise manager:
- Performance advisor
- Alerts
- JDBC pool management - automatically tunes JDBC connection pool to optimize performance etc
Sailfin (Ericson contribution) telco, SIP, VOIP, Instant messaging
dtrace etends into Apache and PHP
Revamped PetStore 4 part tutorial - developer.sun.com
OpenSSO -> new concept "express builds" - milestone interim builds from Open Source community in between main supported releases
WhitePapers:
New White-papers on GlassFish portfolio launch:
- Comparison with Tomcat
- Performance optimization
- GF with identify and MySQL
Training available in Camberly, BSG in London etc
www.javapassion.com
Books:
- GlassFish
- Database-driven application development
- Others available (I didn't get time to note them down)
blogs.sun.com/theaquarium -> god launch pad for developer information
blogs.sun.com/stories -> gives examples and real usage info
Migration tools:
migrate2glassfish.dev.java.net/blogs/blogs.html
built in tools to detect and advise on code usage (for EE standards and vendor specific code dependancies)
--
Examples:
JavaFX mobile - answer to J2ME shortcomings
www.javafx.com -> many tutorials and demos
GlassFish profiles - Developer mode (no clustering etc) but fast start up and change deployment
Clustering:
DAS - Domain Administration server looks after a cluster, deploy to the domain administration server and it deploys to the cluster nodes.
Session replication between cluster nodes, zero down time when switching between nodes
install with -cluster switch
Cluster elements run "node-agents" to talk to the DAS
Extra sections in the admin console -> shows cluster nodes
GlassFish performance monitor - enterprise only (TBC)?
V3 Prelude - web tier only (web apps) but fully functional
Presentation has now been published here: http://uk.sun.com/sunnews/events/2009/mar/glassfish/pdf/UK-GlassFish-Portfolio-Launch-mar09.pdf
.
1 comment:
Thanks for listing specific GF web stack info (pythod 2,5,2, quid 2,6 tomcat 5.5.27, memcached 1.2.5 mysql 5.0.67).
Useful info.
FYI, folks at Gear6 working to add hybrid cache architectures that incorporate both high-speed DRAM and large amounts of economical flash memory to memcached. Very large amounts of memcache memory can be deployed per unit of rack space, providing DRAM cache performance without increasing latency.
Post a Comment