SlideShare uma empresa Scribd logo
1 de 23
Demoiselle 1, 2, 3
Palestrante: Paulo Gladson Ximenes Pinheiro
O que comparar?
Aplicação Demoiselle 1.x – JEE5
vs
Aplicação Demoiselle 2.x – JEE6
O que comparar?
Aplicação Demoiselle 2.4 – JSF
vs
Aplicação Demoiselle 2.5 – REST/HTML5
JSF
Toda gestão “web” é processada no Servidor
http://www.ebah.com.br/content/ABAAAfN78AJ/tcc-leonildo-wagner-reestruturacao-website-utilizando-padroes-w3c-26-04-2012?part=3
REST
Toda gestão “web” é processada no Cliente
http://www.ebah.com.br/content/ABAAAfN78AJ/tcc-leonildo-wagner-reestruturacao-website-utilizando-padroes-w3c-26-04-2012?part=3
Testes de comparação
● Aplicação de teste;
● Testado pela SUPST;
● Servidor - VM ;
● 1 processador, 1GB Ram, 20GB Disco
● Items avaliados:
● Tempo de Resposta;
● Percentual de Erro;
● Taxa de Processamento (Throughput);
● Consumo de Rede;
● Consumo de Processamento;
Demoiselle 2.4 JSF
Demoiselle 2.5 HTML5/REST
Testes de Comparação
Testes de Comparação
Testes de Comparação
CPU e Rede SERVER
CPU e Rede Clientes 50 concorrentes
CPU e Rede Clientes 1000 concorrentes
Resultados
JSF REST
Banda
CPU Páginas Vazão Banda CPU Páginas Vazão
25 50% 5078 73 25 20% 55129 2064
75 70% 11120 157 25 20% 56811 2061
75 30% 11201 157 25 20% 57936 2109
100 50% 8695 126 25 20% 54244 2008
100 50% 10869 158 25 20% 54003 1973
100 50% 10720 156 25 20% 54827 2012
175 40% 7670 93 30 20% 31873 990
180 70% 7739 95 30 20% 29881 966
Resultados
Resultado
Banda
CPU Páginas Vazão
0 -30% 90,79% 96,46%
-50 -50% 80,43% 92,38%
-50 -10% 80,67% 92,56%
-75 -30% 83,97% 93,73%
-75 -30% 79,87% 91,99%
-75 -30% 80,45% 92,25%
-145 -20% 75,94% 90,61%
-150 -50% 74,10% 90,17%
AngularJS
Framework completo
Two-way Data binding
Injeção de Dependências
Criação de diretivas (Extensão do HTML)
Modularização e reuso (Controllers, Services e Filters)
Testabilidade
O que comparar?
Aplicação Demoiselle 3.x – JEE7
vs
Aplicação Demoiselle 2.x – JEE6
Orquestração x Coreografia
●Maetros
●Funções acéfalas
●Comandos
●Sequencial
●Execução em lote
●Cada um sabe seu
papel
●Funções inteligentes
●Eventos
●Paralello
●Execução distribuída
Monolítico vs Microservice
●Containers full
●Escalabilidade full
●Gestão de nuvem
básica
●Ferramentas externas
concentradoras
● Baixa resiliência
●Containers fit
●Escalabilidade por
funcionalidade
●Gestão de nuvem
aprimorada
●Inteligência e auto-
suficiência
●Alta resiliência
●WebSocket
Microcontainers
●JSR-352 Batch Applications for the Java Platform
●Runtime & Artifact API, XML-based Job specification lang.
●JSR-236 Concurrency Utilities for JavaEE
●Executor, Scheduled Executor, Thread Factory, Context
●JSR-353 Java API for JSON Processing (JSON-P)
●Parse, transform and query JSON data
●JSR-356 Web Sockets support
●Annotation driven endpoints and lifecycle callbacks
●JSR-345 EJB 3.2, plus Interceptors 1.2, Annotations 1.2
●Misc. improvements
●JSR-340 Servlet 3.1
●Non-blocking I/O, HTTP upgrade, etc.
●JSR-342 JMS 2.0
●Shared topic subs, delayed delivery, async send, etc.
●JSR-344 JSF 2.2
●HTML 5, FaceFlows, Stateless Views, Resource lib contracts
●JSR-322 JCA 1.7
●Activation name for msg endpoints
●EJB 2.1 Entity Beans (CMP)
●JAX-RPC (API for XML-based RPC)
●JAXR (API for XML registries)
●JSR-88 (Deployment API)
●Re-surfaced in JSR-373 for EE8
● (JavaEE Management API 2.0)Blocking / non-blocking NIO based APIs
●Composition / handler based architecture
●Lightweight and fully embeddable
●Support for WebSockets, including JSR-356
●Support for Servlet 3.1
●HTTP Upgrade
JEE7
Paulo Gladson Ximenes Pinheiro
paulo.pinheiro@serpro.gov.br

