SlideShare a Scribd company logo
1 of 15
Download to read offline
Faculdade de Ciências e Tecnologia – FCT UNESP
Departamento de Matemática e Computação – DMC
Bachelado em Ciência da Computação
Alto desempenho e escalabilidade em aplicações
web utilizando banco de dados não-relacional e
programação orientada a eventos na camada
server-side com Node.JS
Vagner José Santana
segunda-feira, 29 de abril de 13
• Introdução
• Problemática
• Justificativa
• Escalabilidade
• Bancos de dados não-relacionais
• Node.JS
• Objetivos
Agenda
segunda-feira, 29 de abril de 13
Introdução
Uso da internet em constante crescimento
segunda-feira, 29 de abril de 13
Como suportar a grande quantidade de
acesos ?
• Estrutura Física
• Alta quantidade de servidores
• Planejamento de estrutura (Scale Up / Scale
Out)
• Alto Custo
segunda-feira, 29 de abril de 13
Problemática
Grandes aplicações web precisam manter-se
estáveis e apresentar bom desempenho mesmo com
alta quantidade de acessos simultâneos.
Empresas responsáveis por grandes aplicações
precisam economizar custos com estruturas de
servidores.
Como unir os dois pontos ?
segunda-feira, 29 de abril de 13
Justificativa
Unindo tecnologias não tradicionais como as que
serão abordadas neste projeto, podemos criar um
modelo de aplicação escalável, explorando o máximo
da plataforma escolhida.
A programação orientada a eventos auxilia o ganho
de performance pois evita o bloqueio, comum em
aplicações tradicionais que utilizam threads para
suportar requisições simultâneas.
segunda-feira, 29 de abril de 13
Assim, temos como objetivo criar uma
aplicação que em comparação com os modelos
tradicionais, tenha performance muito superior, e
custo inferior para criar a estrutura escalável.
segunda-feira, 29 de abril de 13
Escalabilidade
“Na Engenharia de Software e Telecomunicações, é a
capacidade de um sistema ou hardware manter-se
estável enquanto uma grande quantidade de usuários
ou processamento aumenta significativamente.”
segunda-feira, 29 de abril de 13
Bancos de dados não-relacionais
• Muitas operações de entrada e saída
• Banco de dados são responsáveis pelo “gargalo”
em uma aplicação
• Bancos de dados relacionais apresentam
dificuldades em lidar com grande volume de
dados
segunda-feira, 29 de abril de 13
MongoDB
• Alta performance
• Orientado a documentos
• Altamente escalável
• Escalabilidade horizontal
• Map Reduce
segunda-feira, 29 de abril de 13
Node.JS
• Aplicação server-side
• Programação orientada a eventos
• I/O não bloqueante (assíncrono)
• Engine JavaScript Google V8
• Custo de operações I/O na rede é muito alto
segunda-feira, 29 de abril de 13
Comparativo simples
• Nível de concorrência: 20 mil
• Total de requisições: 1.000.000
• Tempo Node.JS: 1043.076 seg.
• Tempo Apache: 3570.753 seg.
Hello World
Fonte: http://zgadzaj.com/benchmarking-nodejs-basic-performance-tests-against-apache-php
segunda-feira, 29 de abril de 13
Objetivos
• Desenvolvimento de um modelo de aplicação
altamente escalável
• Busca por alta performance
• Implementado operações real time
segunda-feira, 29 de abril de 13
Objetivos Específicos
• Estudo e desenvolvimento de algoritmos para
operações de entrada e saída utilizando o
paradigma de orientação a eventos
• Comparativos entre aplicação com banco de
dados relacionais e não-relacionais
• Testes de carga e simulação de alto número de
acessos simultâneos
segunda-feira, 29 de abril de 13
Referências
• M. Wilson, “Contruindo aplicações Node com MongoDB e Backbone”, (O’Reilly), 2013, ISBN
978010449-33739-1
• S. Tikov, S. Vinoski, “Node.js: Using Javascript to Build Gugh Performance Network Programs ”. Internet
Computing, IEEE ,2010.
André B. Bondi, “Characteristics of scalability and their impact on performance”, Proceedings of the 2nd
international workshop on Software and performance, Ottawa, Ontário, Canadá, 2000, ISBN
1-58113-195-X.
• Felix V. Leitner, “Scalable Network Programming”, http://bulk.fefe.de/scalable- networking.pdf, 2003,
acessado em março de 2013.
• Ricardo W. Brito, “Bancos de Dados NoSQL x SGBDs Relacionais:Análise Comparativa”, http://
www.infobrasil.inf.br/userfiles/27-05-S4-1-68840- Bancos%20de%20Dados%20NoSQL.pdf, 2012,
acessado em abril de 2013
segunda-feira, 29 de abril de 13

