SlideShare una empresa de Scribd logo
1 de 12
Node.js in Production
      Matthew Eernisse
      NodeConf 2011
Who am I?
Matthew Eernisse
Work at Yammer
@mde on Twitter
Code organization
• Iterative development is easy
• Async, callback-based flow
• Third-party modules
App dependencies
• NPM is not there yet
• Third-party modules are not there yet
• Modify in-place, push patches back
• NPM, modules are improving
Assume you’re fucked
• Default condition is a preemptible error
• in-flight registry
• uncaughtException
Visibility, metrics
• Measure everything
• Log everything
• https://github.com/mikejihbe/metrics
Ops
• Communicative, consultative dev
• Ask what is expected
• Play nicely with others

Más contenido relacionado

La actualidad más candente

What schools should be teaching IT students
What schools should be teaching IT studentsWhat schools should be teaching IT students
What schools should be teaching IT studentsAndy Lester
 
2018-09 - F# and Fable
2018-09 - F# and Fable2018-09 - F# and Fable
2018-09 - F# and FableEamonn Boyle
 
I Smell A RAT- Rapid Application Testing
I Smell A RAT- Rapid Application TestingI Smell A RAT- Rapid Application Testing
I Smell A RAT- Rapid Application TestingPeter Presnell
 
Driving application development through behavior driven development
Driving application development through behavior driven developmentDriving application development through behavior driven development
Driving application development through behavior driven developmentEinar Ingebrigtsen
 
Dev6001 flexibility, lifestyle, and balance benefits and drawback of remote t...
Dev6001 flexibility, lifestyle, and balance benefits and drawback of remote t...Dev6001 flexibility, lifestyle, and balance benefits and drawback of remote t...
Dev6001 flexibility, lifestyle, and balance benefits and drawback of remote t...Richard Fichtner
 
How To Do Kick-Ass Software Development
How To Do Kick-Ass Software DevelopmentHow To Do Kick-Ass Software Development
How To Do Kick-Ass Software DevelopmentSven Peters
 
How to code in the XXI century without losing your head
How to code in the XXI century without losing your headHow to code in the XXI century without losing your head
How to code in the XXI century without losing your headRené Olivo
 
Bringing Open-Source Practices to Your Day Job
Bringing Open-Source Practices to Your Day JobBringing Open-Source Practices to Your Day Job
Bringing Open-Source Practices to Your Day JobBen Coe
 
Reference_JeremyWiseman_2016
Reference_JeremyWiseman_2016Reference_JeremyWiseman_2016
Reference_JeremyWiseman_2016Jeremy Wiseman
 
Jira and Confluence - How the company behind those products works - Anatoli K...
Jira and Confluence - How the company behind those products works - Anatoli K...Jira and Confluence - How the company behind those products works - Anatoli K...
Jira and Confluence - How the company behind those products works - Anatoli K...Dominic Trần
 
Automating your processes with JIRA
Automating your processes with JIRAAutomating your processes with JIRA
Automating your processes with JIRAAdaptavist
 
Devops at Startup Weekend BXL
Devops at Startup Weekend BXLDevops at Startup Weekend BXL
Devops at Startup Weekend BXLKris Buytaert
 
Automating Software Releases (Dallas/Ft. Worth Perl Mongers 2004)
Automating Software Releases (Dallas/Ft. Worth Perl Mongers 2004)Automating Software Releases (Dallas/Ft. Worth Perl Mongers 2004)
Automating Software Releases (Dallas/Ft. Worth Perl Mongers 2004)brian d foy
 
Baptism By Fire - Why production issues make you a better developer
Baptism By Fire - Why production issues make you a better developerBaptism By Fire - Why production issues make you a better developer
Baptism By Fire - Why production issues make you a better developerAdi Belan
 
Run your project like it's an OpenSource project
Run your project like it's an OpenSource projectRun your project like it's an OpenSource project
Run your project like it's an OpenSource projectIan Bull
 
Offshore tips sharing_2.0
Offshore tips sharing_2.0Offshore tips sharing_2.0
Offshore tips sharing_2.0Dao Ngoc Kien
 
Constinuous Integration
Constinuous IntegrationConstinuous Integration
Constinuous IntegrationGabriel Araujo
 
From objectives to materials
From objectives to materialsFrom objectives to materials
From objectives to materialsOri Pomerantz
 
Collaboration Tools and Methods in Software Development
Collaboration Tools and Methods in Software DevelopmentCollaboration Tools and Methods in Software Development
Collaboration Tools and Methods in Software DevelopmentStefan Fodor
 
