SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Downloaden Sie, um offline zu lesen
Nginx, PHP and Node.js 
Make them ready for the enterprise 
Harald 
Zeitlhofer 
Senior 
Technology 
Strategist 
@ 
Dynatrace 
Chris8an 
Schwarzbauer 
Chief 
So=ware 
Architect 
@ 
Dynatrace 
1 #Perform2014
Harald Zeitlhofer 
Senior Technology Strategist @ Dynatrace 
harald.zeitlhofer@dynatrace.com 
Christian Schwarzbauer 
Chief Software Architect @ Dynatrace 
christian.schwarzbauer@dynatrace.com 
2 #Perform2014
3 #Perform2014
New technologies in Dynatrace! 
4 #Perform2014
• Lightweight HTTP server 
• Fast especially at high load 
5 #Perform2014
Leading among 
top 10.000 websites 
6 #Perform2014
7 #Perform2014
• What is it? 
• Server-side JavaScript 
• Running in a Google V8 JavaScript Engine 
• Integrated HTTP Server 
• Why should I use it? What is it good for? 
• Very easy to create server-side web applications 
• You can use JavaScript not only in the browser, but also on the server-side 
• Significantly reduces number of threads blocked on IO 
• Why is it different? 
• Event-based, non-blocking IO 
• Completely asynchronous (well, almost) 
• No multi-threading (of user code) 
8 #Perform2014
9 #Perform2014
Browser 
Java 
Applica3on 
Database 
10 #Perform2014
Browser 
Node.js 
Applica3on 
Database 
IO 
Threads 
11 #Perform2014
• Old, but emerging 
• First version 1995 
• 2004: PHP5 
• Object Oriented Programming, Exception handling, Namespaces 
• Extensions for XML and DOM handling 
• PHP Archives (PHAR) 
• Testing framework PHPUnit 
12 #Perform2014
13 #Perform2014
14 #Perform2014
Integration 
• Apache Module 
LoadModule php5_module /usr/lib/apache2/modules/libphp5.so 
• CGI 
• Fast-CGI 
• PHP-FPM 
• Integration with Nginx 
15 #Perform2014
Integration! 
16 #Perform2014
Dynatrace architecture 
Database 
Performance 
Warehouse 
Dynatrace 
Collector 
Dynatrace 
Server 
Dynatrace 
Clients 
17 #Perform2014
Dynatrace architecture 
Database 
Performance 
Warehouse 
Dynatrace 
Collector 
Dynatrace 
Server 
Dynatrace 
Clients 
18 #Perform2014
• Load agent via LD_PRELOAD 
19 #Perform2014
• Load agent in index.js 
try { 
require('/opt/dynatrace/agent/conf/nodejsagent'); 
} catch (err) { 
console.log("ERROR! Can't find the nodejs agent!", err); 
} 
20 #Perform2014
• Load agent in php.ini 
21 #Perform2014
Let’s see how that fits together! 
22 #Perform2014
Live demo 
23 #Perform2014
Talking about Dynatrace versions … 
dynaTrace 5.5 
dynaTrace 6.0 
Dynatrace 6.1 
24 #Perform2014
• Easy integration into your application 
• Full end-to-end transaction visibility 
• Frontrunner in new technologies 
• Your feedback is very welcome 
• Community 
• Forum 
25 #Perform2014
http://bitly.com/dttrial 
Thank You 
Harald 
Zeitlhofer 
Senior 
Technology 
Strategist 
@ 
Dynatrace 
harald.zeitlhofer@dynatrace.com 
Chris8an 
Schwarzbauer 
Chief 
So=ware 
Architect 
@ 
Dynatrace 
chris3an.schwarzbauer@dynatrace.com 
26 #Perform2014

Weitere ähnliche Inhalte

Was ist angesagt?

Frontrow conf
Frontrow confFrontrow conf
Frontrow conf
zefhemel
 
