Workshop node.js

Workshop node.js

Workshop apresentado em 21/08 em Porto Alegre.

Códigos mostrados durante o workshop https://gist.github.com/ricardobeat/6314596.

Conteúdo e mais informações em http://workshop-node.desorientados.com.br.

C5df370a883b65279af5a7ca94a5eed7?s=128

Jean Carlo Emer

August 21, 2013
Tweet

Transcript

  1. Workshop Node.js com @ricardobeat e @jcemer

  2. JavaScript no servidor

  3. None
  4. Por que Node.js?

  5. async

  6. Javascript

  7. Módulos

  8. None
  9. None
  10. None
  11. 1. Detecção de eventos 2. Tratamento dos mesmos (tick)

  12. Concorrência & Escalabilidade

  13. None
  14. None
  15. Realtime

  16. 1m conexões 1 servidor 16GB RAM 40.000 mensagens/s ~70ms http://blog.caustik.com/2012/08/19/node-js-w1m-concurrent-connections

  17. node_modules

  18. CommonJS

  19. None
  20. None
  21. None
  22. Organizando código usando módulos

  23. Small core many (small) modules

  24. None
  25. http://hughsk.github.io/disc/

  26. None
  27. None
  28. None
  29. None
  30. None
  31. Event Emitter

  32. None
  33. None
  34. Event Emitter é usado em todo o core do node.js

  35. API e módulos nativos

  36. None
  37. None
  38. None
  39. Streams

  40. Interface usada para interagir com fluxos de dados assíncronos Baseada

    em event emitters
  41. None
  42. Readable Writable Transform .pipe()

  43. Utilizada para ler/escrever dados de um arquivo (ou HTTP)

  44. None
  45. https://github.com/substack/stream-handbook

  46. Controle de fluxo https://github.com/caolan/async

  47. Promises

  48. None
  49. None
  50. None
  51. Generators

  52. https://github.com/visionmedia/co

  53. Coffee break

  54. Construíndo uma aplicação

  55. HTTP

  56. Fonte: Kurose

  57. google.com GET

  58. 200 OK

  59. Express.js http://expressjs.com/applications.html

  60. WebSockets

  61. Fonte: Kurose

  62. None
  63. Socket.io

  64. Eventos em tempo real

  65. Backbone

  66. None
  67. None
  68. NoSQL

  69. npm install mongoose

  70. npm install redis

  71. npm install level

  72. Testes

  73. None
  74. Standalone test spies, stubs and mocks for JavaScript.

  75. None
  76. None
  77. Guest talk Rodrigo Krummenauer do Nascimento Desenvolvedor e empresário focado

    nas startups carddi.mobi e konecty.com
  78. Build & Deploy

  79. CoffeeScript

  80. None
  81. Linguagem que compila para Javascript

  82. None
  83. None
  84. None
  85. Deploy

  86. None
  87. Obrigado :)