Deploying and Monitoring Ruby on Rails A practical guide

Size: px
Start display at page:

Download "Deploying and Monitoring Ruby on Rails A practical guide"

Transcription

1 Deploying and Monitoring Ruby on Rails A practical guide Mathias Meyer and Jonathan Weiss, Peritor GmbH

2 Who are we? Jonathan Weiss Consultant for Peritor GmbH in Berlin Specialized in Rails, Scaling, Deployment, and Code Review Webistrano - Rails deployment tool FreeBSD Rubygems and Ruby on Rails maintainer 2

3 Who are we? Mathias Meyer Independent Contractor Specialized in Rails, Performance/Database Tuning, Deployment, and Refactoring Macistrano Webistrano-Client for Mac OS X (and soon the iphone) 3

4 Agenda Infrastructure Deployment Practical Session Monitoring Q & A 4

5 Infrastructure Infrastructure 5

6 Simple Rails Setup One Rails instance handles all requests Rails is single-threaded: There is only one concurrent request 6

7 Rails Setup 7

8 Rails Setup 8

9 Typical Rails Setup A load-balancer distributes the incoming requests Some load-balancers will deliver static requests themselves Several Rails instances handle all requests Number of concurrent requests equals number of Rails instances 9

10 Rails Setup Options 10

11 Deployment Questions Mongrel? mod_proxy_balancer? Proxy? Apache? Pound? FastCGI? Load-balancer? Nginx? HA-Proxy? Ebb? Swiftiply? mod_rails? Reverse Proxy? Phusion Passenger? Thin? Rails Application Server? Lighttpd? Pen? 11

12 What we are going to cover today Rails Application Server FastCGI Mongrel mod_rails / Phussion Passenger JRuby + Glassfish & Co. Proxy/Web Server Apache2 Nginx Lighttpd HA-Proxy 12

13 FastCGI 13

14 FastCGI Protocol to communicate with long-running CGI applications Usage of either mod_fcgi with Apache 1.3 or mod_fcgi with Lighttpd Proxy local and remote FastCGI instances Oldest way of deploying Rails Deprecated and unstable Hard to debug (FastCGI protocol) 14

15 FastCGI 15

16 FastCGI 16

17 17

18 Mongrel 18

19 Mongrel Developed by Zed Shaw as an alternative to FastCGI Complete HTTP-Server that can load arbitrary Ruby-servlets Built-in Rails support 19

20 Mongrel 20

21 Mongrel Apache 2.2 mod_proxy_balancer Lighttpd Nginx HA-Proxy Pound 21

22 Mongrel Cluster Utility to manage several Mongrel instances 22

23 Mongrel Cluster Control Mongrels 23

24 Mongrel and Apache 2.2 Define Mongrel Cluster in Apache 24

25 Simple Mongrel and Apache 2.2 Redirect all traffic to the Mongel cluster 25

26 A more complex example Redirect dynamic requests Serve static content Support cached pages Support maintenance page Enable client-side caching of images, stylesheets, and JavaScript Compress output if supported 26

27 Mongrel Very robust Strict HTTP parser Easy to debug (HTTP!) Defacto standard deployment with Apache 2.2 and mod_proxy_balancer Can be a bit difficult to setup (mongrel_cluster, ports, Apache) Not so easy on mass/virtual hosting 27

28 mod_rails 28

29 mod_rails a.k.a Phusion Passenger Fairly new module for Apache 2.2 Allows Apache to control Rails instances Apache starts and stops application instances depending on the application load Very easy to setup Able to run any RACK-compatible Ruby application (Merb & Co.) Only manages Rails on one host - no remote instances Combine with HTTP-Proxy / balancing solution 29

30 Install Phusion Passenger Install Apache module Load and activate in Apache 30

31 Customized Phusion Passenger Control Rails instance number 31

32 Control Phusion Passenger Restart after deployment: 32

33 Phusion Passenger One machine 33

34 Phusion Passenger One machine Multiple machines 34

35 Phusion Passenger Fairly new but ready for production Makes setup easier on the single machine level Multiple servers still require load balancer Suitable for mass-hosting The upcoming standard way of deploying Rails 35

36 JRuby 36

37 Ruby Runtime on the Java Virtual Machine Implemented in Java and Ruby Compiles Ruby into Java-bytecode Integrates with Java code and libraries Java s promises of native threads and JIT Allows for Ruby/Rails applications to be packaged as WAR files WAR files deployable on any J2EE-container: Glassfish, JBoss, Tomcat, Jetty, 37

38 JRuby on Rails 38

39 JRuby on Glassfish One machine 39

40 JRuby on Glassfish One machine Multiple machines 40

41 Setup JRuby on Glassfish 1. Download JRuby and Glassfish 2. From 41

42 Warble Configuration Define min/max Rails runtimes 42

43 Rails Setup 43

44 Proxy Options 44

45 Proxy Requirements Hide cluster backend from the user Load-balancer backend instances Recognize down hosts Fair scheduler (Deliver static content) 45

46 Apache 2.2 Apache 2.2 introduced mod_proxy_balancer mod_proxy_balancer can speak to multiple backends and balance requests Apache can acts as a pure proxy or can also serve static files 46

47 Apache 2.2 Apache 2.2 introduced mod_proxy_balancer mod_proxy_balancer can speak to multiple backends and balance requests Apache can acts as a pure proxy or can also serve static files 47

48 Apache 2.2 Apache 2.2 introduced mod_proxy_balancer mod_proxy_balancer can speak to multiple backends and balance requests Apache can acts as a pure proxy or can also serve static files 48

49 Apache 2.2 Pro Stable, robust, and mature Many people know how to work with Apache Integrates well with other modules (SVN, DAV, Auth, ) Con Apache can be complicated to configure The stock Apache is quite resource-hungry compared to pure proxy solutions 49