NodeJs Intro - JavaScript Zagreb Meetup #1
NodeJs Intro - JavaScript Zagreb Meetup #1NodeJs Intro - JavaScript Zagreb Meetup #1
NodeJs Intro - JavaScript Zagreb Meetup #1
Tomislav Capan
 

Was ist angesagt? (20)

Goodbye JavaScript Hello Blazor
Goodbye JavaScript Hello BlazorGoodbye JavaScript Hello Blazor
Goodbye JavaScript Hello Blazor
 
Migrating .NET Application to .NET Core
Migrating .NET Application to .NET CoreMigrating .NET Application to .NET Core
Migrating .NET Application to .NET Core
 
Sơ lược kiến trúc hệ thống Zing Me
Sơ lược kiến trúc hệ thống Zing MeSơ lược kiến trúc hệ thống Zing Me
Sơ lược kiến trúc hệ thống Zing Me
 
Frontrow conf
Frontrow confFrontrow conf
Frontrow conf
 
GDG Algiers DevFest 2013 Cool AndroidLibs
GDG Algiers DevFest 2013 Cool AndroidLibsGDG Algiers DevFest 2013 Cool AndroidLibs
GDG Algiers DevFest 2013 Cool AndroidLibs
 
Best practises for HTML5 servers (Devaamo Summit 2012)
Best practises for HTML5 servers (Devaamo Summit 2012)Best practises for HTML5 servers (Devaamo Summit 2012)
Best practises for HTML5 servers (Devaamo Summit 2012)
 
Create scalable and failure safe cluster MagentoCommerce using cloud hosting ...
Create scalable and failure safe cluster MagentoCommerce using cloud hosting ...Create scalable and failure safe cluster MagentoCommerce using cloud hosting ...
Create scalable and failure safe cluster MagentoCommerce using cloud hosting ...
 
Start up day GDSC x Primdev 08/10/2021
Start up day GDSC x Primdev 08/10/2021Start up day GDSC x Primdev 08/10/2021
Start up day GDSC x Primdev 08/10/2021
 
MEAN Stack - Google Developers Live 10/03/2013
MEAN Stack - Google Developers Live 10/03/2013MEAN Stack - Google Developers Live 10/03/2013
MEAN Stack - Google Developers Live 10/03/2013
 
Magento applications and modules functional testing
Magento applications and modules functional testingMagento applications and modules functional testing
Magento applications and modules functional testing
 
It works on my computer
It works on my computerIt works on my computer
It works on my computer
 
How Badoo Saved $1M Switching to PHP7 - Nikolay Krapivnyy - PHPDay Verona 2016
How Badoo Saved $1M Switching to PHP7 - Nikolay Krapivnyy - PHPDay Verona 2016How Badoo Saved $1M Switching to PHP7 - Nikolay Krapivnyy - PHPDay Verona 2016
How Badoo Saved $1M Switching to PHP7 - Nikolay Krapivnyy - PHPDay Verona 2016
 
Stripe con 2021 UI stack
Stripe con 2021 UI stackStripe con 2021 UI stack
Stripe con 2021 UI stack
 
Node.js 201: building real-world applications in pure JavaScript
Node.js 201: building real-world applications in pure JavaScriptNode.js 201: building real-world applications in pure JavaScript
Node.js 201: building real-world applications in pure JavaScript
 
Last Month in PHP - December 2016
Last Month in PHP - December 2016Last Month in PHP - December 2016
Last Month in PHP - December 2016
 
Intro to node.js
Intro to node.jsIntro to node.js
Intro to node.js
 
Angular2.0@Shanghai0319
Angular2.0@Shanghai0319Angular2.0@Shanghai0319
Angular2.0@Shanghai0319
 
Website Speed :: Fox Valley Computing Professionals, September 2014
Website Speed :: Fox Valley Computing Professionals, September 2014Website Speed :: Fox Valley Computing Professionals, September 2014
Website Speed :: Fox Valley Computing Professionals, September 2014
 