Englishtown lifestyle
Englishtown lifestyleEnglishtown lifestyle
Englishtown lifestyleTony Shao
 

La actualidad más candente (20)

What schools should be teaching IT students
What schools should be teaching IT studentsWhat schools should be teaching IT students
What schools should be teaching IT students
 
2018-09 - F# and Fable
2018-09 - F# and Fable2018-09 - F# and Fable
2018-09 - F# and Fable
 
I Smell A RAT- Rapid Application Testing
I Smell A RAT- Rapid Application TestingI Smell A RAT- Rapid Application Testing
I Smell A RAT- Rapid Application Testing
 
Driving application development through behavior driven development
Driving application development through behavior driven developmentDriving application development through behavior driven development
Driving application development through behavior driven development
 
Dev6001 flexibility, lifestyle, and balance benefits and drawback of remote t...
Dev6001 flexibility, lifestyle, and balance benefits and drawback of remote t...Dev6001 flexibility, lifestyle, and balance benefits and drawback of remote t...
Dev6001 flexibility, lifestyle, and balance benefits and drawback of remote t...
 
How To Do Kick-Ass Software Development
How To Do Kick-Ass Software DevelopmentHow To Do Kick-Ass Software Development
How To Do Kick-Ass Software Development
 
How to code in the XXI century without losing your head
How to code in the XXI century without losing your headHow to code in the XXI century without losing your head
How to code in the XXI century without losing your head
 
Bringing Open-Source Practices to Your Day Job
Bringing Open-Source Practices to Your Day JobBringing Open-Source Practices to Your Day Job
Bringing Open-Source Practices to Your Day Job
 
Reference_JeremyWiseman_2016
Reference_JeremyWiseman_2016Reference_JeremyWiseman_2016
Reference_JeremyWiseman_2016
 
Jira and Confluence - How the company behind those products works - Anatoli K...
Jira and Confluence - How the company behind those products works - Anatoli K...Jira and Confluence - How the company behind those products works - Anatoli K...
Jira and Confluence - How the company behind those products works - Anatoli K...
 
Automating your processes with JIRA
Automating your processes with JIRAAutomating your processes with JIRA
Automating your processes with JIRA
 
Devops at Startup Weekend BXL
Devops at Startup Weekend BXLDevops at Startup Weekend BXL
Devops at Startup Weekend BXL
 
Automating Software Releases (Dallas/Ft. Worth Perl Mongers 2004)
Automating Software Releases (Dallas/Ft. Worth Perl Mongers 2004)Automating Software Releases (Dallas/Ft. Worth Perl Mongers 2004)
Automating Software Releases (Dallas/Ft. Worth Perl Mongers 2004)
 
Baptism By Fire - Why production issues make you a better developer
Baptism By Fire - Why production issues make you a better developerBaptism By Fire - Why production issues make you a better developer
Baptism By Fire - Why production issues make you a better developer
 
Run your project like it's an OpenSource project
Run your project like it's an OpenSource projectRun your project like it's an OpenSource project
Run your project like it's an OpenSource project
 
Offshore tips sharing_2.0
Offshore tips sharing_2.0Offshore tips sharing_2.0
Offshore tips sharing_2.0
 
Constinuous Integration
Constinuous IntegrationConstinuous Integration
Constinuous Integration
 
From objectives to materials
From objectives to materialsFrom objectives to materials
From objectives to materials
 
Collaboration Tools and Methods in Software Development
Collaboration Tools and Methods in Software DevelopmentCollaboration Tools and Methods in Software Development
Collaboration Tools and Methods in Software Development
 
Englishtown lifestyle
Englishtown lifestyleEnglishtown lifestyle
Englishtown lifestyle
 

Destacado

(EN version)AP | PORTUGAL - Language Services - Brochure
(EN version)AP | PORTUGAL - Language Services -  Brochure (EN version)AP | PORTUGAL - Language Services -  Brochure
(EN version)AP | PORTUGAL - Language Services - Brochure AP PORTUGAL
 
Mask erka
Mask erkaMask erka
Mask erkadokoo
 
zivotni ciklus organizacije
zivotni ciklus organizacijezivotni ciklus organizacije
zivotni ciklus organizacijeedita1990
 
Mask erka
Mask erkaMask erka
Mask erkadokoo
 
If clauses--_(_1st_and_2nd_types)
If  clauses--_(_1st_and_2nd_types)If  clauses--_(_1st_and_2nd_types)
If clauses--_(_1st_and_2nd_types)dokoo
 
