SlideShare a Scribd company logo
1 of 35
Download to read offline
Rails Hosting
 Openminds BVBA - Gent
   www.openminds.be
Shared Rails Hosting
   Openminds::Hosting::Pro.clone
Architecture
• Controlable medium-sized
• Virtualized (Xen 3.x.y)
• Debian Etch
• Nginx ( proxy’s)
• Webservers
• MySQL 5/5.1 - PostgreSQL on DB
Architectuur

• Intel Dual Quad Core systemen / 16GB
• Centrale storage through iSCSI
• Tuning helps a lot
Shared - version 1
  lighttpd & FastCGI (dispatch.fcgi)
Version 1: pro’s

• fast
• lighttpd easily scriptable (lighty)
• lighttpd managed/monitors ruby processes
• mixing rails and php is possible
V1: Mephisto search
V1: Radiant page
Version 1: lighty

• Perl-wrapper around lighttpd
• port locking
• force the production-env
• easy, short configuration files for clients
Version 1: lighty
$HTTP[quot;hostquot;] =~ quot;^(www.)?example.openminds.bequot; {
  var.app                 = quot;examplequot;
  accesslog.filename          = base + quot;/logs/quot; + app + quot;.access.logquot;
  server.errorlog             = base + quot;/logs/quot; + app + quot;.error.logquot;

    load Rails with capistrano app
}
Version 1: con’s

• restart everything on change
• deploy => restart needed
• heavy sites => connection drops
• errors in logfiles
• errors in config files (new users)
Version 1: con’s

• port hijacking
• reboot: server dies
• process management is hard
Shared - Version 2
    Passenger (mod_rails)
Passenger

• Convinced
• Central daemon - Central config
• Process-heaven
• acts_like :php_hosting
Passenger: con’s

• No client-config files (sock)
• Maximum amount of processes limiting, not
  for minimum amount (startup delay)
• Apache 2: love & hate - small setup might
  give memory problems
General problems

• Gems
• Deployment
• No TESTING!
Non-shared
Openminds::Hosting::Dedicated.clone
Dedicated
application & helper applications
          client decides
Small Dedicated
Nginx + fair queueing + Mongrel cluster
            Monit (m/monit)
Medium Dedicated
     Passenger (?)
Large Dedicated
   A la tête du client
Dedicated
   sudo
Technology
  Mongrel / Evented Mongrel / Ebb / Thin / Nginx /
Apache / Passenger / Merb / Enterprise Ruby / JRuby /
                    Glassfish / ...
Common
Rails version
 1 ) install new rails gem
2 ) Open support system
Gem-versions
        Sync
  rake gems:freeze
Deployment
   Capistrano
  Provide recipy
Pound
No-worry-ssl
Rails is slow
    Developer
     Hosting
Rails hosting
Inhouse Rails knowledge is needed
Warning

• database.yml
• restart application
• read your logs
Q&A
Who
Bernard Grymonpon / wonko([_.]be)?
Openminds BVBA - www.openminds.be

More Related Content

What's hot

LINE LIVE のチャットが
30,000+/min のコメント投稿を捌くようになるまで
LINE LIVE のチャットが
30,000+/min のコメント投稿を捌くようになるまでLINE LIVE のチャットが
30,000+/min のコメント投稿を捌くようになるまで
LINE LIVE のチャットが
30,000+/min のコメント投稿を捌くようになるまで
LINE Corporation
 
Os Fitzpatrick Sussman Swp
Os Fitzpatrick Sussman SwpOs Fitzpatrick Sussman Swp
Os Fitzpatrick Sussman Swp
oscon2007
 
CPAN Packager
CPAN PackagerCPAN Packager
CPAN Packager
techmemo
 

What's hot (18)

Building Applications on Avalanche
Building Applications on AvalancheBuilding Applications on Avalanche
Building Applications on Avalanche
 
re7jweiss
re7jweissre7jweiss
re7jweiss
 
LINE LIVE のチャットが
30,000+/min のコメント投稿を捌くようになるまで
LINE LIVE のチャットが
30,000+/min のコメント投稿を捌くようになるまでLINE LIVE のチャットが
30,000+/min のコメント投稿を捌くようになるまで
LINE LIVE のチャットが
30,000+/min のコメント投稿を捌くようになるまで
 
[POSS 2019] OVirt and Ceph: Perfect Combination.?
[POSS 2019] OVirt and  Ceph: Perfect Combination.?[POSS 2019] OVirt and  Ceph: Perfect Combination.?
[POSS 2019] OVirt and Ceph: Perfect Combination.?
 