50 Nginx From Russia with love Nginx - popular Russian webserver with good proxy support Can load-balance multiple backends and deliver static content Quite popular with Mongrel as the Rails backend 50

51 Nginx Configuration Simple proxy example Get complete version here: 51

52 Nginx Pro Stable, robust, and fast Uses fewer resources (CPU and RAM) than Apache for proxy-mode and static files Simpler configuration file Can directly talk to memcached - SSI Con More documentation would be nice No equivalent for many Apache modules 52

53 Lighttpd Lightweight and fast webserver Balancing proxy support Good FastCGI support Used to be popular until Mongrel came around 53

54 Lighttpd Configuration Simple proxy example 54

55 Lighttpd Pro Fast and lightweight Uses fewer resources (CPU and RAM) than Apache for proxy-mode and static files Simpler configuration file Con Unstable for some people Slow development cycle More documentation would be nice Configuration file can be too simple (virtual host aliasing) No equivalent for many Apache modules 55

56 HA-Proxy HAProxy reliable, high performance TCP/HTTP load balancer Proxying and content inspection No content serving, just a proxy Mature proxy module (fair scheduler) ACL support See also similar Pound and Pen 56

57 HAProxy Simple proxy example 57

58 HAProxy Pro Mature, stable, robust, and fast TCP and HTTP balancing Con Few Rails examples Usually not needed in a Rails setup 58

59 Recommended Setups 59

60 Small Site Recommendation Apache 2.2 with mod_rails / Phusion Passenger 60

61 Medium Site Recommendation Apache 2.2 as the frontend proxy Use Mongrel or mod_rails as the backend Deliver static files with Apache 61

62 Medium Site Recommendation Apache 2.2 as the frontend proxy Use Mongrel or mod_rails as the backend Deliver static files with Apache 62

63 Large Rails Setup Recommendation Redundant load-balancer Redundant proxy / web Mongrel / mod_rails 63

64 Heavy Static Files Recommendation Deliver static assets through separate web server farm Mongrel or mod_rails 64

65 Java Shop Recommendation Deliver a Rails-WAR file and you are done Integrate with existing Java landscape and infrastructure 65

66 Remarks 66

67 Ruby Enterprise Edition Copy-On-Write patches to Ruby 1.8 Saves memory when spawning several Rails instances Used by Phusion Passenger if available 67

68 Thin, Ebb, Evented Mongrel & Co. Alternatives to Mongrel Claim to be faster, lighter, and what have you Rendering Hello World is usually not your bottleneck Stick with stable and robust Mongrel 68

69 In The Future, Watch Fuzed Erlang based load balancing Dynamic registration JRuby Faster Runtime Java Integration Phusion Passenger Enterprise Ruby Performance Usability 69

70 Infrastructure Deployment 70

71 71

72 Deployment Options 72

73 Deployment Options 73

74 Deployment Options 74

75 Deployment Options 75

76 What does Capistrano do? 76

77 Capistrano Deployment Cycle 77

78 Requirements 78

79 What doesn t Capistrano do? Plan your initial server setup Configure basic services 79

80 Basic Ingredients The cap command Variables Roles Tasks Namespaces 80

81 Basic Ingredients - cap Your one-stop deployment shop 81

82 Basic Ingredients - Variables Configure basic project information Override Capistrano s default assumptions Once set, variables are available globally Defined using the set method 82

83 Basic Ingredients - Roles Define types of servers Default roles :www :app :db All can point to the same server But all three must be defined At least one database server needs to be primary 83

84 Basic Ingredients - Roles Define custom roles as you please Can be reused when defining tasks 84

85 Basic Ingredients - Tasks Define an atomic set of actions for Capistrano Can be called from the command line Or other tasks 85

86 Basic Ingredients - Tasks To find all the tasks available in your project, use 86

87 Basic Ingredients - Namespaces Group tasks together logically Namespaces and tasks are separated with : 87

88 Get Your Capistrano On 88

89 Get Your Capistrano On Capfile, the place to include more recipes 89

90 Get Your Capistrano On config/deploy.rb, application specific configuration 90

91 Capistrano s Defaults Your SCM is Subversion Deployment directory is /u/apps/#{application_name} User for SCM and SSH is the currently logged-in user Commands are run with sudo 91

92 Get Your Capistrano On 92

93 Get Your Capistrano On Capistrano expects a directory structure Can be created with cap deploy:setup 93

94 The Deployment Lifecycle 94

95 The Deployment Lifecycle Check the prerequisites: 95

96 The Deployment Lifecycle Set up your application for the first time 96

97 The Deployment Lifecycle The initial deployment 1. Checks the revision from the local machine 2. Checks out the code on the remote machines 3. Sets a link called current pointing to the lates release 4. Runs the migrations 5. Fires up application servers 97

98 The Deployment Lifecycle 98

99 The Deployment Lifecycle Subsequent deployments 1. Checks the revision from the local machine 2. Checks out the code on the remote machines 3. Updates current link 4. Restarts application servers 99

100 The Deployment Lifecycle 100

101 Common Capistrano Tasks Deploy and run migrations Run only the migrations Restart application servers Rollback to the previous release 101

102 Have Your Shell, and Eat It Too 102

103 Invoking any Command 103

104 Deployment Strategies 104

105 Deployment Strategies Direct checkout (from scratch) on the servers 105

106 Deployment Strategies Keep a cached copy of the current SCM head 106

107 Deployment Strategies Check out locally and transfer 107

108 Give it a little Spin Capistrano expects a script called spin in script/process For Passenger 108

109 Customizing Capistrano 109

110 Write your own Tasks 110

111 Write your own Tasks 111

112 Namespace your Tasks 112

113 Callbacks Execute a task before another runs Execute a task after another has finished Callbacks are run in the order they re defined 113

114 Useful Variables 114

115 Transactions 115

116 Transactions 116

117 Transactions 117

118 Transactions 118