NodeJs Intro - JavaScript Zagreb Meetup #1
NodeJs Intro - JavaScript Zagreb Meetup #1NodeJs Intro - JavaScript Zagreb Meetup #1
NodeJs Intro - JavaScript Zagreb Meetup #1
 
Git pusshuten
Git pusshutenGit pusshuten
Git pusshuten
 

Andere mochten auch

Andere mochten auch (10)

Baymuratov jonibek
Baymuratov jonibekBaymuratov jonibek
Baymuratov jonibek
 
Node.js for PHP developers
Node.js for PHP developersNode.js for PHP developers
Node.js for PHP developers
 
Nginx, PHP, Apache and Spelix
Nginx, PHP, Apache and SpelixNginx, PHP, Apache and Spelix
Nginx, PHP, Apache and Spelix
 
Come Sail Away With Me (you guys): Node.js MVC Web API's Using Sails.js
Come Sail Away With Me (you guys): Node.js MVC Web API's Using Sails.jsCome Sail Away With Me (you guys): Node.js MVC Web API's Using Sails.js
Come Sail Away With Me (you guys): Node.js MVC Web API's Using Sails.js
 
[Js hcm] Deploying node.js with Forever.js and nginx
[Js hcm] Deploying node.js with Forever.js and nginx[Js hcm] Deploying node.js with Forever.js and nginx
[Js hcm] Deploying node.js with Forever.js and nginx
 
Nodejs in Production
Nodejs in ProductionNodejs in Production
Nodejs in Production
 
Control your house with the elePHPant - PHPConf2016
Control your house with the elePHPant - PHPConf2016Control your house with the elePHPant - PHPConf2016
Control your house with the elePHPant - PHPConf2016
 
PHP + Node.js
PHP + Node.jsPHP + Node.js
PHP + Node.js
 
Docker OpenStack Cloud Foundry
Docker OpenStack Cloud FoundryDocker OpenStack Cloud Foundry
Docker OpenStack Cloud Foundry
 
Django, 저는 이렇게 씁니다.
Django, 저는 이렇게 씁니다.Django, 저는 이렇게 씁니다.
Django, 저는 이렇게 씁니다.
 

Ähnlich wie Nginx, PHP and Node.js

Ähnlich wie Nginx, PHP and Node.js (20)

Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
 
Introducing ASP.NET vNext - A tour of the new ASP.NET platform
Introducing ASP.NET vNext - A tour of the new ASP.NET platformIntroducing ASP.NET vNext - A tour of the new ASP.NET platform
Introducing ASP.NET vNext - A tour of the new ASP.NET platform
 
VN Tech Seminor Vol.1
VN Tech Seminor Vol.1VN Tech Seminor Vol.1
VN Tech Seminor Vol.1
 
How Sysbee Manages Infrastructures and Provides Advanced Monitoring by Using ...
How Sysbee Manages Infrastructures and Provides Advanced Monitoring by Using ...How Sysbee Manages Infrastructures and Provides Advanced Monitoring by Using ...
How Sysbee Manages Infrastructures and Provides Advanced Monitoring by Using ...
 
楽天が挑むDevOps
楽天が挑むDevOps楽天が挑むDevOps
楽天が挑むDevOps
 
Ria Applications And PHP
Ria Applications And PHPRia Applications And PHP
Ria Applications And PHP
 
Modern Web-site Development Pipeline
Modern Web-site Development PipelineModern Web-site Development Pipeline
Modern Web-site Development Pipeline
 
Integrating Alfresco with Portals
Integrating Alfresco with PortalsIntegrating Alfresco with Portals
Integrating Alfresco with Portals
 
Docker for Developers - PHP Detroit 2018
Docker for Developers - PHP Detroit 2018Docker for Developers - PHP Detroit 2018
Docker for Developers - PHP Detroit 2018
 
Microservices at Mercari
Microservices at MercariMicroservices at Mercari
Microservices at Mercari
 