Mais conteúdo relacionado

Mais procurados

Aplicando Testes Automatizados com Selenium e Azure DevOps - MVPConf LATAM 2019
Aplicando Testes Automatizados com Selenium e Azure DevOps - MVPConf LATAM 2019Aplicando Testes Automatizados com Selenium e Azure DevOps - MVPConf LATAM 2019
Aplicando Testes Automatizados com Selenium e Azure DevOps - MVPConf LATAM 2019Renato Groff
 
O que esperar do framework Laminas
O que esperar do framework LaminasO que esperar do framework Laminas
O que esperar do framework LaminasFlávio Lisboa
 
Criando microsserviços em PHP
Criando microsserviços em PHPCriando microsserviços em PHP
Criando microsserviços em PHPFlávio Lisboa
 
Desenvolvimento web com VRaptor
Desenvolvimento web com VRaptorDesenvolvimento web com VRaptor
Desenvolvimento web com VRaptorDaniel Cavalcante
 
.NET + Microsserviços: alternativas open source para descomplicar a vida | TD...
.NET + Microsserviços: alternativas open source para descomplicar a vida | TD....NET + Microsserviços: alternativas open source para descomplicar a vida | TD...
.NET + Microsserviços: alternativas open source para descomplicar a vida | TD...Renato Groffe
 
RubyConf 17 - Colocando sua aplicação vue nos trilhos
RubyConf 17 - Colocando sua aplicação vue nos trilhosRubyConf 17 - Colocando sua aplicação vue nos trilhos
RubyConf 17 - Colocando sua aplicação vue nos trilhosFelipe Gadelha Ruoso
 
Turbinando microsserviços em PHP
Turbinando microsserviços em PHPTurbinando microsserviços em PHP
Turbinando microsserviços em PHPFlávio Lisboa
 
Dapper - Developers-SP - Junho/2017
Dapper - Developers-SP - Junho/2017Dapper - Developers-SP - Junho/2017
Dapper - Developers-SP - Junho/2017Renato Groff
 
Visual Studio Summit 2018 - CI/CD usando Azure DevOps Projects
Visual Studio Summit 2018 - CI/CD usando Azure DevOps ProjectsVisual Studio Summit 2018 - CI/CD usando Azure DevOps Projects
Visual Studio Summit 2018 - CI/CD usando Azure DevOps ProjectsAndré Dias
 
Automatizando Testes de Integração com Azure DevOps | DevOps Experience - Fev...
Automatizando Testes de Integração com Azure DevOps | DevOps Experience - Fev...Automatizando Testes de Integração com Azure DevOps | DevOps Experience - Fev...
Automatizando Testes de Integração com Azure DevOps | DevOps Experience - Fev...Renato Groffe
 
.NET Conf 2018 - Campinas - Blazor: Utilizando C# em browsers
.NET Conf 2018 - Campinas - Blazor: Utilizando C# em browsers.NET Conf 2018 - Campinas - Blazor: Utilizando C# em browsers
.NET Conf 2018 - Campinas - Blazor: Utilizando C# em browsersGustavo Bellini Bigardi
 
Web Tools Pt B R
Web Tools Pt  B RWeb Tools Pt  B R
Web Tools Pt B Rguestb9d145
 
Aplicações Web Multiplataforma com ASP .NET Core MVC - FATEC
Aplicações Web Multiplataforma com ASP .NET Core MVC - FATECAplicações Web Multiplataforma com ASP .NET Core MVC - FATEC
Aplicações Web Multiplataforma com ASP .NET Core MVC - FATECRafael Pessoni
 

Mais procurados (19)

Tdd On Rails
Tdd On RailsTdd On Rails
Tdd On Rails
 
