Your SlideShare is downloading. ×
Node.js w dużej skali
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Node.js w dużej skali

904
views

Published on

Published in: Technology

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
904
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Node.js w dużej skaliDreamLab Onet.plKraków, 25 marca 2012
  • 2. Plan • Onet.Cloud • Metody skalowania • Specyficzne aspekty działania w dużej skali • Uruchomienie SG
  • 3. NodeJS
  • 4. Dynamiczna rzeczywistość (Cloud)
  • 5. NodeJS SDK
  • 6. Skalowaniehttp://www.visualphotos.com/
  • 7. Skalowanie – Wątki vs Procesy http://www.michaeljohngrist.com/2009/02/ryogoku-sumo/
  • 8. Procesy - Cluster
  • 9. Procesy - Cluster
  • 10. Procesy - Cluster
  • 11. Isolate http://www.flickr.com/photos/pepemczolz/5314122337/
  • 12. Wątki - node-threads-a-gogofunction fibo (n) { return n > 1 ? fibo(n - 1) + fibo(n - 2) : 1;}function cb (err, data) { process.stdout.write(data); this.eval(fibo(35), cb);}var thread= require(threads_a_gogo).create();thread.eval(fibo).eval(fibo(35), cb); https://github.com/xk/node-threads-a-gogo
  • 13. A my robimy to tak
  • 14. A my robimy to tak Storage
  • 15. A my robimy to tak Storage
  • 16. A my robimy to tak LB Storage
  • 17. Problem 1. Ograniczenia http://hdw.eweb4.com/out/126191.html
  • 18. Problem 2. Pule połączeń NodeJS App Storage Business Connection Logic Pool
  • 19. Problem 2. Pule połączeń NodeJS App Storage Business Connection Logic Pool
  • 20. Problem 2. Pule połączeń NodeJS App Storage Business Connection Logic Pool
  • 21. Problem 2. Pule połączeń NodeJS App Storage Business Connection Logic Pool
  • 22. Problem 2. Pule połączeń NodeJS App Storage Business Connection Logic Pool
  • 23. Problem 2. Pule połączeń NodeJS App Storage Business Connection Logic Pool
  • 24. Problem 2. Pule połączeń NodeJS App Storage Business Connection Logic Pool
  • 25. Problem 2. Pule połączeń NodeJS App Storage Business Connection Logic Pool
  • 26. Problem 2. Pule połączeń NodeJS App Storage Business Connection Logic Pool
  • 27. Problem 2. Pule połączeńexport.request = function(options, cb) { if (options.agent === undefined) { options.agent = getAgent(options.host, options.port); } else if (options.agent === false) { options.agent = new Agent(options); } return exports._requestFromAgent(options, cb);};
  • 28. Problem 3. Zarządzanie konfiguracją http://www.wheatandtares.org/2010/11/29/change-without-change/
  • 29. Problem 3. Zarządzanie konfiguracją http://svn.apache.org/repos/asf/zookeeper/logo/
  • 30. Problem 4. Operacje blokujące • Buffer.toString() • JSON.parse • Gzip
  • 31. NodeJS + moduły w C = NodeJS++ http://www.tecnologiadiaria.com/2010/12/configurar-tiempo-expiracion-cache.html
  • 32. Uriparser 3 razy szybszy niż url.parse Tak robią wszyscy: var handler = function(req, res) { var http = require(http); var u = http.parse(req.url); } Tak robimy my: var handler = function(req, res) { var uriparser = require(uriparser); var u = uriparser.parse(http://www.onet.pl/); } https://github.com/DreamLab/node-uriparser
  • 33. CPU affinity http://www.ksl.com/?nid=148&sid=12793814
  • 34. Kilkaset tyś req/min http://www.onet.pl/
  • 35. Uptime > 99.9% http://www.onet.pl/
  • 36. Wiele razy wycofane testy http://9gag.com/
  • 37. Charakterystyka ruchu Noc. Nuuuda.
  • 38. Charakterystyka ruchu Ludzie przyszli do pracy i wchodzą na Onet ;)
  • 39. Charakterystyka ruchu 100% ruchu z chmury!!
  • 40. Charakterystyka ruchu Koniec testów. Otwieramy kolejnego szampana
  • 41. Charakterystyka ruchu Użytkownicy przeczytali już cały Onet i idą spać
  • 42. Dziękuję za uwagęBlog http://it-onet.blogujacy.pl/Github https://github.com/DreamLab

×