nginx, php and node.js

26
Make them ready for the enterprise Nginx, PHP and Node.js Harald Zeitlhofer Senior Technology Strategist @ Dynatrace Chris8an Schwarzbauer Chief So=ware Architect @ Dynatrace

Upload: harald-zeitlhofer

Post on 24-Jun-2015

616 views

Category:

Technology


3 download

DESCRIPTION

See how Nginx, PHP and Node.js integrate into the new version of dynaTrace

TRANSCRIPT

Page 1: Nginx, PHP and Node.js

1 #Perform2014

Make them ready for the enterprise

Nginx, PHP and Node.js Harald  Zeitlhofer    

Senior  Technology  Strategist  @  Dynatrace    

Chris8an  Schwarzbauer    Chief  So=ware  Architect  @  Dynatrace  

 

Page 2: Nginx, PHP and Node.js

2 #Perform2014

Harald Zeitlhofer Senior Technology Strategist @ Dynatrace

[email protected]

Christian Schwarzbauer Chief Software Architect @ Dynatrace

[email protected]

Page 3: Nginx, PHP and Node.js

3 #Perform2014

Page 4: Nginx, PHP and Node.js

4 #Perform2014

New technologies in Dynatrace!

Page 5: Nginx, PHP and Node.js

5 #Perform2014

• Lightweight HTTP server • Fast especially at high load

Page 6: Nginx, PHP and Node.js

6 #Perform2014

Leading among top 10.000 websites

Page 7: Nginx, PHP and Node.js

7 #Perform2014

Page 8: Nginx, PHP and Node.js

8 #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)

Page 9: Nginx, PHP and Node.js

9 #Perform2014

Page 10: Nginx, PHP and Node.js

10 #Perform2014

Database  Browser   Java  Applica3on  

Page 11: Nginx, PHP and Node.js

11 #Perform2014

Database  Browser   Node.js  Applica3on  

IO  Threads  

Page 12: Nginx, PHP and Node.js

12 #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

Page 13: Nginx, PHP and Node.js

13 #Perform2014

Page 14: Nginx, PHP and Node.js

14 #Perform2014

Page 15: Nginx, PHP and Node.js

15 #Perform2014

• Apache Module LoadModule php5_module /usr/lib/apache2/modules/libphp5.so

• CGI • Fast-CGI

•  PHP-FPM •  Integration with Nginx

Integration  

Page 16: Nginx, PHP and Node.js

16 #Perform2014

Integration!

Page 17: Nginx, PHP and Node.js

17 #Perform2014

Dynatrace architecture  Database  

Performance  Warehouse  

Dynatrace  Collector  

Dynatrace  Server  

Dynatrace  Clients  

Page 18: Nginx, PHP and Node.js

18 #Perform2014

Dynatrace architecture  Database  

Performance  Warehouse  

Dynatrace  Collector  

Dynatrace  Server  

Dynatrace  Clients  

Page 19: Nginx, PHP and Node.js

19 #Perform2014

• Load agent via LD_PRELOAD

Page 20: Nginx, PHP and Node.js

20 #Perform2014

try { require('/opt/dynatrace/agent/conf/nodejsagent'); } catch (err) { console.log("ERROR! Can't find the nodejs agent!", err); }

• Load agent in index.js

Page 21: Nginx, PHP and Node.js

21 #Perform2014

• Load agent in php.ini

Page 22: Nginx, PHP and Node.js

22 #Perform2014

Let’s see how that fits together!

Page 23: Nginx, PHP and Node.js

23 #Perform2014

Live demo

Page 24: Nginx, PHP and Node.js

24 #Perform2014

Talking about Dynatrace versions …

dynaTrace 5.5

dynaTrace 6.0

Dynatrace 6.1

Page 25: Nginx, PHP and Node.js

25 #Perform2014

• Easy integration into your application • Full end-to-end transaction visibility • Frontrunner in new technologies • Your feedback is very welcome

•  Community •  Forum

Page 26: Nginx, PHP and Node.js

26 #Perform2014

Thank You Harald  Zeitlhofer  

Senior  Technology  Strategist  @  Dynatrace  [email protected]  

   

Chris8an  Schwarzbauer  Chief  So=ware  Architect  @  Dynatrace  

[email protected]  

http://bitly.com/dttrial