SlideShare une entreprise Scribd logo
1  sur  55
Scaling Rails ,[object Object],[object Object]
Scaling Rails
Scaling Rails
Rails
Performance ,[object Object],[object Object]
Performance Probleme ,[object Object],[object Object],[object Object]
Scaling =  Δ  Performance
+  Δ  Performance = Weniger Probleme -  Δ  Performance = Mehr Probleme
Scaling ,[object Object],[object Object],[object Object],Fixing something that’s wrong
Vorgehen Repeat
FIN
Realität
Wissen wir nicht Repeat Wissen wir nicht Wissen wir nicht Wir haben XYZ   optimiert Es sollte jetzt,    hoffentlich…
Resultat
Scaling Tricks
Scaling Tricks NO TRICKS!
[object Object],[object Object]
Pragmatismus ,[object Object],[object Object],[object Object]
Not knowing Always measure performance
MEsasure ,[object Object],[object Object],[object Object]
Munin
Munin
Munin
Monit ,[object Object]
Monit ,[object Object]
Monitoring ,[object Object],[object Object],[object Object]
Not knowing Then find out what is slow, and why
Rails Production Log ,[object Object]
New Relic
MySQL Slow Query Log ,[object Object]
Profiler ,[object Object]
Not knowing Now go and fix it!
Not knowing Now go and fix it! Ein Plan muss her
Constraints ,[object Object],[object Object],[object Object],[object Object]
Hardware ist billig ,[object Object],Vs. 2 Wochen Optimierung Speicher
Frontend Performance ,[object Object],[object Object],[object Object]
Asynchrone Berechnungen ,[object Object],Message/Queue Scheduler
Datenbank ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Datenbank ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Archivierung ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Algorithmus ,[object Object],[object Object],[object Object],[object Object],[object Object]
Golden Hammer ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Patching Ruby (GC, Heap & co) ,[object Object],[object Object],[object Object],[object Object]
 
“ Kein Plan überlebt den ersten Feindkontakt” ,[object Object]
Over-Engineering ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ein Plan muss her Umsetzung
Not knowing Verify!
Benchmarking ,[object Object],[object Object]
Benchmarking Results
Beobachtungen nach dem Deployment
Not knowing Verify! Ich liebe es, wenn ein Plan funktioniert
Q & A Fragen?
Thank you ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Peritor GmbH Blücherstraße 22 10961 Berlin Telefon: +49 (0)30 69 20 09 84 0 Telefax:  +49 (0)30 69 20 09 84 9 Internet: www.peritor.com E-Mail: kontakt@peritor.com  Peritor GmbH - Alle Rechte vorbehalten

Contenu connexe

En vedette (12)

Bal Tec Jun 2011
Bal Tec Jun 2011Bal Tec Jun 2011
Bal Tec Jun 2011
 
MBLTDev15: Svetlana Sonina, STS Media
MBLTDev15: Svetlana Sonina, STS MediaMBLTDev15: Svetlana Sonina, STS Media
MBLTDev15: Svetlana Sonina, STS Media
 
Ethical in Educational Research by Rauno Huttunen
Ethical in Educational Research by Rauno HuttunenEthical in Educational Research by Rauno Huttunen
Ethical in Educational Research by Rauno Huttunen
 
Guía para hacer ap s.docx
Guía para hacer ap s.docxGuía para hacer ap s.docx
Guía para hacer ap s.docx
 
Dh2016 dstp
Dh2016 dstpDh2016 dstp
Dh2016 dstp
 
Por qué es importante enseñar geometría
Por qué es importante enseñar geometríaPor qué es importante enseñar geometría
Por qué es importante enseñar geometría
 
El Calostro D Y J
El Calostro D Y JEl Calostro D Y J
El Calostro D Y J
 
Mobile Commerce Insights 2013
Mobile Commerce Insights 2013Mobile Commerce Insights 2013
Mobile Commerce Insights 2013
 
Design at Lego
Design at LegoDesign at Lego
Design at Lego
 
Kinesia
KinesiaKinesia
Kinesia
 
HEPATOCARCINOMA
HEPATOCARCINOMAHEPATOCARCINOMA
HEPATOCARCINOMA
 
Obesidad y sobrepeso
Obesidad y sobrepesoObesidad y sobrepeso
Obesidad y sobrepeso
 