More Related Content

Viewers also liked

Padrões para Criação e Interpretação de Conteúdos Web com HTML5
Padrões para Criação e Interpretação de Conteúdos Web com HTML5Padrões para Criação e Interpretação de Conteúdos Web com HTML5
Padrões para Criação e Interpretação de Conteúdos Web com HTML5Vagner Santana
 
Escalabilidade de Aplicações Web
Escalabilidade de Aplicações WebEscalabilidade de Aplicações Web
Escalabilidade de Aplicações WebRenato Lucindo
 
Porque você deve aprender VIm hoje.
Porque você deve aprender VIm hoje.Porque você deve aprender VIm hoje.
Porque você deve aprender VIm hoje.Pedro Franceschi
 
Fazendo mágica com ElasticSearch
Fazendo mágica com ElasticSearchFazendo mágica com ElasticSearch
Fazendo mágica com ElasticSearchPedro Franceschi
 
Node.js - Devo adotar na minha empresa?
Node.js - Devo adotar na minha empresa?Node.js - Devo adotar na minha empresa?
Node.js - Devo adotar na minha empresa?Pablo Souza
 
Web Semântica e bancos de dados NoSQL
Web Semântica e bancos de dados NoSQLWeb Semântica e bancos de dados NoSQL
Web Semântica e bancos de dados NoSQLOtávio Calaça Xavier
 
TCC Tecnologia em Sistemas para Internet
TCC Tecnologia em Sistemas para InternetTCC Tecnologia em Sistemas para Internet
TCC Tecnologia em Sistemas para InternetClaudeir Novais
 
Modelos NoSQL e a Persistência Poliglota
Modelos NoSQL e a Persistência PoliglotaModelos NoSQL e a Persistência Poliglota
Modelos NoSQL e a Persistência PoliglotaGlaucio Scheibel
 
Introdução ao JPA com Hibernate
Introdução ao JPA com HibernateIntrodução ao JPA com Hibernate
Introdução ao JPA com HibernateDanilo Braga
 
NoSQL: onde, como e por quê? Cassandra e MongoDB
NoSQL: onde, como e por quê? Cassandra e MongoDBNoSQL: onde, como e por quê? Cassandra e MongoDB
NoSQL: onde, como e por quê? Cassandra e MongoDBRodrigo Hjort
 
Introdução aos Sistemas Distribuídos
Introdução aos Sistemas DistribuídosIntrodução aos Sistemas Distribuídos
Introdução aos Sistemas DistribuídosFrederico Madeira
 
Portfolio unopar administração 7º periodo conceito excelente!
Portfolio unopar administração 7º periodo   conceito excelente!Portfolio unopar administração 7º periodo   conceito excelente!
Portfolio unopar administração 7º periodo conceito excelente!Rogerio Sena
 
Apresentação unopar modelo 1
Apresentação unopar modelo 1Apresentação unopar modelo 1
Apresentação unopar modelo 1Rogerio Sena
 
Secure Your REST API (The Right Way)
Secure Your REST API (The Right Way)Secure Your REST API (The Right Way)
Secure Your REST API (The Right Way)Stormpath
 

Viewers also liked (16)

Padrões para Criação e Interpretação de Conteúdos Web com HTML5
Padrões para Criação e Interpretação de Conteúdos Web com HTML5Padrões para Criação e Interpretação de Conteúdos Web com HTML5
Padrões para Criação e Interpretação de Conteúdos Web com HTML5
 