119 The Rest Gem dependencies Support for deploying through gateway servers Server setup with deprec gem Lack of documentation 119

120 One Click Deploy 120

121 Webistrano 121

122 Webistrano Web-UI to Capistrano Manages projects and their stages Alerting and Accounting Scriptable and extendable BSD License 122

123 Macistrano Mac-GUI to Webistrano Fire and monitor deployments from your desktop 123

124 Infrastructure Pratical Session 124

125 Practical Capistrano 125

126 Get the slides Connect to RailsConf Deployment WLAN The slides are at The VMs are at Sample configurations files are in the GIT/SVN repositories 126

127 Infrastructure Monitoring 127

128 The two questions of monitoring 128

129 1. Is everything still running? 129

130 2. What are the trends? 130

131 Monit Process-level monitoring Checks PID-files, ports, and permissions Reacts by executing a script and/or alerting 131

132 Monit MySQL 132

133 Monit Apache 133

134 Monit Mongrel 134

135 Munin Host-level monitoring Master periodically asks nodes for local data Checks system resources and records historical data Allows to recognize trends and make predictions Alerting support 135

136 Munin 136

137 Munin 137

138 Munin 138

139 Other Tools Nagios Big Brother New Relic RPM FiveRuns JMX 139

140 Q & A 140

141 Peritor GmbH Teutonenstraße Berlin Telefon: +49 (0) Telefax: +49 (0) Internet: [email protected] Peritor GmbH - Alle Rechte vorbehalten

Deploying and Monitoring Ruby on Rails

Deploying and Monitoring Ruby on Rails Mit hotfixes von Carsten Bormann 2011-03-05 + 2013-02-28 Deploying and Monitoring Ruby on Rails A practical guide Mathias Meyer and Jonathan Weiss, 25.05.2009 Peritor GmbH Danke! Mashed up with... 2011-03-05

More information

Rails Application Deployment. July 2007 @ Philly on Rails

Rails Application Deployment. July 2007 @ Philly on Rails Rails Application Deployment July 2007 @ Philly on Rails What Shall We Deploy Tonight? Blogging/publishing system Standard Rails application Ships with gems in vendor directory Easy rake task for database

More information

Accelerating Rails with

Accelerating Rails with Accelerating Rails with lighty Jan Kneschke [email protected] RailsConf 2006 Chicago, IL, USA Who is that guy? Jan Kneschke Main developer of lighty Works at MySQL AB Lives in Kiel, Germany Had to choose

More information

HOSTING PYTHON WEB APPLICATIONS. Graham Dumpleton PyCon Australia Sydney 2011

HOSTING PYTHON WEB APPLICATIONS. Graham Dumpleton PyCon Australia Sydney 2011 HOSTING PYTHON WEB APPLICATIONS Graham Dumpleton PyCon Australia Sydney 2011 WEB APPLICATIONS Only a few well known Python web applications. WEB FRAMEWORKS Many Python web frameworks for building your

More information

MAGENTO HOSTING Progressive Server Performance Improvements

MAGENTO HOSTING Progressive Server Performance Improvements MAGENTO HOSTING Progressive Server Performance Improvements Simple Helix, LLC 4092 Memorial Parkway Ste 202 Huntsville, AL 35802 [email protected] 1.866.963.0424 www.simplehelix.com 2 Table of Contents

More information

Nginx 1 Web Server Implementation

