Professional Documents
Culture Documents
dkimages.com
What is GlassFish ?
GlassFish: It's a Community!
GlassFish: Lives on java.net
Since 2005
GlassFish: Open Source and Enterprise Quality
GlassFish: Java EE 5 and 6 Reference
Implementation
Java EE 5
Java EE 6
Commercially Supported Product: Sun GlassFish
Enterprise Server
Enterprise Manager
Customer
Advocate eLearning
Credit
GlassFish
Sun VIP Open Source
Interoperability Patches &
Application Server
Support Upgrades
GlassFish v2
GlassFish v2: Web-based Administration
GlassFish v2: SOAP, REST, .NET interoperability
GlassFish v2: Clustering & Load Balancing
GlassFish v2: IDE support
GlassFish v3
GlassFish v3: Modular
GlassFish v3: Embeddable
GlassFish v3: Extensible
Why Rails on GlassFish ? - Agile
Why ? - Easy prototyping, yet powerful
Why ? - Best of both worlds
Why ? - A feature for every one: Database
Connection Pooling
Why ? - A feature for every one: Management
Why ? - A feature for every one: Monitoring
Why ? - A feature for every one: Threading
Why ? - A feature for every one
Why ? - Improvements in JVM DL Compilers
Why ? - Deployment choices: Directory, WAR,
Embedded
Credits: http://www.flickr.com/photos/bostonbrahmin/177442308/
Directory-based deployment: How ?
asadmin start-domain
asadmin create-jvm-options -DJRUBY_HOME=...
asadmin deploy railsconf
Directory-based deployment: Recipes
Credits: http://blogs.sun.com/Jacobkessler/entry/capistrano_and_glassfish
Rails on GlassFish: GlassFish Gem
GlassFish Gem: How ?
http://blogs.sun.com/arungupta/entry/totd_70_jruby_and_glassfish
GlassFish Gem: Options
jruby -S glassfish -h
Credits: http://blogs.sun.com/Jacobkessler/entry/capistrano_and_glassfish_now_with
Not Just Rails ...
http://blogs.sun.com/arungupta/entry/totd_53_scaffold_in_merb
http://blogs.sun.com/arungupta/entry/totd_80_sinatra_crud_application
And more ...
http://weblogs.java.net/blog/vivekp/archive/2009/04/plugin_any_ruby.html
Deployment Options
http://blogs.sun.com/arungupta/entry/totd_81_how_to_use
http://blog.headius.com/2009/04/apache-jruby-rails-glassfish-easy.html
Rails on GlassFish: WAR Deployment
Credits: http://birdwatchersdigest.com
WAR Deployment: How ?
http://blogs.sun.com/arungupta/entry/totd_73_jruby_and_glassfish
WAR Deployment: How in NetBeans ?
WAR Deployment: Packaging
Rails on GlassFish: Update Center
NetBeans: Develop with Pleasure
http://blogs.sun.com/arungupta/entry/screencast_26_develop_run_debug
Rails Monitoring
• Basic Monitoring
- jinfo: System properties and VM CLI flags
- jmap: Shared object memory map
- jstack: Stack traces of Java threads
- jstat: Performance statistics on class, JIT compiler, GC, ...
• Advanced
- jconsole / Visual VM
- NewRelic, FiveRuns, ...
jConsole
http://blogs.sun.com/arungupta/tags/rubyonrails+jmx
Turning A platform and ecosystem
collaboration for Developers to:
upside-down
• Freely host open source
projects and code
• Connect, Communicate,
Collaborate, and Code with
peers
• Eventually easily deploy
applications/services to
“clouds”
• http://kenai.com
Endorsements had no reliability and
performance issues with
Glassfish
money is on JRuby (and
Look like the best Glassfish) for the long
deploying option I ever haul; if you haven't checked
found for Rails, GREAT! out Glassfish yet, you're doing
yourself a disservice!
nice way to deploy and
manage my app while leaving
things open for scaling
railscamp.eventbrite.com
Resources
• glassfish.org
• blogs.sun.com/theaquarium
• glassfish-scripting.dev.java.net
• wiki.glassfish.java.net/Wiki.jsp?page=JRuby
• blogs.sun.com/arungupta