Escalabilidade de Aplicações Web
Escalabilidade de Aplicações WebEscalabilidade de Aplicações Web
Escalabilidade de Aplicações Web
 
Porque você deve aprender VIm hoje.
Porque você deve aprender VIm hoje.Porque você deve aprender VIm hoje.
Porque você deve aprender VIm hoje.
 
Fazendo mágica com ElasticSearch
Fazendo mágica com ElasticSearchFazendo mágica com ElasticSearch
Fazendo mágica com ElasticSearch
 
Node.js - Devo adotar na minha empresa?
Node.js - Devo adotar na minha empresa?Node.js - Devo adotar na minha empresa?
Node.js - Devo adotar na minha empresa?
 
Node.js no Pagar.me
Node.js no Pagar.meNode.js no Pagar.me
Node.js no Pagar.me
 
Banco de Dados - NoSQL
Banco de Dados - NoSQLBanco de Dados - NoSQL
Banco de Dados - NoSQL
 
Web Semântica e bancos de dados NoSQL
Web Semântica e bancos de dados NoSQLWeb Semântica e bancos de dados NoSQL
Web Semântica e bancos de dados NoSQL
 
TCC Tecnologia em Sistemas para Internet
TCC Tecnologia em Sistemas para InternetTCC Tecnologia em Sistemas para Internet
TCC Tecnologia em Sistemas para Internet
 
Modelos NoSQL e a Persistência Poliglota
Modelos NoSQL e a Persistência PoliglotaModelos NoSQL e a Persistência Poliglota
Modelos NoSQL e a Persistência Poliglota
 
Introdução ao JPA com Hibernate
Introdução ao JPA com HibernateIntrodução ao JPA com Hibernate
Introdução ao JPA com Hibernate
 
NoSQL: onde, como e por quê? Cassandra e MongoDB
NoSQL: onde, como e por quê? Cassandra e MongoDBNoSQL: onde, como e por quê? Cassandra e MongoDB
NoSQL: onde, como e por quê? Cassandra e MongoDB
 
Introdução aos Sistemas Distribuídos
Introdução aos Sistemas DistribuídosIntrodução aos Sistemas Distribuídos
Introdução aos Sistemas Distribuídos
 
Portfolio unopar administração 7º periodo conceito excelente!
Portfolio unopar administração 7º periodo   conceito excelente!Portfolio unopar administração 7º periodo   conceito excelente!
Portfolio unopar administração 7º periodo conceito excelente!
 
Apresentação unopar modelo 1
Apresentação unopar modelo 1Apresentação unopar modelo 1
Apresentação unopar modelo 1
 
Secure Your REST API (The Right Way)
Secure Your REST API (The Right Way)Secure Your REST API (The Right Way)
Secure Your REST API (The Right Way)
 

Similar to Alto desempenho e escalabilidade em aplicações web utilizando banco de dados não-relacional e programação orientada a eventos na camada server-side com Node.JS

Planejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
Planejamento e Gerenciamento de Capacidade para Sistemas DistribuídosPlanejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
Planejamento e Gerenciamento de Capacidade para Sistemas Distribuídosluanrjesus
 
Tdc Future 2021 - simples soluções grandes resultados - Márcio Rogério Nizzola
Tdc Future 2021 - simples soluções grandes resultados - Márcio Rogério NizzolaTdc Future 2021 - simples soluções grandes resultados - Márcio Rogério Nizzola
Tdc Future 2021 - simples soluções grandes resultados - Márcio Rogério NizzolaDextra Sistemas / Etec Itu
 
QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o Azure
QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o AzureQCon 2016 - Como migramos uma solução de 4 milhões de usuários para o Azure
QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o AzureFabrício Lopes Sanchez
 