Aplicando Testes Automatizados com Selenium e Azure DevOps - MVPConf LATAM 2019
Aplicando Testes Automatizados com Selenium e Azure DevOps - MVPConf LATAM 2019Aplicando Testes Automatizados com Selenium e Azure DevOps - MVPConf LATAM 2019
Aplicando Testes Automatizados com Selenium e Azure DevOps - MVPConf LATAM 2019
 
O que esperar do framework Laminas
O que esperar do framework LaminasO que esperar do framework Laminas
O que esperar do framework Laminas
 
Criando microsserviços em PHP
Criando microsserviços em PHPCriando microsserviços em PHP
Criando microsserviços em PHP
 
Desenvolvimento web com VRaptor
Desenvolvimento web com VRaptorDesenvolvimento web com VRaptor
Desenvolvimento web com VRaptor
 
.NET + Microsserviços: alternativas open source para descomplicar a vida | TD...
.NET + Microsserviços: alternativas open source para descomplicar a vida | TD....NET + Microsserviços: alternativas open source para descomplicar a vida | TD...
.NET + Microsserviços: alternativas open source para descomplicar a vida | TD...
 
RubyConf 17 - Colocando sua aplicação vue nos trilhos
RubyConf 17 - Colocando sua aplicação vue nos trilhosRubyConf 17 - Colocando sua aplicação vue nos trilhos
RubyConf 17 - Colocando sua aplicação vue nos trilhos
 
Turbinando microsserviços em PHP
Turbinando microsserviços em PHPTurbinando microsserviços em PHP
Turbinando microsserviços em PHP
 
Dapper - Developers-SP - Junho/2017
Dapper - Developers-SP - Junho/2017Dapper - Developers-SP - Junho/2017
Dapper - Developers-SP - Junho/2017
 
Blazor #SnetTalks3
Blazor  #SnetTalks3Blazor  #SnetTalks3
Blazor #SnetTalks3
 
Visual Studio Summit 2018 - CI/CD usando Azure DevOps Projects
Visual Studio Summit 2018 - CI/CD usando Azure DevOps ProjectsVisual Studio Summit 2018 - CI/CD usando Azure DevOps Projects
Visual Studio Summit 2018 - CI/CD usando Azure DevOps Projects
 
Automatizando Testes de Integração com Azure DevOps | DevOps Experience - Fev...
Automatizando Testes de Integração com Azure DevOps | DevOps Experience - Fev...Automatizando Testes de Integração com Azure DevOps | DevOps Experience - Fev...
Automatizando Testes de Integração com Azure DevOps | DevOps Experience - Fev...
 
.NET Conf 2018 - Campinas - Blazor: Utilizando C# em browsers
.NET Conf 2018 - Campinas - Blazor: Utilizando C# em browsers.NET Conf 2018 - Campinas - Blazor: Utilizando C# em browsers
.NET Conf 2018 - Campinas - Blazor: Utilizando C# em browsers
 
Testes Automatizados
Testes AutomatizadosTestes Automatizados
Testes Automatizados
 
Magento: Mitos vs Vantagens
Magento: Mitos vs VantagensMagento: Mitos vs Vantagens
Magento: Mitos vs Vantagens
 
Boas práticas Magento 2
Boas práticas Magento 2Boas práticas Magento 2
Boas práticas Magento 2
 
Web Tools Pt B R
Web Tools Pt  B RWeb Tools Pt  B R
Web Tools Pt B R
 
Desvendando ASP.NET MVC
Desvendando ASP.NET MVCDesvendando ASP.NET MVC
Desvendando ASP.NET MVC
 
Aplicações Web Multiplataforma com ASP .NET Core MVC - FATEC
Aplicações Web Multiplataforma com ASP .NET Core MVC - FATECAplicações Web Multiplataforma com ASP .NET Core MVC - FATEC
Aplicações Web Multiplataforma com ASP .NET Core MVC - FATEC
 

Semelhante a Demoiselle 1, 2, 3: Comparação entre JSF, REST, HTML5 e JEE

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
 
Matando web forms e modernizando um grande varejista
Matando web forms e modernizando um grande varejistaMatando web forms e modernizando um grande varejista
Matando web forms e modernizando um grande varejistaJosé Roberto Araújo
 