Extreme HTTP Performance Tuning: 1.2M API req/s on a 4 vCPU EC2 Instance
Extreme HTTP Performance Tuning: 1.2M API req/s on a 4 vCPU EC2 InstanceExtreme HTTP Performance Tuning: 1.2M API req/s on a 4 vCPU EC2 Instance
Extreme HTTP Performance Tuning: 1.2M API req/s on a 4 vCPU EC2 Instance
 
ruby + websocket + haproxy
ruby + websocket + haproxyruby + websocket + haproxy
ruby + websocket + haproxy
 
Rust's Journey to Async/await
Rust's Journey to Async/awaitRust's Journey to Async/await
Rust's Journey to Async/await
 
Os Fitzpatrick Sussman Swp
Os Fitzpatrick Sussman SwpOs Fitzpatrick Sussman Swp
Os Fitzpatrick Sussman Swp
 
Os Alrubaie
Os AlrubaieOs Alrubaie
Os Alrubaie
 
Apache Httpd and TLS certificates validations
Apache Httpd and TLS certificates validationsApache Httpd and TLS certificates validations
Apache Httpd and TLS certificates validations
 
Websockets
WebsocketsWebsockets
Websockets
 
IT Operations for Web Developers
IT Operations for Web DevelopersIT Operations for Web Developers
IT Operations for Web Developers
 
CPAN Packager
CPAN PackagerCPAN Packager
CPAN Packager
 
Web Sockets
Web SocketsWeb Sockets
Web Sockets
 
Accelerate your web app with a layer of Varnish
Accelerate your web app with a layer of VarnishAccelerate your web app with a layer of Varnish
Accelerate your web app with a layer of Varnish
 
Rust Primer
Rust PrimerRust Primer
Rust Primer
 
Ruby eventmachine pres at rubybdx
Ruby eventmachine pres at rubybdxRuby eventmachine pres at rubybdx
Ruby eventmachine pres at rubybdx
 
Zero vm architecture
Zero vm architectureZero vm architecture
Zero vm architecture
 

Viewers also liked

Learning Technologies B
Learning Technologies BLearning Technologies B
Learning Technologies B
Lee-Anne P
 
Don't Ask How The Sausage Is Made: How To Bring UX Into A Startup Without Goi...
Don't Ask How The Sausage Is Made: How To Bring UX Into A Startup Without Goi...Don't Ask How The Sausage Is Made: How To Bring UX Into A Startup Without Goi...
Don't Ask How The Sausage Is Made: How To Bring UX Into A Startup Without Goi...
Dylan Wilbanks
 

Viewers also liked (8)

Learning Technologies B
Learning Technologies BLearning Technologies B
Learning Technologies B
 
Cybersafety
CybersafetyCybersafety
Cybersafety
 
Lee-Anne - Indiv Researc
Lee-Anne - Indiv ResearcLee-Anne - Indiv Researc
Lee-Anne - Indiv Researc
 
What 1,000,000 Social Media Experts Taught Me
What 1,000,000 Social Media Experts Taught MeWhat 1,000,000 Social Media Experts Taught Me
What 1,000,000 Social Media Experts Taught Me
 
10 Years In The Hole: A Possibly Cautionary Tale About Being A Higher Ed Web ...
10 Years In The Hole: A Possibly Cautionary Tale About Being A Higher Ed Web ...10 Years In The Hole: A Possibly Cautionary Tale About Being A Higher Ed Web ...
10 Years In The Hole: A Possibly Cautionary Tale About Being A Higher Ed Web ...
 
Mashing it Up in the Classroom
Mashing it Up in the ClassroomMashing it Up in the Classroom
Mashing it Up in the Classroom
 
Open Web Camp 2014: On Fireproof, Future-Proof, Failure-Proof Things.
Open Web Camp 2014: On Fireproof, Future-Proof, Failure-Proof Things.Open Web Camp 2014: On Fireproof, Future-Proof, Failure-Proof Things.
Open Web Camp 2014: On Fireproof, Future-Proof, Failure-Proof Things.
 
Don't Ask How The Sausage Is Made: How To Bring UX Into A Startup Without Goi...
Don't Ask How The Sausage Is Made: How To Bring UX Into A Startup Without Goi...Don't Ask How The Sausage Is Made: How To Bring UX Into A Startup Without Goi...
Don't Ask How The Sausage Is Made: How To Bring UX Into A Startup Without Goi...
 

