SlideShare uma empresa Scribd logo
1 de 21
Baixar para ler offline
TDC -2014
Por Ismael Soares
Trilha de Arquitetura
3º dia do evento
http://www.thedevelopersconference.com.br/
Desenvolvimento de Cache+Proxy de alta performance
!
Por George Vieira Junior (OUL)
Problemas com arquitetura antiga
(Apache + Squid)
Variação de tamanho de arquivos de vídeo
O cache era inviável porque os acessos
eram em conteúdo do dia
Problemas com Long Tail
Problemas com diversos tipos de receptores
Tentaram usar:
Ngnix,
Lighttpd
Varnish
Criaram o Croupier…
• Administrar dos servidores em tempo real;
• Controlar as rotas da request de acordo com o dispositivo;
• Controlar a distribuição de carga usando busca de estatísticas dos servidores; 
• Controle de regras especificas para Longtail;
• Aumentando Hit Rate de IO.
Servidores de aplicação: porque ainda precisamos deles?
!
Por Bruno Borges (Oracle)
Avaliação da evolução dos servidores de aplicações Java EE
Falou da arquitetura Java EE comum (monolítica)
!
Principais ferramentas escolhidas por Startups: (Jetty, TomCat, Vertx, Groovy, VRaptor, Spring, Cheg, Puppet,
Vagrant, ect.)
!
Características interessantes dos servidores atuais:
• Inteligentes que podem até controlar a memória;
• Monitorar “N” aplicações simultâneas;
• Load Balance;
• Fail-over;
• entre outas.
Micro-services?
…Quem faz besteira na arquitetura tradicional,
vai continuar a fazer com micro-services!
Microservices and the Big Ball of Mud
Recently several articles have been written which wonder whether microservices offers a better way of architecting systems or
represents a potential problem waiting to happen: distributed Big Balls of Mud. Simon Brown and Gene Hughson discuss the
possibility that until people can write well architected monolithic systems they're unlikely to benefit from microservices.
“Não precisamos mais de servidores porque agora
temos micro-services!“
Suportando Aplicações Multi-Tenancy Java EE
Por Rodrigo Candido
Conceito de Multi-tenancy
Vs Multi-Instances e Cloud
Vs
Persistência no Hibernate 4
Como utilizar os conceitos de multi-tenancy dentro
dos EJBs
Como tratar segurança dentro deste tipo de ambiente
Alguns dos desafios que um multi-tenancy são:
personalização, controle de acesso, separação
de dados e aprovisionamento de recursos.
Vantagem a redução da manutenção o aumento
da escalabilidade, em contra partida, quando
uma aplicação cai, cai para todos.
Nova arquitetura do CDI 2.0
Por Alexandre Gama
Events, Observers, Producers,
Interceptores, Decorators e Stereotypes.
Do centralizado ao distribuído e vice-versa
Por Edson Yanaga
Não devemos usar modinha para construir um sistema
Considerar o que resolve o problema
Main Frame (Centralizado)
Client/Server (Distribuido)
Camadas (Centralizado)
Peer to Peer (Distribuido)
SOA (Centralizado)
Microservers (Distribuido)
Obrigado
@rkmael
rkmael@hotmail.com

Mais conteúdo relacionado

Semelhante a TDC 2014 event highlights including cache performance, Java application servers, and CDI architecture

Arquitetura de Microserviços
Arquitetura de MicroserviçosArquitetura de Microserviços
Arquitetura de MicroserviçosNorberto Enomoto
 
Plataforma Android: Produtividade Além do SDK
Plataforma Android: Produtividade Além do SDKPlataforma Android: Produtividade Além do SDK
Plataforma Android: Produtividade Além do SDKRyan Padilha
 
Microserviços - Universidade Metodista - EETI 2016
Microserviços - Universidade Metodista - EETI 2016Microserviços - Universidade Metodista - EETI 2016
Microserviços - Universidade Metodista - EETI 2016Renato Groff
 
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
 
Arquitetura de Microservicos
Arquitetura de MicroservicosArquitetura de Microservicos
Arquitetura de MicroservicosNorberto Enomoto
 
Integrating Microservices
Integrating MicroservicesIntegrating Microservices
Integrating MicroservicesThiago Ramos
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud ComputingAlê Borba
 
Transformando a ti com cloud computing e virtualização
Transformando a ti com cloud computing e virtualizaçãoTransformando a ti com cloud computing e virtualização
Transformando a ti com cloud computing e virtualizaçãoDarlan Segalin
 
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
 
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
 
Palestra cloud-computing
Palestra cloud-computingPalestra cloud-computing
Palestra cloud-computingNaptec
 