TDC2018FLN | Trilha Arquitetura - Elixir Umbrella - Aplicacoes desacopladas s...
TDC2018FLN | Trilha Arquitetura - Elixir Umbrella - Aplicacoes desacopladas s...TDC2018FLN | Trilha Arquitetura - Elixir Umbrella - Aplicacoes desacopladas s...
TDC2018FLN | Trilha Arquitetura - Elixir Umbrella - Aplicacoes desacopladas s...tdc-globalcode
 
Pangea - Plataforma digital com Google Cloud Platform
Pangea - Plataforma digital com Google Cloud PlatformPangea - Plataforma digital com Google Cloud Platform
Pangea - Plataforma digital com Google Cloud PlatformAndré Paulovich
 
ERES 2018 - Microserviços: Desafios para Lidar com a Qualidade
ERES 2018 - Microserviços: Desafios para Lidar com a QualidadeERES 2018 - Microserviços: Desafios para Lidar com a Qualidade
ERES 2018 - Microserviços: Desafios para Lidar com a QualidadeAndré Abe Vicente
 
ASP .NET MVC - Você esta pronto para a pílula vermelha?
ASP .NET MVC - Você esta pronto para a pílula vermelha?ASP .NET MVC - Você esta pronto para a pílula vermelha?
ASP .NET MVC - Você esta pronto para a pílula vermelha?Douglas Aguiar
 
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...Rodrigo Immaginario
 
Vuejs Angularjs e Reactjs. Veja as diferenças de cada framework!
Vuejs Angularjs e Reactjs. Veja as diferenças de cada framework!Vuejs Angularjs e Reactjs. Veja as diferenças de cada framework!
Vuejs Angularjs e Reactjs. Veja as diferenças de cada framework!José Barbosa
 
Google AppEngine: Desafios da adoção de cloud no mercado de seguros
Google AppEngine: Desafios da adoção de cloud no mercado de segurosGoogle AppEngine: Desafios da adoção de cloud no mercado de seguros
Google AppEngine: Desafios da adoção de cloud no mercado de segurosGustavo Concon
 
The twelve factor app - Princípios e boas práticas aplicados no mundo real
The twelve factor app - Princípios e boas práticas aplicados no mundo realThe twelve factor app - Princípios e boas práticas aplicados no mundo real
The twelve factor app - Princípios e boas práticas aplicados no mundo realJosé Filipe Lyra
 
Palestra Demoiselle V1.x no 11 FISL
Palestra Demoiselle V1.x no 11 FISL Palestra Demoiselle V1.x no 11 FISL
Palestra Demoiselle V1.x no 11 FISL Emerson Saito
 
De um sistema legado para micro serviços com GraphQL
De um sistema legado para micro serviços com GraphQLDe um sistema legado para micro serviços com GraphQL
De um sistema legado para micro serviços com GraphQLTaller Negócio Digitais
 
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...iMasters
 
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
 
Como DDD e Strategic Design estão nos ajudando a modernizar um Legado
Como DDD e Strategic Design estão nos ajudando a modernizar um LegadoComo DDD e Strategic Design estão nos ajudando a modernizar um Legado
Como DDD e Strategic Design estão nos ajudando a modernizar um LegadoLuiz Costa
 
TDC2017 | São Paulo - Trilha Containers How we figured out we had a SRE team ...
TDC2017 | São Paulo - Trilha Containers How we figured out we had a SRE team ...TDC2017 | São Paulo - Trilha Containers How we figured out we had a SRE team ...
TDC2017 | São Paulo - Trilha Containers How we figured out we had a SRE team ...tdc-globalcode
 
Escalabilidade via Software no ExpressoV3
Escalabilidade via Software no ExpressoV3Escalabilidade via Software no ExpressoV3
Escalabilidade via Software no ExpressoV3Flávio Lisboa
 

Semelhante a Demoiselle 1, 2, 3: Comparação entre JSF, REST, HTML5 e JEE (20)

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
 
Matando web forms e modernizando um grande varejista
Matando web forms e modernizando um grande varejistaMatando web forms e modernizando um grande varejista
Matando web forms e modernizando um grande varejista
 
Arquitetura de sistemas web
Arquitetura de sistemas webArquitetura de sistemas web
Arquitetura de sistemas web
 
