Node.js - Worksigma

Preview:

DESCRIPTION

Sliders falando sobre Node.js utilizado na palestra da Worksigma no dia 28 de Julho de 2014.

Citation preview

Node.js?

Node.js não é um servidor Web.

Node.js?

• Server-side Javascript• V8• Events, non-block I/O• CommonJS module system

• Server-side Javascript• V8• Events, non-block I/O• CommonJS module system

Event Loop vs Threads

Event Loop (Node.js)

• 1 única Thread.• Não bloqueia I/O.• Não há problema com lock.• Não usa mais memória com novos eventos.

Deixa o SO tratar o I/O e espera a resposta sem travar os recursos.

Threads

• Cada Thread requer memória.• Troca de Thread é custosa para o CPU.• Problema com o lock.

Back-end x Front-end.

https://github.com/joyent/node/wiki/Projects,-Applications,-and-Companies-Using-Node

Prós

• Front-end e Back-end com o mesmo código;• Comunidade gigantesca;• Muitas boas bibliotecas surgem por dia;• I/O assíncrono.• Ótimo em caso de que o problema é o I/O

Contras

• Javascript é uma linguagem ruim (Maurício Linhares, Javascript from Hell).– Não é OO.– NaN !== NaN– typeof NaN === “number”

• Node.js novo, bibliotecas novas;• Callback hell;• Não existe algo que chegue perto do Rails ou

do Django.

Obrigado!