Mde nodeconf 2011_node_in_production
Mde nodeconf 2011_node_in_productionMde nodeconf 2011_node_in_production
Mde nodeconf 2011_node_in_productionmattpodwysocki
 
12jil 3r angi mongol hel 21 d.dolgortsetseg
12jil 3r angi mongol hel 21 d.dolgortsetseg12jil 3r angi mongol hel 21 d.dolgortsetseg
12jil 3r angi mongol hel 21 d.dolgortsetsegdokoo
 
Performance, Games, and Distributed Testing in JavaScript
Performance, Games, and Distributed Testing in JavaScriptPerformance, Games, and Distributed Testing in JavaScript
Performance, Games, and Distributed Testing in JavaScriptjeresig
 
хавтгайн геометр
хавтгайн геометрхавтгайн геометр
хавтгайн геометрdokoo
 
Audiência por Day Parts | Crianças e Adolescentes
Audiência por Day Parts | Crianças e AdolescentesAudiência por Day Parts | Crianças e Adolescentes
Audiência por Day Parts | Crianças e AdolescentesMichelle Sesterrem
 
How to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanHow to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanPost Planner
 

Destacado (20)

(EN version)AP | PORTUGAL - Language Services - Brochure
(EN version)AP | PORTUGAL - Language Services -  Brochure (EN version)AP | PORTUGAL - Language Services -  Brochure
(EN version)AP | PORTUGAL - Language Services - Brochure
 
задачи
задачизадачи
задачи
 
Mask erka
Mask erkaMask erka
Mask erka
 
zivotni ciklus organizacije
zivotni ciklus organizacijezivotni ciklus organizacije
zivotni ciklus organizacije
 
Mask erka
Mask erkaMask erka
Mask erka
 
If clauses--_(_1st_and_2nd_types)
If  clauses--_(_1st_and_2nd_types)If  clauses--_(_1st_and_2nd_types)
If clauses--_(_1st_and_2nd_types)
 
Tick Tock Boom Facebook Timeline Tips Every Marketer Needs to Know
Tick Tock Boom Facebook Timeline Tips Every Marketer Needs to KnowTick Tock Boom Facebook Timeline Tips Every Marketer Needs to Know
Tick Tock Boom Facebook Timeline Tips Every Marketer Needs to Know
 
Tick Tock Boom Facebook Zaman Tüneli
Tick Tock Boom Facebook Zaman TüneliTick Tock Boom Facebook Zaman Tüneli
Tick Tock Boom Facebook Zaman Tüneli
 
Txjs
TxjsTxjs
Txjs
 
Ssjs Presentation
Ssjs PresentationSsjs Presentation
Ssjs Presentation
 
Tick Tock Boom Trend Raporu – Nisan 2016
Tick Tock Boom Trend Raporu – Nisan 2016Tick Tock Boom Trend Raporu – Nisan 2016
Tick Tock Boom Trend Raporu – Nisan 2016
 
Mde nodeconf 2011_node_in_production
Mde nodeconf 2011_node_in_productionMde nodeconf 2011_node_in_production
Mde nodeconf 2011_node_in_production
 
12jil 3r angi mongol hel 21 d.dolgortsetseg
12jil 3r angi mongol hel 21 d.dolgortsetseg12jil 3r angi mongol hel 21 d.dolgortsetseg
12jil 3r angi mongol hel 21 d.dolgortsetseg
 
Performance, Games, and Distributed Testing in JavaScript
Performance, Games, and Distributed Testing in JavaScriptPerformance, Games, and Distributed Testing in JavaScript
Performance, Games, and Distributed Testing in JavaScript
 
хавтгайн геометр
хавтгайн геометрхавтгайн геометр
хавтгайн геометр
 
Online customer engagement
Online customer engagementOnline customer engagement
Online customer engagement
 
Utrykk med parentes
Utrykk med parentesUtrykk med parentes
Utrykk med parentes
 
Audiência por Day Parts | Crianças e Adolescentes
Audiência por Day Parts | Crianças e AdolescentesAudiência por Day Parts | Crianças e Adolescentes
Audiência por Day Parts | Crianças e Adolescentes
 
Eterna Móveis e Superfícies
Eterna Móveis e SuperfíciesEterna Móveis e Superfícies
Eterna Móveis e Superfícies
 
How to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanHow to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media Plan
 

Último

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
[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.pdfhans926745
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
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 WorkerThousandEyes
 
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 AutomationSafe Software
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
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 productivityPrincipled Technologies
 

Último (20)

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
[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
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - 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
 
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
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
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
 

test

Notas del editor

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n