Node slide

Preview:

DESCRIPTION

Seminário sobre NodeJS para disciplina de Sistemas Distribuídos na Faculdade IDEZ.

Citation preview

Grupo:Bruno BritoThiago Lima

A Web HojeUsuários

A Web HojeLinguag

ensWebSer

vers

A Web HojeArquite

tura•Síncrona•Uma thread por request• Requisições bloqueantes.

Precisa melhorar!!

A Web HojeEstudo de

casoComo manter conectado 10,20,30 mil usuários simultâneos ?Arquitetura Atual• 30 mil threads no servidor

• Escalar horizontalmente e verticalmente

Achou o problema ?

A Web HojePatterns para atender

muitos requests• Finalize os requests o mais rápido possível.Patterns para atender

alta concorrência• Evite threads, use event loop.

Escutei Node.js ?

Twisted - python

Tambem fazem isso! O

k!

ruby

Um pouso sobre

Node.js

Google V8

JavaScrípt Engine

O que é

Node.js?

Qual o objetivo

doNode.js?

O objetivo declarado do Node é :

Fornecer uma maneira fácil de criar programasde rede escaláveis

O que Node.js soluciona?

O que Node.js utiliza?

•Javascript do lado servidor •Paradigma orientado a eventos•Paradigma de Call Back

Arquitetura• Thread Pool – pilha de request ;

• Event Loop – Thread consumidora.

MonoThread

Processo

Requisição

Req1

Req2

Req 3Req1

Req2

RequisiçãoRequisição

Resposta

Resposta

Thread PoolEvent Loop

Fluxo

Instalação

• apt-get install node• yum install node

Linux

• node-v0.6.3.msi Windows installer

Windows

NPMNode Package Manager

Instala os pacotes necessários do projeto, parecido com as gens do ruby.

instalação: curl http://npmjs.org/install.sh | sh

Demostração

Hello World!

var http = require('http'); http.createServer(function (req, res) {

res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Hello World');

}).listen(1337, "127.0.0.1");

Fim!! Duvidas??

Recommended