Go lambda-presentation
Go lambda-presentationGo lambda-presentation
Go lambda-presentation
 
API Conference 2021
API Conference 2021API Conference 2021
API Conference 2021
 
Magento 2 Development Best Practices
Magento 2 Development Best PracticesMagento 2 Development Best Practices
Magento 2 Development Best Practices
 
Developing Brilliant and Powerful APIs in Ruby & Python
Developing Brilliant and Powerful APIs in Ruby & PythonDeveloping Brilliant and Powerful APIs in Ruby & Python
Developing Brilliant and Powerful APIs in Ruby & Python
 
Dart Past Your Competition by Getting Your Digital Experience into Market Fas...
Dart Past Your Competition by Getting Your Digital Experience into Market Fas...Dart Past Your Competition by Getting Your Digital Experience into Market Fas...
Dart Past Your Competition by Getting Your Digital Experience into Market Fas...
 
SGCE 2015 REST APIs
SGCE 2015 REST APIsSGCE 2015 REST APIs
SGCE 2015 REST APIs
 
APIs distribuidos con alta escalabilidad
APIs distribuidos con alta escalabilidadAPIs distribuidos con alta escalabilidad
APIs distribuidos con alta escalabilidad
 
Polymer & PWA: Understanding the “why”
Polymer & PWA: Understanding the “why”Polymer & PWA: Understanding the “why”
Polymer & PWA: Understanding the “why”
 
Middleware in Golang: InVision's Rye
Middleware in Golang: InVision's RyeMiddleware in Golang: InVision's Rye
Middleware in Golang: InVision's Rye
 
Shindig Apachecon Asia 09
Shindig Apachecon Asia 09Shindig Apachecon Asia 09
Shindig Apachecon Asia 09
 

Mehr von Harald Zeitlhofer

Nginx performance monitoring with Dynatrace
Nginx performance monitoring with DynatraceNginx performance monitoring with Dynatrace
Nginx performance monitoring with Dynatrace
Harald Zeitlhofer
 

Mehr von Harald Zeitlhofer (14)

Slow Database in your PHP stack? Don't blame the DBA!
Slow Database in your PHP stack? Don't blame the DBA!Slow Database in your PHP stack? Don't blame the DBA!
Slow Database in your PHP stack? Don't blame the DBA!
 
Scaling PHP web apps
Scaling PHP web appsScaling PHP web apps
Scaling PHP web apps
 
PHP and databases
PHP and databasesPHP and databases
PHP and databases
 
Boost your website by running PHP on Nginx
Boost your website by running PHP on NginxBoost your website by running PHP on Nginx
Boost your website by running PHP on Nginx
 
Running PHP on Nginx
Running PHP on NginxRunning PHP on Nginx
Running PHP on Nginx
 
Improve Magento Performance
Improve Magento PerformanceImprove Magento Performance
Improve Magento Performance
 
PHP conference Berlin 2015: running PHP on Nginx
PHP conference Berlin 2015: running PHP on NginxPHP conference Berlin 2015: running PHP on Nginx
PHP conference Berlin 2015: running PHP on Nginx
 
Running PHP on Nginx / PHP wgtn
Running PHP on Nginx / PHP wgtnRunning PHP on Nginx / PHP wgtn
Running PHP on Nginx / PHP wgtn
 
PHP App Performance / Sydney PHP
PHP App Performance / Sydney PHPPHP App Performance / Sydney PHP
PHP App Performance / Sydney PHP
 
Running PHP on nginx
Running PHP on nginxRunning PHP on nginx
Running PHP on nginx
 
PHP application performance
PHP application performancePHP application performance
PHP application performance
 
Running php on nginx
Running php on nginxRunning php on nginx
Running php on nginx
 
Nginx performance monitoring with Dynatrace
Nginx performance monitoring with DynatraceNginx performance monitoring with Dynatrace
Nginx performance monitoring with Dynatrace
 