Similaire à Scaling Rails

Skalierung & Performance
Skalierung & PerformanceSkalierung & Performance
Skalierung & Performance
glembotzky
 
Internet Briefing 2010: Performance Tuning & Scale-Out mit MySQL
Internet Briefing 2010: Performance Tuning & Scale-Out mit MySQLInternet Briefing 2010: Performance Tuning & Scale-Out mit MySQL
Internet Briefing 2010: Performance Tuning & Scale-Out mit MySQL
FromDual GmbH
 
DOAG: NoSQL with MySQL
DOAG: NoSQL with MySQLDOAG: NoSQL with MySQL
DOAG: NoSQL with MySQL
FromDual GmbH
 
Internet Briefing 2011: NoSQL with MySQL
Internet Briefing 2011: NoSQL with MySQLInternet Briefing 2011: NoSQL with MySQL
Internet Briefing 2011: NoSQL with MySQL
FromDual GmbH
 
Rails und Scrum in großen Projekten
Rails und Scrum in großen ProjektenRails und Scrum in großen Projekten
Rails und Scrum in großen Projekten
Phillip Oertel
 

Similaire à Scaling Rails (20)

Kritische app performance erfolgreich optimieren mit Bison
Kritische app performance erfolgreich optimieren mit BisonKritische app performance erfolgreich optimieren mit Bison
Kritische app performance erfolgreich optimieren mit Bison
 
JavaScript Performance
JavaScript PerformanceJavaScript Performance
JavaScript Performance
 
Skalierung & Performance
Skalierung & PerformanceSkalierung & Performance
Skalierung & Performance
 
Internet Briefing 2010: Performance Tuning & Scale-Out mit MySQL
Internet Briefing 2010: Performance Tuning & Scale-Out mit MySQLInternet Briefing 2010: Performance Tuning & Scale-Out mit MySQL
Internet Briefing 2010: Performance Tuning & Scale-Out mit MySQL
 
High performance mit PHP
High performance mit PHPHigh performance mit PHP
High performance mit PHP
 
NoSQL with MySQL
NoSQL with MySQLNoSQL with MySQL
NoSQL with MySQL
 
20110119 activiti jughh
20110119 activiti jughh20110119 activiti jughh
20110119 activiti jughh
 
DOAG: NoSQL with MySQL
DOAG: NoSQL with MySQLDOAG: NoSQL with MySQL
DOAG: NoSQL with MySQL
 
Serverless Application Framework
Serverless Application FrameworkServerless Application Framework
Serverless Application Framework
 
Feedback-Loops in der ABAP Softwareentwicklung
Feedback-Loops in der ABAP SoftwareentwicklungFeedback-Loops in der ABAP Softwareentwicklung
Feedback-Loops in der ABAP Softwareentwicklung
 
RoofTop Brains & BBQ: Ein Gästbuch für China
RoofTop Brains & BBQ: Ein Gästbuch für ChinaRoofTop Brains & BBQ: Ein Gästbuch für China
RoofTop Brains & BBQ: Ein Gästbuch für China
 
Scrum und Agile Software Entwicklung
Scrum und Agile Software EntwicklungScrum und Agile Software Entwicklung
Scrum und Agile Software Entwicklung
 
Projekte mittels Scrum und agiler Software Entwicklung meistern
Projekte mittels Scrum und agiler Software Entwicklung meisternProjekte mittels Scrum und agiler Software Entwicklung meistern
Projekte mittels Scrum und agiler Software Entwicklung meistern
 
Ruby on Rails SS09 02
Ruby on Rails SS09 02Ruby on Rails SS09 02
Ruby on Rails SS09 02
 
JavaScript Days 2015: Security
JavaScript Days 2015: SecurityJavaScript Days 2015: Security
JavaScript Days 2015: Security
 
Internet Briefing 2011: NoSQL with MySQL
Internet Briefing 2011: NoSQL with MySQLInternet Briefing 2011: NoSQL with MySQL
Internet Briefing 2011: NoSQL with MySQL
 
Agiles bpm
Agiles bpmAgiles bpm
Agiles bpm
 
20110311 activiti mathema
20110311 activiti mathema20110311 activiti mathema
20110311 activiti mathema
 
Rails und Scrum in großen Projekten
Rails und Scrum in großen ProjektenRails und Scrum in großen Projekten
Rails und Scrum in großen Projekten
 
