Course: Managing Ruby on Rails ApplicationsRails Admin

The course is available on demand.

Remote training: online live with a trainer and a group. Available on demand, at time and place convenient to you, for groups of at least 3 participants.

exempt from VAT

Price: 740 EUR

refreshments included

computer station included

Category: Ruby on Rails

Ruby programming language was created by Yukihiro Matsumoto (Matz) and firstly published in 1995. It’s a very modern, interpreted programming language available on many platforms. It’s pure, object-oriented language which adopted many of its properties from the Smalltalk language. Ruby on Rails is advanced environment (framework) which allows us to create modren and advanced services / web applications (websites) in a quick, non-stressful way.

During the intensive, two days course participants will understand pros and cons of different methods regarding configuration and maintaining production, staging and development environments of Ruby on Rails. We will discuss methods of fast implementing new applications version, optimizing environment for better performance, diagnosing errors and avoiding failures. We will also discuss some aspects of security of Ruby on Rails application (and web applications in general).

The course is intended for systems administrators, who want to get familiar with managing Ruby on Rails applications, as well as programmers, who plan to manage and maintain their applications in production environment.

Duration

2 days

Agenda

  1. Basic definitions
    • The most important performance requirements in Ruby on Rails
    • Review of HTTP basics
    • Ruby language in a nutshell
    • Main concepts and technologies related to web applications
    • Characteristics of Ruby on Rails environment
  2. Environment of application in Ruby language
    • Basic methods of installing the language
    • Virtual environments of installing language (rvm, rbenv, ruby-install, chruby)
    • Gems and Bundlers
    • Ruby gems binary dependencies
    • Configuring time zone and language settings (locale)
  3. Implementing Ruby on Rails application
    • Version Control Systems (git)
    • Migrations in ActiveRecord
    • Various application environments (test, development, staging, production)
    • Updating and implementation automation: capistrano, chef
    • Updating Ruby language version and gems (tests and regression)
  4. Web servers in production environment
    • Different web servers (apache, nginx)
    • Application server variants
    • Recommended: phusion passenger (raptor), unicorn
    • Alternative: puma, mongrel, thin
    • Jruby (tomcat)
  5. Performance, scaling
    • Cache: Memcache, Redis
    • Reverse proxy (Varnish)
    • Load balancing
  6. Application monitoring
    • Restarting components automatically (monit, god, bluepill)
    • Logging messages from Rails application; associated systems tools (logrotate)
    • Tracking exceptions (Errbit)
    • Inner tools (NewRelic RPM)

Download as PDF

Audience and prerequisites

We assume that participant has at least basic knowledge of working and managing system environment based on POSIX standard (Linux/BSD). The participant should also understand specifics and work of HTTP protocol on at least basic level and be able to configure WWW server. The experience in managing any web applications in other popular technologies (PHP, Python, Java) will be valuable.

Below you will find the summary of requirements/recommendations for the initial knowledge and skills of training participants:

  • basic knowledge of Linux/BSD systems administration topics
  • no problems with working in terminal environment (bashes) of Linux/BSD/OSX system
  • understanding of HTTP protocol and related topics (sessions, SSL, stateless protocol, methods, redirections)
  • administration of database systems and SQL basics
  • knowing Ruby language will be an advantage but it’s not necessary

Certificates

Course participants receive completion certificates signed by ALX. Upon completing the course, participants will have the following skills/ knowledge:

  • configuring product environment for application in Ruby on Rails
  • monitoring application in real time
  • ability of quick failure diagnosis
  • diagnosing performance problems and planning infrastructure development
  • planning system resources usage basing on expected movement
  • understanding advantages and disadvantages of different methods of application run in Ruby on Rails
  • configuring the environment paying attention to data and application safety

There are currently no entries
Enter your e-mail address and we will notify you about future dates