Nginx 1 Web Server Implementation Nginx 1 Web Server Implementation Cookbook Over 100 recipes to master using the Nginx HTTP server and reverse proxy Dipankar Sarkar [ 11 open so " *' '" i I community experience d PUBLISHING community

More information

Apache Jakarta Tomcat

Apache Jakarta Tomcat Apache Jakarta Tomcat 20041058 Suh, Junho Road Map 1 Tomcat Overview What we need to make more dynamic web documents? Server that supports JSP, ASP, database etc We concentrates on Something that support

More information

Deployment and Monitoring. Pascal Robert MacTI

Deployment and Monitoring. Pascal Robert MacTI Deployment and Monitoring Pascal Robert MacTI Contents Deployment Standard wotaskd/javamonitor Wonder s wotaskd/javamonitor Alternatives Monitoring Nagios JMX wotaskd/javamonitor Bundled with WO, as two

More information

DEPLOYMENT GUIDE Version 1.0. Deploying the BIG-IP LTM with Apache Tomcat and Apache HTTP Server

DEPLOYMENT GUIDE Version 1.0. Deploying the BIG-IP LTM with Apache Tomcat and Apache HTTP Server DEPLOYMENT GUIDE Version 1.0 Deploying the BIG-IP LTM with Apache Tomcat and Apache HTTP Server Table of Contents Table of Contents Deploying the BIG-IP LTM with Tomcat application servers and Apache web

More information

ZEN LOAD BALANCER EE v3.02 DATASHEET The Load Balancing made easy

ZEN LOAD BALANCER EE v3.02 DATASHEET The Load Balancing made easy ZEN LOAD BALANCER EE v3.02 DATASHEET The Load Balancing made easy OVERVIEW The global communication and the continuous growth of services provided through the Internet or local infrastructure require to

More information

Rails Cookbook. Rob Orsini. O'REILLY 8 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo

Rails Cookbook. Rob Orsini. O'REILLY 8 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo Rails Cookbook Rob Orsini O'REILLY 8 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo Table of Contents Foreword : ; xi Preface ; ;... xiii 1. Getting Started 1 1.1 Joining the Rails Community

More information

<Insert Picture Here> Introducing Hudson. Winston Prakash. Click to edit Master subtitle style

<Insert Picture Here> Introducing Hudson. Winston Prakash. Click to edit Master subtitle style Introducing Hudson Click to edit Master subtitle style Winston Prakash What is Hudson? Hudson is an open source continuous integration (CI) server. A CI server can do various tasks

More information

ZEN LOAD BALANCER EE v3.04 DATASHEET The Load Balancing made easy

ZEN LOAD BALANCER EE v3.04 DATASHEET The Load Balancing made easy ZEN LOAD BALANCER EE v3.04 DATASHEET The Load Balancing made easy OVERVIEW The global communication and the continuous growth of services provided through the Internet or local infrastructure require to

More information

Web Development Frameworks

Web Development Frameworks COMS E6125 Web-enHanced Information Management (WHIM) Web Development Frameworks Swapneel Sheth [email protected] @swapneel Spring 2012 1 Topic 1 History and Background of Web Application Development

More information

Magento Search Extension TECHNICAL DOCUMENTATION

Magento Search Extension TECHNICAL DOCUMENTATION CHAPTER 1... 3 1. INSTALLING PREREQUISITES AND THE MODULE (APACHE SOLR)... 3 1.1 Installation of the search server... 3 1.2 Configure the search server for usage with the search module... 7 Deploy the

More information

Online Fuzzy-C-Means clustering

Online Fuzzy-C-Means clustering Online Fuzzy-C-Means clustering Authors: Author s Addresses: Contact: Dezső Kancsár, Ágnes B. Simon H-1157 Budapest, Nyírpalota u. 79/C 2/8; College of Nyíregyháza, Rákóczi út 69. [email protected], [email protected]

More information

Installing Rails 2.3 Under CentOS/RHEL 5 and Apache 2.2

Installing Rails 2.3 Under CentOS/RHEL 5 and Apache 2.2 Installing Rails 2.3 Under CentOS/RHEL 5 and Apache 2.2 Scott Taylor Tailor Made Software July 24, 2011 Version 1.2 1.0 Introduction Ruby On Rails (aka just Rails ) is a modern scripting system that allows

More information

Ruby on Rails in GlassFish [email protected] http://weblogs.java.net/blog/vivekp/ Sun Microsystems

Ruby on Rails in GlassFish Vivek.Pandey@Sun.COM http://weblogs.java.net/blog/vivekp/ Sun Microsystems Ruby on Rails in GlassFish [email protected] http://weblogs.java.net/blog/vivekp/ Sun Microsystems Ruby On Rails in GlassFish 1 Agenda Introduction to RoR What is JRuby? GlassFish overview RoR on GlassFish

More information

Installing Rails 2.3 Under Windows XP and Apache 2.2

Installing Rails 2.3 Under Windows XP and Apache 2.2 Installing Rails 2.3 Under Windows XP and Apache 2.2 Scott Taylor Tailor Made Software August 9, 2011 Version 1.0 1.0 Introduction Ruby On Rails (aka just Rails ) is a modern scripting system that allows

More information

Simple and powerful site deployment with capistrano

Simple and powerful site deployment with capistrano Simple and powerful site deployment with capistrano Kim Pepper [email protected] @scorchio96 d.o: kim.pepper How are you deploying now? FTP, SFTP, SCP? SSH + GIT? Aegir? Drush? Debian packages? Don't

More information

ZingMe Practice For Building Scalable PHP Website. By Chau Nguyen Nhat Thanh ZingMe Technical Manager Web Technical - VNG

ZingMe Practice For Building Scalable PHP Website. By Chau Nguyen Nhat Thanh ZingMe Technical Manager Web Technical - VNG ZingMe Practice For Building Scalable PHP Website By Chau Nguyen Nhat Thanh ZingMe Technical Manager Web Technical - VNG Agenda About ZingMe Scaling PHP application Scalability definition Scaling up vs

More information

S3 Monitor Design and Implementation Plans

S3 Monitor Design and Implementation Plans S 3 Monitor Version 1.0 Specifications and Integration Plan 1 Copyright c 2011 Hewlett Packard Copyright c 2011 Purdue University Permission is hereby granted, free of charge, to any person obtaining a

More information

Native SSL support was implemented in HAProxy 1.5.x, which was released as a stable version in June 2014.

Native SSL support was implemented in HAProxy 1.5.x, which was released as a stable version in June 2014. Introduction HAProxy, which stands for High Availability Proxy, is a popular open source software TCP/HTTP Load Balancer and proxying solution which can be run on Linux, Solaris, and FreeBSD. Its most

More information

Java, PHP & Ruby - Cloud Hosting

Java, PHP & Ruby - Cloud Hosting Java, PHP & Ruby - Cloud Hosting NO LOCK-IN No technical lock-in and no binding contract. We believe in open standards without any technical lock-ins. We think that Open source provides flexibility and

More information

Serving 4 million page requests an hour with Magento Enterprise

Serving 4 million page requests an hour with Magento Enterprise 1 Serving 4 million page requests an hour with Magento Enterprise Introduction In order to better understand Magento Enterprise s capacity to serve the needs of some of our larger clients, Session Digital

More information

RED HAT SOFTWARE COLLECTIONS BRIDGING DEVELOPMENT AGILITY AND PRODUCTION STABILITY

RED HAT SOFTWARE COLLECTIONS BRIDGING DEVELOPMENT AGILITY AND PRODUCTION STABILITY RED HAT S BRIDGING DEVELOPMENT AGILITY AND PRODUCTION STABILITY TECHNOLOGY BRIEF INTRODUCTION BENEFITS Choose the right runtimes for your project with access to the latest stable versions. Preserve application

More information

BeBanjo Infrastructure and Security Overview

BeBanjo Infrastructure and Security Overview BeBanjo Infrastructure and Security Overview Can you trust Software-as-a-Service (SaaS) to run your business? Is your data safe in the cloud? At BeBanjo, we firmly believe that SaaS delivers great benefits

More information

Crawl Proxy Installation and Configuration Guide

Crawl Proxy Installation and Configuration Guide Crawl Proxy Installation and Configuration Guide Google Enterprise EMEA Google Search Appliance is able to natively crawl secure content coming from multiple sources using for instance the following main

More information

MASTER THESIS. TITLE: Analysis and evaluation of high performance web servers

MASTER THESIS. TITLE: Analysis and evaluation of high performance web servers MASTER THESIS TITLE: Analysis and evaluation of high performance web servers MASTER DEGREE: Master in Science in Telecommunication Engineering & Management AUTHOR: Albert Hidalgo Barea DIRECTOR: Rubén

More information

How To Monitor A Server With Zabbix

How To Monitor A Server With Zabbix & JavaEE Platform Monitoring A Good Match? Company Facts Jesta Digital is a leading global provider of next generation entertainment content and services for the digital consumer. subsidiary of Jesta Group,

More information

CDH installation & Application Test Report

CDH installation & Application Test Report CDH installation & Application Test Report He Shouchun (SCUID: 00001008350, Email: [email protected]) Chapter 1. Prepare the virtual machine... 2 1.1 Download virtual machine software... 2 1.2 Plan the guest

More information

LOAD BALANCING TECHNIQUES FOR RELEASE 11i AND RELEASE 12 E-BUSINESS ENVIRONMENTS

LOAD BALANCING TECHNIQUES FOR RELEASE 11i AND RELEASE 12 E-BUSINESS ENVIRONMENTS LOAD BALANCING TECHNIQUES FOR RELEASE 11i AND RELEASE 12 E-BUSINESS ENVIRONMENTS Venkat Perumal IT Convergence Introduction Any application server based on a certain CPU, memory and other configurations

More information

OpenMind: Know Your Customer

OpenMind: Know Your Customer OpenMind: Know Your Customer Contents About OpenMind... 3 Feedback... 3 A Request... 3 Installation... 3 Install Ruby and Ruby on Rails... 4 Get the Code... 4 Create the Database Schema... 4 Update database.yml...

More information

Apache Thrift and Ruby

Apache Thrift and Ruby Apache Thrift and Ruby By Randy Abernethy In this article, excerpted from The Programmer s Guide to Apache Thrift, we will install Apache Thrift support for Ruby and build a simple Ruby RPC client and

More information

Building Ruby, Rails, LightTPD, and MySQL on Tiger

Building Ruby, Rails, LightTPD, and MySQL on Tiger Home Archives Tags Links About Projects Contact Feeds Building Ruby, Rails, LightTPD, and MySQL on Tiger Technology Web Design Development Mac OS X Ruby on Rails 12.01.05-09:22 PM Gold Ruby Earring Shop

More information

White Paper. Java versus Ruby Frameworks in Practice STATE OF THE ART SOFTWARE DEVELOPMENT 1

White Paper. Java versus Ruby Frameworks in Practice STATE OF THE ART SOFTWARE DEVELOPMENT 1 White Paper Java versus Ruby Frameworks in Practice STATE OF THE ART SOFTWARE DEVELOPMENT 1 INTRODUCTION...3 FRAMEWORKS AND LANGUAGES...3 SECURITY AND UPGRADES...4 Major Upgrades...4 Minor Upgrades...5

More information

Load Balancer Comparison: a quantitative approach. a call for researchers ;)