TDC2018FLN | Trilha Arquitetura - Elixir Umbrella - Aplicacoes desacopladas s...
TDC2018FLN | Trilha Arquitetura - Elixir Umbrella - Aplicacoes desacopladas s...TDC2018FLN | Trilha Arquitetura - Elixir Umbrella - Aplicacoes desacopladas s...
TDC2018FLN | Trilha Arquitetura - Elixir Umbrella - Aplicacoes desacopladas s...
 
Pangea - Plataforma digital com Google Cloud Platform
Pangea - Plataforma digital com Google Cloud PlatformPangea - Plataforma digital com Google Cloud Platform
Pangea - Plataforma digital com Google Cloud Platform
 
ERES 2018 - Microserviços: Desafios para Lidar com a Qualidade
ERES 2018 - Microserviços: Desafios para Lidar com a QualidadeERES 2018 - Microserviços: Desafios para Lidar com a Qualidade
ERES 2018 - Microserviços: Desafios para Lidar com a Qualidade
 
ASP .NET MVC - Você esta pronto para a pílula vermelha?
ASP .NET MVC - Você esta pronto para a pílula vermelha?ASP .NET MVC - Você esta pronto para a pílula vermelha?
ASP .NET MVC - Você esta pronto para a pílula vermelha?
 
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
 
Vuejs Angularjs e Reactjs. Veja as diferenças de cada framework!
Vuejs Angularjs e Reactjs. Veja as diferenças de cada framework!Vuejs Angularjs e Reactjs. Veja as diferenças de cada framework!
Vuejs Angularjs e Reactjs. Veja as diferenças de cada framework!
 
TRIO IT - Resumo
TRIO IT - ResumoTRIO IT - Resumo
TRIO IT - Resumo
 
Google AppEngine: Desafios da adoção de cloud no mercado de seguros
Google AppEngine: Desafios da adoção de cloud no mercado de segurosGoogle AppEngine: Desafios da adoção de cloud no mercado de seguros
Google AppEngine: Desafios da adoção de cloud no mercado de seguros
 
Front end architecture
Front end architectureFront end architecture
Front end architecture
 
The twelve factor app - Princípios e boas práticas aplicados no mundo real
The twelve factor app - Princípios e boas práticas aplicados no mundo realThe twelve factor app - Princípios e boas práticas aplicados no mundo real
The twelve factor app - Princípios e boas práticas aplicados no mundo real
 
Palestra Demoiselle V1.x no 11 FISL
Palestra Demoiselle V1.x no 11 FISL Palestra Demoiselle V1.x no 11 FISL
Palestra Demoiselle V1.x no 11 FISL
 
De um sistema legado para micro serviços com GraphQL
De um sistema legado para micro serviços com GraphQLDe um sistema legado para micro serviços com GraphQL
De um sistema legado para micro serviços com GraphQL
 
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
 
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
 
Como DDD e Strategic Design estão nos ajudando a modernizar um Legado
Como DDD e Strategic Design estão nos ajudando a modernizar um LegadoComo DDD e Strategic Design estão nos ajudando a modernizar um Legado
Como DDD e Strategic Design estão nos ajudando a modernizar um Legado
 
TDC2017 | São Paulo - Trilha Containers How we figured out we had a SRE team ...
TDC2017 | São Paulo - Trilha Containers How we figured out we had a SRE team ...TDC2017 | São Paulo - Trilha Containers How we figured out we had a SRE team ...
TDC2017 | São Paulo - Trilha Containers How we figured out we had a SRE team ...
 
Escalabilidade via Software no ExpressoV3
Escalabilidade via Software no ExpressoV3Escalabilidade via Software no ExpressoV3
Escalabilidade via Software no ExpressoV3
 