Cloud Computing: uma abordagem objetiva sobre o novo ambiente computacional
Cloud Computing: uma abordagem objetiva sobre o novo ambiente computacionalCloud Computing: uma abordagem objetiva sobre o novo ambiente computacional
Cloud Computing: uma abordagem objetiva sobre o novo ambiente computacionalJosé Morelli Neto
 
Computação nas nuvens
Computação nas nuvensComputação nas nuvens
Computação nas nuvensRafael Castro
 
ESTUDO DE CASO PARA ALTA DISPONIBILIDADE EM AMBIENTES DE WEB HOSTING
ESTUDO DE CASO PARA ALTA DISPONIBILIDADE EM AMBIENTES DE WEB HOSTINGESTUDO DE CASO PARA ALTA DISPONIBILIDADE EM AMBIENTES DE WEB HOSTING
ESTUDO DE CASO PARA ALTA DISPONIBILIDADE EM AMBIENTES DE WEB HOSTINGLuiz Thiago
 
Capítulo1 - Introdução a Sistemas Distribuídos - Coulouris
Capítulo1 - Introdução a Sistemas Distribuídos - CoulourisCapítulo1 - Introdução a Sistemas Distribuídos - Coulouris
Capítulo1 - Introdução a Sistemas Distribuídos - CoulourisWindson Viana
 
Arquitetura para otimização de legado
Arquitetura para otimização de legadoArquitetura para otimização de legado
Arquitetura para otimização de legadoClóvis Wichoski
 

Semelhante a TDC 2014 event highlights including cache performance, Java application servers, and CDI architecture (20)

Arquitetura de Microserviços
Arquitetura de MicroserviçosArquitetura de Microserviços
Arquitetura de Microserviços
 
Plataforma Android: Produtividade Além do SDK
Plataforma Android: Produtividade Além do SDKPlataforma Android: Produtividade Além do SDK
Plataforma Android: Produtividade Além do SDK
 
Microserviços - Universidade Metodista - EETI 2016
Microserviços - Universidade Metodista - EETI 2016Microserviços - Universidade Metodista - EETI 2016
Microserviços - Universidade Metodista - EETI 2016
 
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
 
Arquitetura de Microservicos
Arquitetura de MicroservicosArquitetura de Microservicos
Arquitetura de Microservicos
 
Integrating Microservices
Integrating MicroservicesIntegrating Microservices
Integrating Microservices
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
Transformando a ti com cloud computing e virtualização
Transformando a ti com cloud computing e virtualizaçãoTransformando a ti com cloud computing e virtualização
Transformando a ti com cloud computing e virtualização
 
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
 
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
 
Computação nas nuvens
Computação nas nuvensComputação nas nuvens
Computação nas nuvens
 
Palestra cloud-computing
Palestra cloud-computingPalestra cloud-computing
Palestra cloud-computing
 
Cloud Computing: uma abordagem objetiva sobre o novo ambiente computacional
Cloud Computing: uma abordagem objetiva sobre o novo ambiente computacionalCloud Computing: uma abordagem objetiva sobre o novo ambiente computacional
Cloud Computing: uma abordagem objetiva sobre o novo ambiente computacional
 
Computação nas nuvens
Computação nas nuvensComputação nas nuvens
Computação nas nuvens
 
ESTUDO DE CASO PARA ALTA DISPONIBILIDADE EM AMBIENTES DE WEB HOSTING
ESTUDO DE CASO PARA ALTA DISPONIBILIDADE EM AMBIENTES DE WEB HOSTINGESTUDO DE CASO PARA ALTA DISPONIBILIDADE EM AMBIENTES DE WEB HOSTING
ESTUDO DE CASO PARA ALTA DISPONIBILIDADE EM AMBIENTES DE WEB HOSTING
 
Microservices
MicroservicesMicroservices
Microservices
 
Capítulo1 - Introdução a Sistemas Distribuídos - Coulouris
Capítulo1 - Introdução a Sistemas Distribuídos - CoulourisCapítulo1 - Introdução a Sistemas Distribuídos - Coulouris
Capítulo1 - Introdução a Sistemas Distribuídos - Coulouris
 
Arquitetura para otimização de legado
Arquitetura para otimização de legadoArquitetura para otimização de legado
Arquitetura para otimização de legado
 
Sua aplicação nas nuvens com open shift
Sua aplicação nas nuvens com open shiftSua aplicação nas nuvens com open shift
Sua aplicação nas nuvens com open shift
 
Aula sd 2008_02aspectosprojectosds
Aula sd 2008_02aspectosprojectosdsAula sd 2008_02aspectosprojectosds
Aula sd 2008_02aspectosprojectosds
 

Mais de Ismael