Performance optimisation - scaling a hobby project to serious business
Performance optimisation - scaling a hobby project to serious businessPerformance optimisation - scaling a hobby project to serious business
Performance optimisation - scaling a hobby project to serious business
 

Kürzlich hochgeladen

Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Peter Udo Diehl
 

Kürzlich hochgeladen (20)

Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
 
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya HalderCustom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
 
A Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System StrategyA Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System Strategy
 
IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutes
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM Performance
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
 
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
 
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxWSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101
 
PLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsPLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. Startups
 
Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through Observability
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and Planning
 
Connecting the Dots in Product Design at KAYAK
Connecting the Dots in Product Design at KAYAKConnecting the Dots in Product Design at KAYAK
Connecting the Dots in Product Design at KAYAK
 

Nginx, PHP and Node.js

  • 1. Nginx, PHP and Node.js Make them ready for the enterprise Harald Zeitlhofer Senior Technology Strategist @ Dynatrace Chris8an Schwarzbauer Chief So=ware Architect @ Dynatrace 1 #Perform2014
  • 2. Harald Zeitlhofer Senior Technology Strategist @ Dynatrace harald.zeitlhofer@dynatrace.com Christian Schwarzbauer Chief Software Architect @ Dynatrace christian.schwarzbauer@dynatrace.com 2 #Perform2014
  • 4. New technologies in Dynatrace! 4 #Perform2014
  • 5. • Lightweight HTTP server • Fast especially at high load 5 #Perform2014
  • 6. Leading among top 10.000 websites 6 #Perform2014
  • 8. • What is it? • Server-side JavaScript • Running in a Google V8 JavaScript Engine • Integrated HTTP Server • Why should I use it? What is it good for? • Very easy to create server-side web applications • You can use JavaScript not only in the browser, but also on the server-side • Significantly reduces number of threads blocked on IO • Why is it different? • Event-based, non-blocking IO • Completely asynchronous (well, almost) • No multi-threading (of user code) 8 #Perform2014
  • 10. Browser Java Applica3on Database 10 #Perform2014
  • 11. Browser Node.js Applica3on Database IO Threads 11 #Perform2014
  • 12. • Old, but emerging • First version 1995 • 2004: PHP5 • Object Oriented Programming, Exception handling, Namespaces • Extensions for XML and DOM handling • PHP Archives (PHAR) • Testing framework PHPUnit 12 #Perform2014
  • 15. Integration • Apache Module LoadModule php5_module /usr/lib/apache2/modules/libphp5.so • CGI • Fast-CGI • PHP-FPM • Integration with Nginx 15 #Perform2014
  • 17. Dynatrace architecture Database Performance Warehouse Dynatrace Collector Dynatrace Server Dynatrace Clients 17 #Perform2014
  • 18. Dynatrace architecture Database Performance Warehouse Dynatrace Collector Dynatrace Server Dynatrace Clients 18 #Perform2014
  • 19. • Load agent via LD_PRELOAD 19 #Perform2014
  • 20. • Load agent in index.js try { require('/opt/dynatrace/agent/conf/nodejsagent'); } catch (err) { console.log("ERROR! Can't find the nodejs agent!", err); } 20 #Perform2014
  • 21. • Load agent in php.ini 21 #Perform2014
  • 22. Let’s see how that fits together! 22 #Perform2014
  • 23. Live demo 23 #Perform2014
  • 24. Talking about Dynatrace versions … dynaTrace 5.5 dynaTrace 6.0 Dynatrace 6.1 24 #Perform2014
  • 25. • Easy integration into your application • Full end-to-end transaction visibility • Frontrunner in new technologies • Your feedback is very welcome • Community • Forum 25 #Perform2014
  • 26. http://bitly.com/dttrial Thank You Harald Zeitlhofer Senior Technology Strategist @ Dynatrace harald.zeitlhofer@dynatrace.com Chris8an Schwarzbauer Chief So=ware Architect @ Dynatrace chris3an.schwarzbauer@dynatrace.com 26 #Perform2014