Streaming Plattformen und die Qual der Wahl
Streaming Plattformen und die Qual der WahlStreaming Plattformen und die Qual der Wahl
Streaming Plattformen und die Qual der Wahl
 

Plus de Jonathan Weiss

DevOpsDays Amsterdam - Observations in the cloud
DevOpsDays Amsterdam - Observations in the cloudDevOpsDays Amsterdam - Observations in the cloud
DevOpsDays Amsterdam - Observations in the cloud
Jonathan Weiss
 
CouchDB on Rails - FrozenRails 2010
CouchDB on Rails - FrozenRails 2010CouchDB on Rails - FrozenRails 2010
CouchDB on Rails - FrozenRails 2010
Jonathan Weiss
 

Plus de Jonathan Weiss (20)

Docker on AWS OpsWorks
Docker on AWS OpsWorksDocker on AWS OpsWorks
Docker on AWS OpsWorks
 
ChefConf 2014 - AWS OpsWorks Under The Hood
ChefConf 2014 - AWS OpsWorks Under The HoodChefConf 2014 - AWS OpsWorks Under The Hood
ChefConf 2014 - AWS OpsWorks Under The Hood
 
AWS OpsWorks & Chef at the Hamburg Chef User Group 2014
AWS OpsWorks & Chef at the Hamburg Chef User Group 2014AWS OpsWorks & Chef at the Hamburg Chef User Group 2014
AWS OpsWorks & Chef at the Hamburg Chef User Group 2014
 
DevOpsDays Amsterdam - Observations in the cloud
DevOpsDays Amsterdam - Observations in the cloudDevOpsDays Amsterdam - Observations in the cloud
DevOpsDays Amsterdam - Observations in the cloud
 
Amazon SWF and Gordon
Amazon SWF and GordonAmazon SWF and Gordon
Amazon SWF and Gordon
 
Introduction to Backbone.js
Introduction to Backbone.jsIntroduction to Backbone.js
Introduction to Backbone.js
 
Scalarium and CouchDB
Scalarium and CouchDBScalarium and CouchDB
Scalarium and CouchDB
 
Build your own clouds with Chef and MCollective
Build your own clouds with Chef and MCollectiveBuild your own clouds with Chef and MCollective
Build your own clouds with Chef and MCollective
 
NoSQL - Motivation and Overview
NoSQL - Motivation and OverviewNoSQL - Motivation and Overview
NoSQL - Motivation and Overview
 
NoSQL - An introduction to CouchDB
NoSQL - An introduction to CouchDBNoSQL - An introduction to CouchDB
NoSQL - An introduction to CouchDB
 
Running on Amazon EC2
Running on Amazon EC2Running on Amazon EC2
Running on Amazon EC2
 
Amazon EC2 in der Praxis
Amazon EC2 in der PraxisAmazon EC2 in der Praxis
Amazon EC2 in der Praxis
 
Infrastructure Automation with Chef
Infrastructure Automation with ChefInfrastructure Automation with Chef
Infrastructure Automation with Chef
 
Rails in the Cloud
Rails in the CloudRails in the Cloud
Rails in the Cloud
 
EventMachine
EventMachineEventMachine
EventMachine
 
CouchDB on Rails
CouchDB on RailsCouchDB on Rails
CouchDB on Rails
 
Rails in the Cloud - Experiences from running on EC2
Rails in the Cloud - Experiences from running on EC2Rails in the Cloud - Experiences from running on EC2
Rails in the Cloud - Experiences from running on EC2
 
CouchDB on Rails - RailsWayCon 2010
CouchDB on Rails - RailsWayCon 2010CouchDB on Rails - RailsWayCon 2010
CouchDB on Rails - RailsWayCon 2010
 
CouchDB on Rails - FrozenRails 2010
CouchDB on Rails - FrozenRails 2010CouchDB on Rails - FrozenRails 2010
CouchDB on Rails - FrozenRails 2010
 
NoSQL - Post-Relational Databases - BarCamp Ruhr3
NoSQL - Post-Relational Databases - BarCamp Ruhr3NoSQL - Post-Relational Databases - BarCamp Ruhr3
NoSQL - Post-Relational Databases - BarCamp Ruhr3
 

Scaling Rails