TDC 2020 - Trilha de Management 3.0 e Gestão Ágil
TDC 2020 - Trilha de Management 3.0 e Gestão ÁgilTDC 2020 - Trilha de Management 3.0 e Gestão Ágil
TDC 2020 - Trilha de Management 3.0 e Gestão ÁgilIsmael
 
Introducao ao Pensamento Sistemico
Introducao ao Pensamento SistemicoIntroducao ao Pensamento Sistemico
Introducao ao Pensamento SistemicoIsmael
 
Testes de unidade alem do basico
Testes de unidade alem do basicoTestes de unidade alem do basico
Testes de unidade alem do basicoIsmael
 
Bluesoft Culture
Bluesoft CultureBluesoft Culture
Bluesoft CultureIsmael
 
Como dar e receber feedbacks
Como dar e receber feedbacksComo dar e receber feedbacks
Como dar e receber feedbacksIsmael
 
Eficiencia de fluxo
Eficiencia de fluxoEficiencia de fluxo
Eficiencia de fluxoIsmael
 
Como você testa seu software TDC 2017
Como você testa seu software  TDC 2017Como você testa seu software  TDC 2017
Como você testa seu software TDC 2017Ismael
 
Como ter Entregas Frequentes
Como ter Entregas FrequentesComo ter Entregas Frequentes
Como ter Entregas FrequentesIsmael
 
JUnit 5 vs JUnit 4
JUnit 5 vs JUnit 4JUnit 5 vs JUnit 4
JUnit 5 vs JUnit 4Ismael
 
Conceitos por trás do Ágil
Conceitos por trás do ÁgilConceitos por trás do Ágil
Conceitos por trás do ÁgilIsmael
 
Boas Praticas de Testes, Bad Smell e Outros Macetes
Boas Praticas de Testes, Bad Smell e Outros MacetesBoas Praticas de Testes, Bad Smell e Outros Macetes
Boas Praticas de Testes, Bad Smell e Outros MacetesIsmael
 
8 passos para mudança de John Kotter
8 passos para mudança de John Kotter8 passos para mudança de John Kotter
8 passos para mudança de John KotterIsmael
 
Curva da Mudança Kubler-Ross
Curva da Mudança Kubler-RossCurva da Mudança Kubler-Ross
Curva da Mudança Kubler-RossIsmael
 
DevCamp 2016
DevCamp 2016DevCamp 2016
DevCamp 2016Ismael
 
7 Caracteristicas de um bom Lider Agil
7 Caracteristicas de um bom Lider Agil7 Caracteristicas de um bom Lider Agil
7 Caracteristicas de um bom Lider AgilIsmael
 
Law of demeter
Law of demeterLaw of demeter
Law of demeterIsmael
 
Junit Lambda
Junit LambdaJunit Lambda
Junit LambdaIsmael
 
Feedback dos Testes
Feedback dos TestesFeedback dos Testes
Feedback dos TestesIsmael
 
Refactoring Databases - Estrategias
Refactoring Databases - EstrategiasRefactoring Databases - Estrategias
Refactoring Databases - EstrategiasIsmael
 
Refactoring Databases - parte 1
Refactoring Databases - parte 1Refactoring Databases - parte 1
Refactoring Databases - parte 1Ismael
 

Mais de Ismael (20)

TDC 2020 - Trilha de Management 3.0 e Gestão Ágil
TDC 2020 - Trilha de Management 3.0 e Gestão ÁgilTDC 2020 - Trilha de Management 3.0 e Gestão Ágil
TDC 2020 - Trilha de Management 3.0 e Gestão Ágil
 
Introducao ao Pensamento Sistemico
Introducao ao Pensamento SistemicoIntroducao ao Pensamento Sistemico
Introducao ao Pensamento Sistemico
 
Testes de unidade alem do basico
Testes de unidade alem do basicoTestes de unidade alem do basico
Testes de unidade alem do basico
 
Bluesoft Culture
Bluesoft CultureBluesoft Culture
Bluesoft Culture
 
Como dar e receber feedbacks
Como dar e receber feedbacksComo dar e receber feedbacks
Como dar e receber feedbacks
 
Eficiencia de fluxo
Eficiencia de fluxoEficiencia de fluxo
Eficiencia de fluxo
 
Como você testa seu software TDC 2017
Como você testa seu software  TDC 2017Como você testa seu software  TDC 2017
Como você testa seu software TDC 2017
 
Como ter Entregas Frequentes
Como ter Entregas FrequentesComo ter Entregas Frequentes
Como ter Entregas Frequentes
 
JUnit 5 vs JUnit 4
JUnit 5 vs JUnit 4JUnit 5 vs JUnit 4
JUnit 5 vs JUnit 4
 