Load Balancer Comparison: a quantitative approach. a call for researchers ;) Load Balancer Comparison: a quantitative approach a call for researchers ;) Complex Internet infrastructure high performance systems clusters grids high availability systems resilient storage resilient

More information

Integrate Rails into an Existing IIS Web infrastructure using Mongrel

Integrate Rails into an Existing IIS Web infrastructure using Mongrel This article will walk you through the steps of installing Ruby, Gems, Rails, and other important libraries on a Windows 2003 server with IIS. Microsoft s Internet Information Server is a popular proprietary

More information

HAProxy. Ryan O'Hara Principal Software Engineer, Red Hat September 17, 2014. 1 HAProxy

HAProxy. Ryan O'Hara Principal Software Engineer, Red Hat September 17, 2014. 1 HAProxy HAProxy Ryan O'Hara Principal Software Engineer, Red Hat September 17, 2014 1 HAProxy HAProxy Overview Capabilities Configuration OpenStack HA Neutron LBaaS Resources Questions 2 HAProxy Overview Load

More information

Advantages and Disadvantages of Application Network Marketing Systems

Advantages and Disadvantages of Application Network Marketing Systems Application Deployment Softwaretechnik II 2014/15 Thomas Kowark Outline Options for Application Hosting Automating Environment Setup Deployment Scripting Application Monitoring Continuous Deployment and

More information

The enterprise class monitoring solution for everyone

The enterprise class monitoring solution for everyone The enterprise class monitoring solution for everyone Today's topics Zabbix overview We met 2 years ago what's new? Uncommon uses 2 years for Zabbix Zabbix 2.0 out in May 13 maintenance releases of 1.8

More information

Achieving High Throughput. Fernando Castano [email protected] Sun Microsystems

Achieving High Throughput. Fernando Castano fernando.castano@sun.com Sun Microsystems Achieving High Throughput and Scalability with JRuby Fernando Castano [email protected] Sun Microsystems Agenda What is Project Kenai Early tests and re-architecture How, where and what we benchmark

More information

Magento & Zend Benchmarks Version 1.2, 1.3 (with & without Flat Catalogs)

Magento & Zend Benchmarks Version 1.2, 1.3 (with & without Flat Catalogs) Magento & Zend Benchmarks Version 1.2, 1.3 (with & without Flat Catalogs) 1. Foreword Magento is a PHP/Zend application which intensively uses the CPU. Since version 1.1.6, each new version includes some

More information

Chapter 1 - Web Server Management and Cluster Topology

Chapter 1 - Web Server Management and Cluster Topology Objectives At the end of this chapter, participants will be able to understand: Web server management options provided by Network Deployment Clustered Application Servers Cluster creation and management

More information

ZABBIX. An Enterprise-Class Open Source Distributed Monitoring Solution. Takanori Suzuki MIRACLE LINUX CORPORATION October 22, 2009