Construindo aplicações Web escaláveis com Docker, Kubernetes e o Microsoft Az...
Construindo aplicações Web escaláveis com Docker, Kubernetes e o Microsoft Az...Construindo aplicações Web escaláveis com Docker, Kubernetes e o Microsoft Az...
Construindo aplicações Web escaláveis com Docker, Kubernetes e o Microsoft Az...Renato Groff
 
Big Data Analytics - Data Engineer, Arquitetura, AWS e Mais
Big Data Analytics - Data Engineer, Arquitetura, AWS e MaisBig Data Analytics - Data Engineer, Arquitetura, AWS e Mais
Big Data Analytics - Data Engineer, Arquitetura, AWS e MaisCicero Joasyo Mateus de Moura
 
Cenário das Plataformas de Dados 2017/2018
Cenário das Plataformas de Dados 2017/2018Cenário das Plataformas de Dados 2017/2018
Cenário das Plataformas de Dados 2017/2018Raul Oliveira
 
[DTC21] André Marques - Jornada do Engenheiro de Dados
[DTC21] André Marques - Jornada do Engenheiro de Dados[DTC21] André Marques - Jornada do Engenheiro de Dados
[DTC21] André Marques - Jornada do Engenheiro de DadosDeep Tech Brasil
 
Palestra big data_e_mineracao_dedados_5agosto13-versaoslideshare
Palestra big data_e_mineracao_dedados_5agosto13-versaoslidesharePalestra big data_e_mineracao_dedados_5agosto13-versaoslideshare
Palestra big data_e_mineracao_dedados_5agosto13-versaoslidesharepccdias
 
Arquitetura de Software e o DNAD2013
Arquitetura de Software e o DNAD2013Arquitetura de Software e o DNAD2013
Arquitetura de Software e o DNAD2013André Borgonovo
 
Desafio de crescer
Desafio de crescerDesafio de crescer
Desafio de crescerGuilherme
 
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azure
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on AzureTDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azure
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azuretdc-globalcode
 
Xen e CoreOS: solução para data mining com NodeJS e ElasticSearch
Xen e CoreOS: solução para data mining com NodeJS e ElasticSearchXen e CoreOS: solução para data mining com NodeJS e ElasticSearch
Xen e CoreOS: solução para data mining com NodeJS e ElasticSearchBernardo Donadio
 
Big data e mineração de dados
Big data e mineração de dadosBig data e mineração de dados
Big data e mineração de dadosElton Meira
 
Apresentação: Utilização de Metodologias Ágeis para Adaptação de um Processo ...
Apresentação: Utilização de Metodologias Ágeis para Adaptação de um Processo ...Apresentação: Utilização de Metodologias Ágeis para Adaptação de um Processo ...
Apresentação: Utilização de Metodologias Ágeis para Adaptação de um Processo ...Felipe Nascimento
 
Mean Stack - Aplicações Web Modernas com MEAN
Mean Stack - Aplicações Web Modernas com MEANMean Stack - Aplicações Web Modernas com MEAN
Mean Stack - Aplicações Web Modernas com MEANJoão Gabriel Lima
 
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...Cleber Dantas
 
BigQuery Performance Improvements Storage API
BigQuery Performance Improvements Storage APIBigQuery Performance Improvements Storage API
BigQuery Performance Improvements Storage APIAlvaro Viebrantz
 
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...Marcus Garcia
 

Similar to Alto desempenho e escalabilidade em aplicações web utilizando banco de dados não-relacional e programação orientada a eventos na camada server-side com Node.JS (20)

Engenharia Web
Engenharia WebEngenharia Web
Engenharia Web
 
Planejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
Planejamento e Gerenciamento de Capacidade para Sistemas DistribuídosPlanejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
Planejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
 
Tdc Future 2021 - simples soluções grandes resultados - Márcio Rogério Nizzola
Tdc Future 2021 - simples soluções grandes resultados - Márcio Rogério NizzolaTdc Future 2021 - simples soluções grandes resultados - Márcio Rogério Nizzola
Tdc Future 2021 - simples soluções grandes resultados - Márcio Rogério Nizzola
 
QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o Azure
QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o AzureQCon 2016 - Como migramos uma solução de 4 milhões de usuários para o Azure
QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o Azure
 