Conceitos por trás do Ágil
Conceitos por trás do ÁgilConceitos por trás do Ágil
Conceitos por trás do Ágil
 
Boas Praticas de Testes, Bad Smell e Outros Macetes
Boas Praticas de Testes, Bad Smell e Outros MacetesBoas Praticas de Testes, Bad Smell e Outros Macetes
Boas Praticas de Testes, Bad Smell e Outros Macetes
 
8 passos para mudança de John Kotter
8 passos para mudança de John Kotter8 passos para mudança de John Kotter
8 passos para mudança de John Kotter
 
Curva da Mudança Kubler-Ross
Curva da Mudança Kubler-RossCurva da Mudança Kubler-Ross
Curva da Mudança Kubler-Ross
 
DevCamp 2016
DevCamp 2016DevCamp 2016
DevCamp 2016
 
7 Caracteristicas de um bom Lider Agil
7 Caracteristicas de um bom Lider Agil7 Caracteristicas de um bom Lider Agil
7 Caracteristicas de um bom Lider Agil
 
Law of demeter
Law of demeterLaw of demeter
Law of demeter
 
Junit Lambda
Junit LambdaJunit Lambda
Junit Lambda
 
Feedback dos Testes
Feedback dos TestesFeedback dos Testes
Feedback dos Testes
 
Refactoring Databases - Estrategias
Refactoring Databases - EstrategiasRefactoring Databases - Estrategias
Refactoring Databases - Estrategias
 
Refactoring Databases - parte 1
Refactoring Databases - parte 1Refactoring Databases - parte 1
Refactoring Databases - parte 1
 

TDC 2014 event highlights including cache performance, Java application servers, and CDI architecture

  • 2. Trilha de Arquitetura 3º dia do evento http://www.thedevelopersconference.com.br/
  • 3. Desenvolvimento de Cache+Proxy de alta performance ! Por George Vieira Junior (OUL)
  • 4. Problemas com arquitetura antiga (Apache + Squid) Variação de tamanho de arquivos de vídeo O cache era inviável porque os acessos eram em conteúdo do dia
  • 6. Problemas com diversos tipos de receptores Tentaram usar: Ngnix, Lighttpd Varnish
  • 7. Criaram o Croupier… • Administrar dos servidores em tempo real; • Controlar as rotas da request de acordo com o dispositivo; • Controlar a distribuição de carga usando busca de estatísticas dos servidores;  • Controle de regras especificas para Longtail; • Aumentando Hit Rate de IO.
  • 8. Servidores de aplicação: porque ainda precisamos deles? ! Por Bruno Borges (Oracle)
  • 9. Avaliação da evolução dos servidores de aplicações Java EE Falou da arquitetura Java EE comum (monolítica) ! Principais ferramentas escolhidas por Startups: (Jetty, TomCat, Vertx, Groovy, VRaptor, Spring, Cheg, Puppet, Vagrant, ect.) ! Características interessantes dos servidores atuais: • Inteligentes que podem até controlar a memória; • Monitorar “N” aplicações simultâneas; • Load Balance; • Fail-over; • entre outas.
  • 10. Micro-services? …Quem faz besteira na arquitetura tradicional, vai continuar a fazer com micro-services! Microservices and the Big Ball of Mud Recently several articles have been written which wonder whether microservices offers a better way of architecting systems or represents a potential problem waiting to happen: distributed Big Balls of Mud. Simon Brown and Gene Hughson discuss the possibility that until people can write well architected monolithic systems they're unlikely to benefit from microservices.
  • 11. “Não precisamos mais de servidores porque agora temos micro-services!“
  • 12. Suportando Aplicações Multi-Tenancy Java EE Por Rodrigo Candido
  • 13. Conceito de Multi-tenancy Vs Multi-Instances e Cloud Vs
  • 14. Persistência no Hibernate 4 Como utilizar os conceitos de multi-tenancy dentro dos EJBs Como tratar segurança dentro deste tipo de ambiente
  • 15. Alguns dos desafios que um multi-tenancy são: personalização, controle de acesso, separação de dados e aprovisionamento de recursos. Vantagem a redução da manutenção o aumento da escalabilidade, em contra partida, quando uma aplicação cai, cai para todos.
  • 16. Nova arquitetura do CDI 2.0 Por Alexandre Gama
  • 17. Events, Observers, Producers, Interceptores, Decorators e Stereotypes.
  • 18. Do centralizado ao distribuído e vice-versa Por Edson Yanaga
  • 19. Não devemos usar modinha para construir um sistema Considerar o que resolve o problema
  • 20. Main Frame (Centralizado) Client/Server (Distribuido) Camadas (Centralizado) Peer to Peer (Distribuido) SOA (Centralizado) Microservers (Distribuido)