GlassFish Gem Vivek Pandey Sun Microsystems, Inc.

Slides:



Advertisements
Similar presentations
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 15 Introduction to Rails.
Advertisements

Introduction to Linux Recap Installing programs Introduction to Video Editing with Linux.
Chapter 2.2 – More about Ruby Maciej Mensfeld Presented by: Maciej Mensfeld More about Ruby dev.mensfeld.pl github.com/mensfeld senior.
2 Copyright © 2005, Oracle. All rights reserved. Installing the Oracle Database Software.
Creating Web Services with Ruby on Rails Robert Thew Internet and Web Systems II.
NODEMANAGER WEBLOGIC SERVER. 1.Creating logical machines 2.Using nodemanager for server startup and shutdown GETTING STARTED.
Object-Oriented Enterprise Application Development Tomcat 3.2 Configuration Last Updated: 03/30/2001.
NuGet Sweet, but not edible Chris
27-Jun-15 Rails. What is Rails? Rails is a framework for building web applications This involves: Getting information from the user (client), using HTML.
MCTS Guide to Microsoft Windows Server 2008 Network Infrastructure Configuration Chapter 8 Introduction to Printers in a Windows Server 2008 Network.
Tomcat Configuration A Very, Very, Very Brief Overview.
SETUP AND CONFIGURATIONS WEBLOGIC SERVER. 1.Weblogic Installation 2.Creating domain through configuration wizard 3.Creating domain using existing template.
AMG Attendance System Product Description Copyright © 2009 AMG Employee Management, Inc.AMG Employee Management, Inc.
NDT Tools Tutorial: How-To setup your own NDT server Rich Carlson Summer 04 Joint Tech July 19, 2004.
Talend 5.4 Architecture Adam Pemble Talend Professional Services.
Apache Tomcat Web Server SNU OOPSLA Lab. October 2005.
Booting and boot levels
Basic Programming in Ruby Today’s Topics: Introduction last class irb history log Methods Classes (briefly) Using 3 rd Party Libraries rubygems ‘ require.
AUTOBUILD Build and Deployment Automation Solution.
By: Maksim Surguy & Cesar Acosta require 'sinatra‘ get ‘/' do "Hello World!" end.
11 MANAGING AND DISTRIBUTING SOFTWARE BY USING GROUP POLICY Chapter 5.
1 Apache. 2 Module - Apache ♦ Overview This module focuses on configuring and customizing Apache web server. Apache is a commonly used Hypertext Transfer.
Isecur1ty training center Presented by : Eng. Mohammad Khreesha.
Ruby on Rails Your first app. Rails files app/ Contains the controllers, models, views and assets for your application. You’ll focus on this folder for.
Lecture 11 Rails Topics SaaSSaaS Readings: SaaS book Ch February CSCE 740 Software Engineering.
Contents 1.Introduction, architecture 2.Live demonstration 3.Extensibility.
USING RUBY An Introduction By Evgeny Rahman. About Me Principal Engineer at FirstFuel Software 10+ years in Software Engineering 5 years working with.
Topic Java EE installation (Eclipse, glassfish, etc.) Eclipse configuration for EE Creating a Java Web Dynamic Project Creating your first servlet.
Security monitoring boxes Andrew McNab University of Manchester.
Chapter 10 Chapter 10: Managing the Distributed File System, Disk Quotas, and Software Installation.
Wordpress with Mina Automated Deployment Solution Jonathan Gravato DIG 4104c.
GLite build and integration system Building and Packaging Robert HARAKALY
Philip Repsher October 29 th, 2008 Or Maybe November 3 rd, 2008.
Servo Motors Precise angular motion. Servo Motors Raspberry Pi Webcam Interfaces Keeping track of things.
Maite Barroso - 10/05/01 - n° 1 WP4 PM9 Deliverable Presentation: Interim Installation System Configuration Management Prototype
Lecture 02 File and File system. Topics Describe the layout of a Linux file system Display and set paths Describe the most important files, including.
IBM Express Runtime Quick Start Workshop © 2007 IBM Corporation Deploying a Solution.
2: Operating Systems Networking for Home & Small Business.
1 Rails for the Ruby-Impaired John Paul Ashenfelter CTO/Transitionpoint.
Linux and Coldfusion MX Mid-Michigan Coldfusion User’s Group, Nov
C Copyright © 2006, Oracle. All rights reserved. Oracle Secure Backup Additional Installation Topics.
Presented By P.SRIVIDYA 085D1A0552 Programming Language.
Linux Administration – Finding You Way on the Command Line The Linux File Directory or Tree.
Presentation Title Up to Three Lines Long Arial 28pt Name, 26pt Speaker Company, 18pt Misc. Info, 16pt Speaker logo centered below photo.
Know Your GlassFish Gem Jacob Kessler. Overview ● Fast, simple, easy – gem install glassfish – glassfish. ● Everything from GlassFish to serve a Ruby.
Moving Legacy Applications to Docker Josh Ellithorpe Software Architect (NOTE: PASTE IN PORTRAIT AND SEND BEHIND FOREGROUND GRAPHIC FOR CROP)
Agenda:- DevOps Tools Chef Jenkins Puppet Apache Ant Apache Maven Logstash Docker New Relic Gradle Git.
Stress Free Deployments with Octopus Deploy
Admin Console for Glassfish v2
Installation of MySQL Objectives Contents Practical Summary
Section 4 – Link Access Module (Lam) aka Data Adapters
Docker Birthday #3.
Ruby Tooling in NetBeans
Logging In ASP.Net Core 1.1.
JRuby Charles Oliver Nutter
JRuby on Rails Charles Oliver Nutter JRuby Core Developer
Ruby, Rails, GUIs, and More
Advanced Integration and Deployment Techniques
SQL Server on Linux Troubleshooting tips and tricks
J2EE Application Development
Apache Tomcat Web Server
Logging In ASP.Net Core 2.0.
Data Security for Microsoft Azure
ESIS Consulting LLC (C) ESIS Consulting LLC. All rights reserved
Chapter 15 Introduction to Rails.
Configuration Of A Pull Network.
SUSE Linux Enterprise Desktop Administration
Last.Backend is a Continuous Delivery Platform for Developers and Dev Teams, Allowing Them to Manage and Deploy Applications Easier and Faster MICROSOFT.
Deploy Software with Group Policy
Open Automation Software
Presentation transcript:

GlassFish Gem Vivek Pandey Sun Microsystems, Inc.

2 What is gem? > Ruby packaging system > Standard format for distributing Ruby programs and libraries > An easy to use tool for managing the installation of gem packages ● gem install > You can serve Ruby gem from your own server

3 Overview of Glassfish gem > Based on GlassFish v3 Kernel > Lightweight: 3.4 MB > Easy installation ● gem install glassfish > Run any Rack based Ruby application ● Rails, Merb, Sinatra, Ramaze... >

4 By Default... > One command ● glassfish > Deploy a Rails, Merb, or Sinatra app ● With the root in the current directory ● On port 3000 ● With context root '/' ● In the development environment ● Logging to./log/glassfish.log ● Using a single JRuby runtime > Normally fine for most things

5 Let's start changing things! > -c, --contextroot PATH > -p, --port PORT > -e, --environment ENV ● One of development, test, or production > --log-level, control how much log you want to see > -l, log file to log message to

How Can You Be In Two Places At Once? > -n, --runtimes NUMBER ● Activates the JRuby runtime pool for non-threadsafe applications ● Automatically creates and manages multiple Rails instances for your application ● Control size with --runtimes-min and --runtimes-max ● Normally safe to use 1 and the limit of your server ● Not applicable with config.threadsafe! or thread-safe frameworks ● Option is ignored

Daemons in the Deep! > -d, --daemon ● Enter daemon mode (Unix and Linux only) > -P, --pid FILE ● file to store PID information for daemonized gem ● Defaults to tmp/pids/glassfish.pid

In Case Something Goes Wrong > -l, --log FILE ● file to write the server log to ● Defaults to./log/glassfish.log ● -l or --log with no arguments logs to console > --log-level {0-7} ● Sets the log level ● Higher levels will generate more logging ● Default 3 (INFO)

Anatomy of a GlassFish > glassfish -c /helloworld/ -p 80 -e production -n 2 --runtimes-min 1 --runtimes-max 4 -d -P /home/jacob/rails/helloworld/pid -l /home/jacob/rails/helloworld/server.log --log-level 1 /home/jacob/rails/helloworld

Anatomy of a GlassFish > glassfish -c /helloworld/ -p 80 -e production -n 2 --runtimes-min 1 --runtimes-max 4 -d -P /home/jacob/rails/helloworld/pid -l /home/jacob/rails/helloworld/server.log --log-level 1 /home/jacob/rails/helloworld

Anatomy of a GlassFish > glassfish -c /helloworld/ -p 80 -e production -n 2 --runtimes-min 1 --runtimes-max 4 -d -P /home/jacob/rails/helloworld/pid -l /home/jacob/rails/helloworld/server.log --log-level 1 /home/jacob/rails/helloworld

Anatomy of a GlassFish > glassfish -c /helloworld/ -p 80 -e production -n 2 --runtimes-min 1 --runtimes-max 4 -d -P /home/jacob/rails/helloworld/pid -l /home/jacob/rails/helloworld/server.log --log-level 1 /home/jacob/rails/helloworld

Anatomy of a GlassFish > glassfish -c /helloworld/ -p 80 -e production -n 2 --runtimes-min 1 --runtimes-max 4 -d -P /home/jacob/rails/helloworld/pid -l /home/jacob/rails/helloworld/server.log --log-level 1 /home/jacob/rails/helloworld

Anatomy of a GlassFish > glassfish -c /helloworld/ -p 80 -e production -n 2 --runtimes-min 1 --runtimes-max 4 -d -P /home/jacob/rails/helloworld/pid -l /home/jacob/rails/helloworld/server.log --log-level 1 /home/jacob/rails/helloworld

Anatomy of a GlassFish > glassfish -c /helloworld/ -p 80 -e production -n 2 --runtimes-min 1 --runtimes-max 4 -d -P /home/jacob/rails/helloworld/pid -l /home/jacob/rails/helloworld/server.log --log-level 1 /home/jacob/rails/helloworld > Somewhat contrived

I'm Not Typing That Every Time! > --config FILE ● Reads configuration data from a file ● Generate a template file using “gfrake config” ● yml format

17 gfrake > GlassFish rake command ● gfrake -T > Create glassfish.yml file ● gfrake config > Clean GlassFish temporary files ● gfrake clean > Clean inactive PID files ● rake tmp:pids:clear

So, what does this mean? > Can replace Mongrel/Thin in both development and production > Equivalent or faster speed > Fully threaded implementation ● Pooled Rails instances ● Threadsafe Rails ● Minimal locking

What else does this mean? > Same environment in development and production > Proven stability and engineering ● Same code and web server as GlassFish V3

When Should I use Gem? > You want the stability and power of GlassFish without having to set up a full app server > You want a Ruby-like way of doing things > You don't need the other capabilities of a full GlassFish server

But I want Automated Management! > GlassFish Gem works with Capistrano ● GlassFish server does too > Only minimal changes needed, can be a drop-in replacement in existing scripts and deployments ● Each Capistrano task is just a remapping of an existing command > Example scripts available at and_glassfish_now_with

Vivek Pandey