Construindo aplicações Web escaláveis com Docker, Kubernetes e o Microsoft Az...
Construindo aplicações Web escaláveis com Docker, Kubernetes e o Microsoft Az...Construindo aplicações Web escaláveis com Docker, Kubernetes e o Microsoft Az...
Construindo aplicações Web escaláveis com Docker, Kubernetes e o Microsoft Az...
 
Big Data Analytics - Data Engineer, Arquitetura, AWS e Mais
Big Data Analytics - Data Engineer, Arquitetura, AWS e MaisBig Data Analytics - Data Engineer, Arquitetura, AWS e Mais
Big Data Analytics - Data Engineer, Arquitetura, AWS e Mais
 
Cenário das Plataformas de Dados 2017/2018
Cenário das Plataformas de Dados 2017/2018Cenário das Plataformas de Dados 2017/2018
Cenário das Plataformas de Dados 2017/2018
 
[DTC21] André Marques - Jornada do Engenheiro de Dados
[DTC21] André Marques - Jornada do Engenheiro de Dados[DTC21] André Marques - Jornada do Engenheiro de Dados
[DTC21] André Marques - Jornada do Engenheiro de Dados
 
Ruby on Rails for beginners 2.0
Ruby on Rails for beginners 2.0Ruby on Rails for beginners 2.0
Ruby on Rails for beginners 2.0
 
Palestra big data_e_mineracao_dedados_5agosto13-versaoslideshare
Palestra big data_e_mineracao_dedados_5agosto13-versaoslidesharePalestra big data_e_mineracao_dedados_5agosto13-versaoslideshare
Palestra big data_e_mineracao_dedados_5agosto13-versaoslideshare
 
Arquitetura de Software e o DNAD2013
Arquitetura de Software e o DNAD2013Arquitetura de Software e o DNAD2013
Arquitetura de Software e o DNAD2013
 
Desafio de crescer
Desafio de crescerDesafio de crescer
Desafio de crescer
 
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azure
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on AzureTDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azure
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azure
 
Xen e CoreOS: solução para data mining com NodeJS e ElasticSearch
Xen e CoreOS: solução para data mining com NodeJS e ElasticSearchXen e CoreOS: solução para data mining com NodeJS e ElasticSearch
Xen e CoreOS: solução para data mining com NodeJS e ElasticSearch
 
Big data e mineração de dados
Big data e mineração de dadosBig data e mineração de dados
Big data e mineração de dados
 
Apresentação: Utilização de Metodologias Ágeis para Adaptação de um Processo ...
Apresentação: Utilização de Metodologias Ágeis para Adaptação de um Processo ...Apresentação: Utilização de Metodologias Ágeis para Adaptação de um Processo ...
Apresentação: Utilização de Metodologias Ágeis para Adaptação de um Processo ...
 
Mean Stack - Aplicações Web Modernas com MEAN
Mean Stack - Aplicações Web Modernas com MEANMean Stack - Aplicações Web Modernas com MEAN
Mean Stack - Aplicações Web Modernas com MEAN
 
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...
 
BigQuery Performance Improvements Storage API
BigQuery Performance Improvements Storage APIBigQuery Performance Improvements Storage API
BigQuery Performance Improvements Storage API
 
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
 