ZABBIX. An Enterprise-Class Open Source Distributed Monitoring Solution. Takanori Suzuki MIRACLE LINUX CORPORATION October 22, 2009 ZABBIX An Enterprise-Class Open Source Distributed Monitoring Solution Takanori Suzuki MIRACLE LINUX CORPORATION October 22, 2009 Outline Biography ZABBIX New release ZABBIX 1.8 Activity in Japan Biography

More information

Painless Web Proxying with Apache mod_proxy

Painless Web Proxying with Apache mod_proxy Painless Web Proxying with Apache mod_proxy Justin R. Erenkrantz University of California, Irvine and Google, Inc. http://www.erenkrantz.com/oscon/ [email protected] Why should I pay attention? Apache

More information

ntopng: Realtime Network Traffic View

ntopng: Realtime Network Traffic View ntopng: Realtime Network Traffic View Luca Deri 3/28/14 1 ntop in 1998 In 1998, the original ntop has been created. Available for Unix and Windows under GPL. Contrary to many tools available

More information

mod_cluster A new httpd-based load balancer Brian Stansberry JBoss, a division of Red Hat

mod_cluster A new httpd-based load balancer Brian Stansberry JBoss, a division of Red Hat mod_cluster A new httpd-based load balancer Brian Stansberry JBoss, a division of Red Hat Agenda Who is Brian Stansberry? Principal Software Engineer at Red Hat Technical Lead for JBoss Application Server

More information

Intro to Load-Balancing Tomcat with httpd and mod_jk

Intro to Load-Balancing Tomcat with httpd and mod_jk Intro to Load-Balancing Tomcat with httpd and mod_jk Christopher Schultz Chief Technology Officer Total Child Health, Inc. * Slides available on the Linux Foundation / ApacheCon2015 web site and at http://people.apache.org/~schultz/apachecon

More information

How To Configure Apa Web Server For High Performance

How To Configure Apa Web Server For High Performance DEPLOYMENT GUIDE Version 1.0 Deploying F5 with Apache Web Servers Table of Contents Table of Contents Deploying the BIG-IP LTM with the Apache web server Prerequisites and configuration notes... 1 Product

More information

Performance Optimization For Operational Risk Management Application On Azure Platform

Performance Optimization For Operational Risk Management Application On Azure Platform Performance Optimization For Operational Risk Management Application On Azure Platform Ashutosh Sabde, TCS www.cmgindia.org 1 Contents Introduction Functional Requirements Non Functional Requirements Business

More information

Linstantiation of applications. Docker accelerate

Linstantiation of applications. Docker accelerate Industrial Science Impact Factor : 1.5015(UIF) ISSN 2347-5420 Volume - 1 Issue - 12 Aug - 2015 DOCKER CONTAINER 1 2 3 Sawale Bharati Shankar, Dhoble Manoj Ramchandra and Sawale Nitin Shankar images. ABSTRACT

More information

FileMaker Server 11. FileMaker Server Help

FileMaker Server 11. FileMaker Server Help FileMaker Server 11 FileMaker Server Help 2010 FileMaker, Inc. All Rights Reserved. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker is a trademark of FileMaker, Inc. registered

More information

WEBLOGIC ADMINISTRATION

WEBLOGIC ADMINISTRATION WEBLOGIC ADMINISTRATION Session 1: Introduction Oracle Weblogic Server Components Java SDK and Java Enterprise Edition Application Servers & Web Servers Documentation Session 2: Installation System Configuration

More information

WEBAPP PATTERN FOR APACHE TOMCAT - USER GUIDE

WEBAPP PATTERN FOR APACHE TOMCAT - USER GUIDE WEBAPP PATTERN FOR APACHE TOMCAT - USER GUIDE Contents 1. Pattern Overview... 3 Features 3 Getting started with the Web Application Pattern... 3 Accepting the Web Application Pattern license agreement...

More information

Drupal Performance Tuning

Drupal Performance Tuning Drupal Performance Tuning By Jeremy Zerr Website: http://www.jeremyzerr.com @jrzerr http://www.linkedin.com/in/jrzerr Overview Basics of Web App Systems Architecture General Web

More information

NGASI Universal APP Panel Administration and User Guide. 1999-2011 WebAppShowcase DBA NGASI

NGASI Universal APP Panel Administration and User Guide. 1999-2011 WebAppShowcase DBA NGASI NGASI Universal APP Panel Administration and User Guide 2 Universal App Panel Table of Contents Part I Introduction 5 1 Overview... 5 2 Requirements... 5 Part II Administrator 8 1 Login... 8 2 Resellers/Webhosts...

More information

IERG 4080 Building Scalable Internet-based Services

IERG 4080 Building Scalable Internet-based Services Department of Information Engineering, CUHK Term 1, 2015/16 IERG 4080 Building Scalable Internet-based Services Lecture 4 Load Balancing Lecturer: Albert C. M. Au Yeung 30 th September, 2015 Web Server

More information

Layers of Caching: Key to scaling your website. Lance Albertson -- [email protected] Narayan Newton [email protected]

Layers of Caching: Key to scaling your website. Lance Albertson -- lance@osuosl.org Narayan Newton nnewton@tag1consulting.com Layers of Caching: Key to scaling your website Lance Albertson -- [email protected] Narayan Newton [email protected] Importance of Caching RAM is fast! Utilize resources more efficiently Improve

More information

PHP web serving study Performance report

PHP web serving study Performance report PHP web serving study Performance report by Stefan "SaltwaterC" Rusu Date: May - June 2010 Contact: http://saltwaterc.net/contact or admin [at] saltwaterc [dot] net Hardware Configurations Web Server:

More information

Apache 2.0 Installation Guide

Apache 2.0 Installation Guide Apache 2.0 Installation Guide Ryan Spangler [email protected] http://ceut.uww.edu May 2002 Department of Business Education/ Computer and Network Administration Copyright Ryan Spangler 2002 Table of