Similar to Rails hosting

Xen_and_Rails_deployment
Xen_and_Rails_deploymentXen_and_Rails_deployment
Xen_and_Rails_deployment
Abhishek Singh
 
Varnish http accelerator
Varnish http acceleratorVarnish http accelerator
Varnish http accelerator
no no
 
Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Lightweight Virtualization with Linux Containers and Docker I YaC 2013Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Docker, Inc.
 
Ajax Tutorial
Ajax TutorialAjax Tutorial
Ajax Tutorial
oscon2007
 
Introduction to JRuby
Introduction to JRubyIntroduction to JRuby
Introduction to JRuby
Amit Solanki
 

Similar to Rails hosting (20)

Evergreen Sysadmin Survival Skills
Evergreen Sysadmin Survival SkillsEvergreen Sysadmin Survival Skills
Evergreen Sysadmin Survival Skills
 
Xen_and_Rails_deployment
Xen_and_Rails_deploymentXen_and_Rails_deployment
Xen_and_Rails_deployment
 
Deploying And Monitoring Rails
Deploying And Monitoring RailsDeploying And Monitoring Rails
Deploying And Monitoring Rails
 
Qcon
QconQcon
Qcon
 
Varnish http accelerator
Varnish http acceleratorVarnish http accelerator
Varnish http accelerator
 
XS Boston 2008 Network Topology
XS Boston 2008 Network TopologyXS Boston 2008 Network Topology
XS Boston 2008 Network Topology
 
Erlang Lightning Talk
Erlang Lightning TalkErlang Lightning Talk
Erlang Lightning Talk
 
Hands on Virtualization with Ganeti (part 1) - LinuxCon 2012
Hands on Virtualization with Ganeti (part 1)  - LinuxCon 2012Hands on Virtualization with Ganeti (part 1)  - LinuxCon 2012
Hands on Virtualization with Ganeti (part 1) - LinuxCon 2012
 
Deployment with Ruby on Rails
Deployment with Ruby on RailsDeployment with Ruby on Rails
Deployment with Ruby on Rails
 
Cache hcm-topdev
Cache hcm-topdevCache hcm-topdev
Cache hcm-topdev
 
Cache hcm-topdev
Cache hcm-topdevCache hcm-topdev
Cache hcm-topdev
 
Lightweight Virtualization with Linux Containers and Docker | YaC 2013
Lightweight Virtualization with Linux Containers and Docker | YaC 2013Lightweight Virtualization with Linux Containers and Docker | YaC 2013
Lightweight Virtualization with Linux Containers and Docker | YaC 2013
 
Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Lightweight Virtualization with Linux Containers and Docker I YaC 2013Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Lightweight Virtualization with Linux Containers and Docker I YaC 2013
 
OpenSolaris Web Stack MySQL BOF
OpenSolaris Web Stack MySQL BOFOpenSolaris Web Stack MySQL BOF
OpenSolaris Web Stack MySQL BOF
 
Http Status Report
Http Status ReportHttp Status Report
Http Status Report
 
Ajax Tutorial
Ajax TutorialAjax Tutorial
Ajax Tutorial
 
Capistrano
CapistranoCapistrano
Capistrano
 
Extending The My Sql Data Landscape
Extending The My Sql Data LandscapeExtending The My Sql Data Landscape
Extending The My Sql Data Landscape
 
All The Little Pieces
All The Little PiecesAll The Little Pieces
All The Little Pieces
 
Introduction to JRuby
Introduction to JRubyIntroduction to JRuby
Introduction to JRuby
 

More from wonko (6)

Techtalk Varnish
Techtalk VarnishTechtalk Varnish
Techtalk Varnish
 
Applied Kanban - Bizcamp 2011
Applied Kanban - Bizcamp 2011Applied Kanban - Bizcamp 2011
Applied Kanban - Bizcamp 2011
 
Persisting dynamic data with mongodb and mongomapper
Persisting dynamic data with mongodb and mongomapperPersisting dynamic data with mongodb and mongomapper
Persisting dynamic data with mongodb and mongomapper
 
Using Mongomapper to store dynamic data
Using Mongomapper to store dynamic dataUsing Mongomapper to store dynamic data
Using Mongomapper to store dynamic data
 
Craftmanship
CraftmanshipCraftmanship
Craftmanship
 
Making performant sites
Making performant sitesMaking performant sites
Making performant sites
 

Recently uploaded

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Recently uploaded (20)

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 

Rails hosting