Alto desempenho e escalabilidade em aplicações web utilizando banco de dados não-relacional e programação orientada a eventos na camada server-side com Node.JS

  • 1. Faculdade de Ciências e Tecnologia – FCT UNESP Departamento de Matemática e Computação – DMC Bachelado em Ciência da Computação Alto desempenho e escalabilidade em aplicações web utilizando banco de dados não-relacional e programação orientada a eventos na camada server-side com Node.JS Vagner José Santana segunda-feira, 29 de abril de 13
  • 2. • Introdução • Problemática • Justificativa • Escalabilidade • Bancos de dados não-relacionais • Node.JS • Objetivos Agenda segunda-feira, 29 de abril de 13
  • 3. Introdução Uso da internet em constante crescimento segunda-feira, 29 de abril de 13
  • 4. Como suportar a grande quantidade de acesos ? • Estrutura Física • Alta quantidade de servidores • Planejamento de estrutura (Scale Up / Scale Out) • Alto Custo segunda-feira, 29 de abril de 13
  • 5. Problemática Grandes aplicações web precisam manter-se estáveis e apresentar bom desempenho mesmo com alta quantidade de acessos simultâneos. Empresas responsáveis por grandes aplicações precisam economizar custos com estruturas de servidores. Como unir os dois pontos ? segunda-feira, 29 de abril de 13
  • 6. Justificativa Unindo tecnologias não tradicionais como as que serão abordadas neste projeto, podemos criar um modelo de aplicação escalável, explorando o máximo da plataforma escolhida. A programação orientada a eventos auxilia o ganho de performance pois evita o bloqueio, comum em aplicações tradicionais que utilizam threads para suportar requisições simultâneas. segunda-feira, 29 de abril de 13
  • 7. Assim, temos como objetivo criar uma aplicação que em comparação com os modelos tradicionais, tenha performance muito superior, e custo inferior para criar a estrutura escalável. segunda-feira, 29 de abril de 13
  • 8. Escalabilidade “Na Engenharia de Software e Telecomunicações, é a capacidade de um sistema ou hardware manter-se estável enquanto uma grande quantidade de usuários ou processamento aumenta significativamente.” segunda-feira, 29 de abril de 13
  • 9. Bancos de dados não-relacionais • Muitas operações de entrada e saída • Banco de dados são responsáveis pelo “gargalo” em uma aplicação • Bancos de dados relacionais apresentam dificuldades em lidar com grande volume de dados segunda-feira, 29 de abril de 13
  • 10. MongoDB • Alta performance • Orientado a documentos • Altamente escalável • Escalabilidade horizontal • Map Reduce segunda-feira, 29 de abril de 13
  • 11. Node.JS • Aplicação server-side • Programação orientada a eventos • I/O não bloqueante (assíncrono) • Engine JavaScript Google V8 • Custo de operações I/O na rede é muito alto segunda-feira, 29 de abril de 13
  • 12. Comparativo simples • Nível de concorrência: 20 mil • Total de requisições: 1.000.000 • Tempo Node.JS: 1043.076 seg. • Tempo Apache: 3570.753 seg. Hello World Fonte: http://zgadzaj.com/benchmarking-nodejs-basic-performance-tests-against-apache-php segunda-feira, 29 de abril de 13
  • 13. Objetivos • Desenvolvimento de um modelo de aplicação altamente escalável • Busca por alta performance • Implementado operações real time segunda-feira, 29 de abril de 13
  • 14. Objetivos Específicos • Estudo e desenvolvimento de algoritmos para operações de entrada e saída utilizando o paradigma de orientação a eventos • Comparativos entre aplicação com banco de dados relacionais e não-relacionais • Testes de carga e simulação de alto número de acessos simultâneos segunda-feira, 29 de abril de 13
  • 15. Referências • M. Wilson, “Contruindo aplicações Node com MongoDB e Backbone”, (O’Reilly), 2013, ISBN 978010449-33739-1 • S. Tikov, S. Vinoski, “Node.js: Using Javascript to Build Gugh Performance Network Programs ”. Internet Computing, IEEE ,2010. André B. Bondi, “Characteristics of scalability and their impact on performance”, Proceedings of the 2nd international workshop on Software and performance, Ottawa, Ontário, Canadá, 2000, ISBN 1-58113-195-X. • Felix V. Leitner, “Scalable Network Programming”, http://bulk.fefe.de/scalable- networking.pdf, 2003, acessado em março de 2013. • Ricardo W. Brito, “Bancos de Dados NoSQL x SGBDs Relacionais:Análise Comparativa”, http:// www.infobrasil.inf.br/userfiles/27-05-S4-1-68840- Bancos%20de%20Dados%20NoSQL.pdf, 2012, acessado em abril de 2013 segunda-feira, 29 de abril de 13