More information

BASICS OF SCALING: LOAD BALANCERS

BASICS OF SCALING: LOAD BALANCERS BASICS OF SCALING: LOAD BALANCERS Lately, I ve been doing a lot of work on systems that require a high degree of scalability to handle large traffic spikes. This has led to a lot of questions from friends

More information

Chapter 2 TOPOLOGY SELECTION. SYS-ED/ Computer Education Techniques, Inc.

Chapter 2 TOPOLOGY SELECTION. SYS-ED/ Computer Education Techniques, Inc. Chapter 2 TOPOLOGY SELECTION SYS-ED/ Computer Education Techniques, Inc. Objectives You will learn: Topology selection criteria. Perform a comparison of topology selection criteria. WebSphere component

More information

Architecture and Mode of Operation

Architecture and Mode of Operation Software- und Organisations-Service Open Source Scheduler Architecture and Mode of Operation Software- und Organisations-Service GmbH www.sos-berlin.com Scheduler worldwide Open Source Users and Commercial

More information

Tuning Tableau Server for High Performance

Tuning Tableau Server for High Performance Tuning Tableau Server for High Performance I wanna go fast PRESENT ED BY Francois Ajenstat Alan Doerhoefer Daniel Meyer Agenda What are the things that can impact performance? Tips and tricks to improve

More information

IBM WEBSPHERE LOAD BALANCING SUPPORT FOR EMC DOCUMENTUM WDK/WEBTOP IN A CLUSTERED ENVIRONMENT

IBM WEBSPHERE LOAD BALANCING SUPPORT FOR EMC DOCUMENTUM WDK/WEBTOP IN A CLUSTERED ENVIRONMENT White Paper IBM WEBSPHERE LOAD BALANCING SUPPORT FOR EMC DOCUMENTUM WDK/WEBTOP IN A CLUSTERED ENVIRONMENT Abstract This guide outlines the ideal way to successfully install and configure an IBM WebSphere

More information

The Other mod_rails: Easy Rails Deployment with JRuby. Nick Sieger Sun Microsystems, Inc

The Other mod_rails: Easy Rails Deployment with JRuby. Nick Sieger Sun Microsystems, Inc The Other mod_rails: Easy Rails Deployment with JRuby Nick Sieger Sun Microsystems, Inc CGI/FCGI Mongrel omg puppiez! not nirvana... Processes: 68 total, 3 running, 1 stuck, 64 sleeping... 309 threads

More information

Configuring IBM HTTP Server as a Reverse Proxy Server for SAS 9.3 Web Applications Deployed on IBM WebSphere Application Server

Configuring IBM HTTP Server as a Reverse Proxy Server for SAS 9.3 Web Applications Deployed on IBM WebSphere Application Server Configuration Guide Configuring IBM HTTP Server as a Reverse Proxy Server for SAS 9.3 Web Applications Deployed on IBM WebSphere Application Server This document is revised for SAS 9.3. In previous versions

More information

CI Pipeline with Docker 2015-02-27

CI Pipeline with Docker 2015-02-27 CI Pipeline with Docker 2015-02-27 Juho Mäkinen, Technical Operations, Unity Technologies Finland http://www.juhonkoti.net http://github.com/garo Overview 1. Scale on how we use Docker 2. Overview on the

More information

Glassfish Architecture.

Glassfish Architecture. Glassfish Architecture. First part Introduction. Over time, GlassFish has evolved into a server platform that is much more than the reference implementation of the Java EE specifcations. It is now a highly

More information

1. Introduction 2. Getting Started 3. Scenario 1 - Non-Replicated Cluster 4. Scenario 2 - Replicated Cluster 5. Conclusion

1. Introduction 2. Getting Started 3. Scenario 1 - Non-Replicated Cluster 4. Scenario 2 - Replicated Cluster 5. Conclusion 1. Introduction... 1 1.1. Non-Replicated Cluster... 1 1.2. Replicated Cluster... 2 1.3. Mixing Both Options... 3 2. Getting Started... 5 3. Scenario 1 - Non-Replicated Cluster... 6 3.1. JOSSO Agent Configuration...

More information