Demoiselle 1, 2, 3: Comparação entre JSF, REST, HTML5 e JEE

  • 1. Demoiselle 1, 2, 3 Palestrante: Paulo Gladson Ximenes Pinheiro
  • 2. O que comparar? Aplicação Demoiselle 1.x – JEE5 vs Aplicação Demoiselle 2.x – JEE6
  • 3. O que comparar? Aplicação Demoiselle 2.4 – JSF vs Aplicação Demoiselle 2.5 – REST/HTML5
  • 4. JSF Toda gestão “web” é processada no Servidor http://www.ebah.com.br/content/ABAAAfN78AJ/tcc-leonildo-wagner-reestruturacao-website-utilizando-padroes-w3c-26-04-2012?part=3
  • 5. REST Toda gestão “web” é processada no Cliente http://www.ebah.com.br/content/ABAAAfN78AJ/tcc-leonildo-wagner-reestruturacao-website-utilizando-padroes-w3c-26-04-2012?part=3
  • 6. Testes de comparação ● Aplicação de teste; ● Testado pela SUPST; ● Servidor - VM ; ● 1 processador, 1GB Ram, 20GB Disco ● Items avaliados: ● Tempo de Resposta; ● Percentual de Erro; ● Taxa de Processamento (Throughput); ● Consumo de Rede; ● Consumo de Processamento;
  • 12. CPU e Rede SERVER
  • 13. CPU e Rede Clientes 50 concorrentes
  • 14. CPU e Rede Clientes 1000 concorrentes
  • 15. Resultados JSF REST Banda CPU Páginas Vazão Banda CPU Páginas Vazão 25 50% 5078 73 25 20% 55129 2064 75 70% 11120 157 25 20% 56811 2061 75 30% 11201 157 25 20% 57936 2109 100 50% 8695 126 25 20% 54244 2008 100 50% 10869 158 25 20% 54003 1973 100 50% 10720 156 25 20% 54827 2012 175 40% 7670 93 30 20% 31873 990 180 70% 7739 95 30 20% 29881 966
  • 16. Resultados Resultado Banda CPU Páginas Vazão 0 -30% 90,79% 96,46% -50 -50% 80,43% 92,38% -50 -10% 80,67% 92,56% -75 -30% 83,97% 93,73% -75 -30% 79,87% 91,99% -75 -30% 80,45% 92,25% -145 -20% 75,94% 90,61% -150 -50% 74,10% 90,17%
  • 17. AngularJS Framework completo Two-way Data binding Injeção de Dependências Criação de diretivas (Extensão do HTML) Modularização e reuso (Controllers, Services e Filters) Testabilidade
  • 18. O que comparar? Aplicação Demoiselle 3.x – JEE7 vs Aplicação Demoiselle 2.x – JEE6
  • 19. Orquestração x Coreografia ●Maetros ●Funções acéfalas ●Comandos ●Sequencial ●Execução em lote ●Cada um sabe seu papel ●Funções inteligentes ●Eventos ●Paralello ●Execução distribuída
  • 20. Monolítico vs Microservice ●Containers full ●Escalabilidade full ●Gestão de nuvem básica ●Ferramentas externas concentradoras ● Baixa resiliência ●Containers fit ●Escalabilidade por funcionalidade ●Gestão de nuvem aprimorada ●Inteligência e auto- suficiência ●Alta resiliência ●WebSocket
  • 21. Microcontainers ●JSR-352 Batch Applications for the Java Platform ●Runtime & Artifact API, XML-based Job specification lang. ●JSR-236 Concurrency Utilities for JavaEE ●Executor, Scheduled Executor, Thread Factory, Context ●JSR-353 Java API for JSON Processing (JSON-P) ●Parse, transform and query JSON data ●JSR-356 Web Sockets support ●Annotation driven endpoints and lifecycle callbacks ●JSR-345 EJB 3.2, plus Interceptors 1.2, Annotations 1.2 ●Misc. improvements ●JSR-340 Servlet 3.1 ●Non-blocking I/O, HTTP upgrade, etc. ●JSR-342 JMS 2.0 ●Shared topic subs, delayed delivery, async send, etc. ●JSR-344 JSF 2.2 ●HTML 5, FaceFlows, Stateless Views, Resource lib contracts ●JSR-322 JCA 1.7 ●Activation name for msg endpoints ●EJB 2.1 Entity Beans (CMP) ●JAX-RPC (API for XML-based RPC) ●JAXR (API for XML registries) ●JSR-88 (Deployment API) ●Re-surfaced in JSR-373 for EE8 ● (JavaEE Management API 2.0)Blocking / non-blocking NIO based APIs ●Composition / handler based architecture ●Lightweight and fully embeddable ●Support for WebSockets, including JSR-356 ●Support for Servlet 3.1 ●HTTP Upgrade
  • 22. JEE7
  • 23. Paulo Gladson Ximenes Pinheiro paulo.pinheiro@serpro.gov.br