How To Use Ngnix (Php) With A Php-Fpm (Php-Fmm) On A Web Server (Php5) On Your Web Browser) On An Ubuntu Web Server On A Raspberry Web 2.5 (Net

How To Use Ngnix (Php) With A Php-Fpm (Php-Fmm) On A Web Server (Php5) On Your Web Browser) On An Ubuntu Web Server On A Raspberry Web 2.5 (Net Powering Magento with Ngnix and PHP-FPM Written by: Yuri Golovko Alexey Samorukov Table of Contents INTRODUCTION WHY YOU SHOULD CONSIDER NGNIX NGNIX AND STATIC CONTENT HOW TO USE NGNIX NGNIX SYSTEM REQUIREMENTS

More information

JBoss Seam Performance and Scalability on Dell PowerEdge 1855 Blade Servers

JBoss Seam Performance and Scalability on Dell PowerEdge 1855 Blade Servers JBoss Seam Performance and Scalability on Dell PowerEdge 1855 Blade Servers Dave Jaffe, PhD, Dell Inc. Michael Yuan, PhD, JBoss / RedHat June 14th, 2006 JBoss Inc. 2006 About us Dave Jaffe Works for Dell

More information

High Availability Low Dollar Load Balancing

High Availability Low Dollar Load Balancing High Availability Low Dollar Load Balancing Simon Karpen System Architect, VoiceThread [email protected] Via Karpen Internet Systems [email protected] These slides are licensed under the

More information

Glassfish, JAVA EE, Servlets, JSP, EJB

Glassfish, JAVA EE, Servlets, JSP, EJB Glassfish, JAVA EE, Servlets, JSP, EJB Java platform A Java platform comprises the JVM together with supporting class libraries. Java 2 Standard Edition (J2SE) (1999) provides core libraries for data structures,

More information

Scaling Progress OpenEdge Appservers. Syed Irfan Pasha Principal QA Engineer Progress Software

Scaling Progress OpenEdge Appservers. Syed Irfan Pasha Principal QA Engineer Progress Software Scaling Progress OpenEdge Appservers Syed Irfan Pasha Principal QA Engineer Progress Software Michael Jackson Dies and Twitter Fries Twitter s Fail Whale 3 Twitter s Scalability Problem Takeaways from

More information

What s Cool in the SAP JVM (CON3243)

What s Cool in the SAP JVM (CON3243) What s Cool in the SAP JVM (CON3243) Volker Simonis, SAP SE September, 2014 Public Agenda SAP JVM Supportability SAP JVM Profiler SAP JVM Debugger 2014 SAP SE. All rights reserved. Public 2 SAP JVM SAP

More information

Exploring Oracle E-Business Suite Load Balancing Options. Venkat Perumal IT Convergence

Exploring Oracle E-Business Suite Load Balancing Options. Venkat Perumal IT Convergence Exploring Oracle E-Business Suite Load Balancing Options Venkat Perumal IT Convergence Objectives Overview of 11i load balancing techniques Load balancing architecture Scenarios to implement Load Balancing

More information

Continuous integration with Jenkins CI

Continuous integration with Jenkins CI Continuous integration with Jenkins CI Vojtěch Juránek JBoss - a division by Red Hat 17. 2. 2012, Developer conference, Brno Vojtěch Juránek (Red Hat) Continuous integration with Jenkins CI 17. 2. 2012,

More information

Apache Tomcat Clustering

Apache Tomcat Clustering Apache Tomcat Clustering Mark Thomas, Staff Engineer 2012 SpringSource, by VMware. All rights reserved Agenda Introductions Terminology When to cluster Components Configuration choices Debugging Questions

More information

Mobile Performance Testing Approaches and Challenges

Mobile Performance Testing Approaches and Challenges NOUS INFOSYSTEMS LEVERAGING INTELLECT Mobile Performance Testing Approaches and Challenges ABSTRACT Mobile devices are playing a key role in daily business functions as mobile devices are adopted by most

More information

OnCommand Performance Manager 1.1

OnCommand Performance Manager 1.1 OnCommand Performance Manager 1.1 Installation and Setup Guide For Red Hat Enterprise Linux NetApp, Inc. 495 East Java Drive Sunnyvale, CA 94089 U.S. Telephone: +1 (408) 822-6000 Fax: +1 (408) 822-4501

More information

SIEMENS. Teamcenter 11.2. Web Application Deployment PLM00015 11.2

SIEMENS. Teamcenter 11.2. Web Application Deployment PLM00015 11.2 SIEMENS Teamcenter 11.2 Web Application Deployment PLM00015 11.2 Contents Getting started deploying web applications.................................. 1-1 Deployment considerations...............................................

More information

KonyOne Server Installer - Linux Release Notes

KonyOne Server Installer - Linux Release Notes KonyOne Server Installer - Linux Release Notes Table of Contents 1 Overview... 3 1.1 KonyOne Server installer for Linux... 3 1.2 Silent installation... 4 2 Application servers supported... 4 3 Databases

More information

DEPLOYMENT GUIDE. Deploying the BIG-IP LTM v9.x with Microsoft Windows Server 2008 Terminal Services

DEPLOYMENT GUIDE. Deploying the BIG-IP LTM v9.x with Microsoft Windows Server 2008 Terminal Services DEPLOYMENT GUIDE Deploying the BIG-IP LTM v9.x with Microsoft Windows Server 2008 Terminal Services Deploying the BIG-IP LTM system and Microsoft Windows Server 2008 Terminal Services Welcome to the BIG-IP

More information

Understanding Evolution's Architecture A Technical Overview

Understanding Evolution's Architecture A Technical Overview Understanding Evolution's Architecture A Technical Overview Contents Introduction Understanding Evolution's Design Evolution Architecture Evolution Server Transports Evolution Benefits How Does Evolution

More information

VMware Identity Manager Connector Installation and Configuration

VMware Identity Manager Connector Installation and Configuration VMware Identity Manager Connector Installation and Configuration VMware Identity Manager This document supports the version of each product listed and supports all subsequent versions until the document

More information

FileMaker Server 10 Help

FileMaker Server 10 Help FileMaker Server 10 Help 2007-2009 FileMaker, Inc. All Rights Reserved. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker, the file folder logo, Bento and the Bento logo

More information

Architecture Guide. SDL Campaign Manager 4.0.0

Architecture Guide. SDL Campaign Manager 4.0.0 Architecture Guide SDL Campaign Manager 4.0.0 Version Management Version history Version Date Author Distribution 1.0 22 August 2014 Pete Trevitt & Lisa Watts Release Related Documents Name Campaign Manager

More information

13.1 Backup virtual machines running on VMware ESXi / ESX Server

13.1 Backup virtual machines running on VMware ESXi / ESX Server 13 Backup / Restore VMware Virtual Machines Tomahawk Pro This chapter describes how to backup and restore virtual machines running on VMware ESX, ESXi Server or VMware Server 2.0. 13.1 Backup virtual machines

More information

CS312 Solutions #6. March 13, 2015

CS312 Solutions #6. March 13, 2015 CS312 Solutions #6 March 13, 2015 Solutions 1. (1pt) Define in detail what a load balancer is and what problem it s trying to solve. Give at least two examples of where using a load balancer might be useful,

More information

Stackato PaaS Architecture: How it works and why.

Stackato PaaS Architecture: How it works and why. Stackato PaaS Architecture: How it works and why. White Paper Published in 2012 Stackato PaaS Architecture: How it works and why. Stackato is software for creating a private Platform-as-a-Service (PaaS).

More information