SlideShare une entreprise Scribd logo
1  sur  58
Java EE 6 & Azure
Desafios no deploy de aplicações Java EE
        no cloud da Microsoft

              Dr. Spock
             @drspockbr
@bout me!
•   Bacharel e especialista em Física
    pela UFV e Unicamp;

•   Desenvolvedor de aplicações
    Web desde 96 e Java desde 99;

•   Palestrante em eventos
    nacionais e internacionais;

•   Integrante da equipe de P&D da
    Softplan em Florianópolis;
@bout me!
•   Bacharel e especialista em Física
    pela UFV e Unicamp;

•   Desenvolvedor de aplicações
    Web desde 96 e Java desde 99;

•   Palestrante em eventos
    nacionais e internacionais;

•   Integrante da equipe de P&D da
    Softplan em Florianópolis;
Visite o SBUG
http://www.springbrasil.com.br/
Agenda
Agenda
•   Introdução e conceitos;
Agenda
•   Introdução e conceitos;

•   Desafios no processo para
    deploy de Java EE no Azure;
Agenda
•   Introdução e conceitos;

•   Desafios no processo para
    deploy de Java EE no Azure;

•   Elasticidade com Java EE e
    Azure;
Introdução &
  Conceitos
Cloud Computing
Usuário
         Final


Desenvolvedores


Administradores
   de rede
Share Point Online,
            Office Live, CRM
                Services



    Windows Server, IIS,
          SQL



  Compute, storage,
network, access control
Desafios no deploy de
  Java EE no Azure
Desenv.



Packaging   Preparação   Run



             Upload
Preparação

   •   Windows Azure SDK;

   •   IIS 7 + Hotfixes;

   •   Windows Starter Kit for Java
       => Ant ou Eclipse

   •   MS Visual Web Developer
       2010 Express
Preparação

   •   Windows Azure SDK;

   •   IIS 7 + Hotfixes;

   •   Windows Starter Kit for Java
       => Ant ou Eclipse

   •   MS Visual Web Developer
       2010 Express

   • Desafio 1:
       “Escolha”
Desenv.



Packaging   Preparação   Run



             Upload
Desenv.


 •   A parte fácil => WAR ou EAR

 •   Arquivos no storage

 •   Criação de scripts de inicialização
     => .bat, .cmd ou .ps

 •   VBScript ou C# => .NET DLLs
Desenv.


 •   A parte fácil => WAR ou EAR

 •   Arquivos no storage

 •   Criação de scripts de inicialização
     => .bat, .cmd ou .ps

 • VBScript ou C# => .NET DLLs
 • Desafio 2:
     “Códigos estranhos”
Desenv.
Desenv.



Packaging   Preparação   Run



             Upload
Packaging

  •   Gerar o arquivo Cloud Service
      Package (.cspkg)

  •   Task Ant requer DLL do Windows
      Azure SDK

  •   Gerar o Cloud Service Definition
      (XML .csdef com tipo VM, ativação
      RDP, criptografia, etc)
Packaging

  •   Gerar o arquivo Cloud Service
      Package (.cspkg)

  •   Task Ant requer DLL do Windows
      Azure SDK

  •   Gerar o Cloud Service Definition
      (XML .csdef com tipo VM, ativação
      RDP, criptografia, etc)

  • Desafio 3:
      “Configurações XML”
Packaging
Desenv.



Packaging   Preparação   Run



             Upload
Upload

 •   Upload .cspkg e .csdef via Portal

 •   Portal requer Silverlight

 •   Storage acessível por outra
     ferramenta

 •   Upload via MS Visual Developer
     2010 Express
Upload

 •   Upload .cspkg e .csdef via Portal

 •   Portal requer Silverlight

 •   Storage acessível por outra
     ferramenta

 •   Upload via MS Visual Developer
     2010 Express

 • Desafio 4:
     “Tempo de deploy”
Upload
Desenv.



Packaging   Preparação   Run



             Upload
Run

•   Na inicialização da VM o script é
    executado

•   O script pode falhar em algum
    ponto

•   Portas mapeadas não tem efeito
    quando ocorre erro

•   Recomendado habilitar RDP
Run

•   Na inicialização da VM o script é
    executado

•   O script pode falhar em algum
    ponto

•   Portas mapeadas não tem efeito
    quando ocorre erro

• Recomendado habilitar RDP
• Desafio 5:
    “Debug”
Run
Run
Desenv.



Packaging   Preparação   Run



             Upload
Elasticidade com
 Java EE e Azure
Load Balancer




Virtual Machine
Load Balancer




Virtual Machine
Load Balancer




Virtual Machine
Load Balancer




Virtual Machine
Load Balancer




Virtual Machine
Load Balancer




Virtual Machine
Load Balancer




Virtual Machine
Load Balancer




Virtual Machine
1000 usuários



                  Load Balancer




Virtual Machine       100 usuários por VM
500 usuários



                  Load Balancer




Virtual Machine        50 usuários por VM
100 usuários



                  Load Balancer




Virtual Machine        10 usuários por VM
100 usuários



                  Load Balancer




Virtual Machine     100 usuários numa VM
100 usuários



                  Load Balancer




Virtual Machine     100 usuários numa VM
Apache
                        mod_cluster




JBossAS + mod_cluster
Uma possível solução!
 •   Windows Azure Connect

 •   Virtual Network + Activation
     Token

 •   1 VM com Apache 64bits +
     mod_cluster

 •   n VMs com JBossAS 6 +
     mod_cluster

 •   Datagrid com Infinispan
Referências
• Windows Azure
  http://www.microsoft.com/windowsazure/

• Interoperability Bridges
  http://www.interoperabilitybridges.com/

• Windows Azure SDK for Java
  http://www.windowsazure4j.org/

• Windows Azure Tools for Eclipse
  http://www.windowsazure4e.org/

• JBoss Community - mod_cluster
  http://www.jboss.org/mod_cluster
Referências
• Mani Doraisany’s Blog - Statelessness vs Elasticity
  http://manidoraisamy.blogspot.com/2010/07/why-does-elastic-nature-of-cloud-impose.html

• Glassfish no Azure - Arun Gupta
  http://blogs.oracle.com/arungupta/entry/ttod_155_glassfish_in_azure
Obrigado!
•   Contato:
    Dr. Spock
    spock@springbrasil.com.br

•   Twitter:
    @drspockbr

•   About me:
    http://about.me/drspockbr

Contenu connexe

Tendances

Workshop Microservices - Microservices com Spring Cloud e Netflix OSS
Workshop Microservices - Microservices com Spring Cloud e Netflix OSSWorkshop Microservices - Microservices com Spring Cloud e Netflix OSS
Workshop Microservices - Microservices com Spring Cloud e Netflix OSSRodrigo Cândido da Silva
 
Introdução ao docker
Introdução ao dockerIntrodução ao docker
Introdução ao dockerNewton Angelini
 
Vitor Hugo Bastos Cardoso apresenta voando alto com WordPress: um guia prátic...
Vitor Hugo Bastos Cardoso apresenta voando alto com WordPress: um guia prátic...Vitor Hugo Bastos Cardoso apresenta voando alto com WordPress: um guia prátic...
Vitor Hugo Bastos Cardoso apresenta voando alto com WordPress: um guia prátic...WordCamp Floripa
 
DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com 100% ...
DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com 100% ...DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com 100% ...
DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com 100% ...Bruno Luiz Pereira da Silva
 
Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...
Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...
Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...Renato Groff
 
DevOps: desenvolvedores e sysadmins cooperando na prática
DevOps: desenvolvedores e sysadmins cooperando na práticaDevOps: desenvolvedores e sysadmins cooperando na prática
DevOps: desenvolvedores e sysadmins cooperando na práticaAri Stopassola Junior
 
Construindo aplicações escaláveis com ASP.NET Core, Docker e o Microsoft Azur...
Construindo aplicações escaláveis com ASP.NET Core, Docker e o Microsoft Azur...Construindo aplicações escaláveis com ASP.NET Core, Docker e o Microsoft Azur...
Construindo aplicações escaláveis com ASP.NET Core, Docker e o Microsoft Azur...Renato Groff
 
Conhecendo o AKS, o azure container services com kubernetes
Conhecendo o AKS, o azure container services com kubernetesConhecendo o AKS, o azure container services com kubernetes
Conhecendo o AKS, o azure container services com kubernetesGiovanni Bassi
 
Maven 3, Sonar e Hudson
Maven 3, Sonar e HudsonMaven 3, Sonar e Hudson
Maven 3, Sonar e HudsonRodrigo Branas
 
Quasar Framework - Uma visão Geral
Quasar Framework - Uma visão GeralQuasar Framework - Uma visão Geral
Quasar Framework - Uma visão GeralPatrick Monteiro
 
Bibliotecas de interface rica no jsf 2
Bibliotecas de interface rica no jsf 2Bibliotecas de interface rica no jsf 2
Bibliotecas de interface rica no jsf 2Pablo Nóbrega
 
AMP Roadshow SP 2019 - Web Apps Modernas
AMP Roadshow SP 2019 - Web Apps ModernasAMP Roadshow SP 2019 - Web Apps Modernas
AMP Roadshow SP 2019 - Web Apps ModernasDan Vitoriano
 
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
 
JBoss Fuse Service Works - O Fuse além da integração - PT-BR
JBoss Fuse Service Works - O Fuse além da integração - PT-BRJBoss Fuse Service Works - O Fuse além da integração - PT-BR
JBoss Fuse Service Works - O Fuse além da integração - PT-BRElvis Rocha
 
Quasar Framework - Front end de alto desempenho
Quasar Framework - Front end de alto desempenhoQuasar Framework - Front end de alto desempenho
Quasar Framework - Front end de alto desempenhoPatrick Monteiro
 
QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...
QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...
QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...Rodrigo Cândido da Silva
 
TDC Floripa 2017 - Criando Microservices Reativos com Java
TDC Floripa 2017 - Criando Microservices Reativos com JavaTDC Floripa 2017 - Criando Microservices Reativos com Java
TDC Floripa 2017 - Criando Microservices Reativos com JavaRodrigo Cândido da Silva
 

Tendances (20)

Workshop Microservices - Microservices com Spring Cloud e Netflix OSS
Workshop Microservices - Microservices com Spring Cloud e Netflix OSSWorkshop Microservices - Microservices com Spring Cloud e Netflix OSS
Workshop Microservices - Microservices com Spring Cloud e Netflix OSS
 
Introdução ao docker
Introdução ao dockerIntrodução ao docker
Introdução ao docker
 
Integração Contínua
Integração ContínuaIntegração Contínua
Integração Contínua
 
Vitor Hugo Bastos Cardoso apresenta voando alto com WordPress: um guia prátic...
Vitor Hugo Bastos Cardoso apresenta voando alto com WordPress: um guia prátic...Vitor Hugo Bastos Cardoso apresenta voando alto com WordPress: um guia prátic...
Vitor Hugo Bastos Cardoso apresenta voando alto com WordPress: um guia prátic...
 
DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com 100% ...
DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com 100% ...DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com 100% ...
DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com 100% ...
 
Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...
Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...
Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...
 
DevOps: desenvolvedores e sysadmins cooperando na prática
DevOps: desenvolvedores e sysadmins cooperando na práticaDevOps: desenvolvedores e sysadmins cooperando na prática
DevOps: desenvolvedores e sysadmins cooperando na prática
 
Construindo aplicações escaláveis com ASP.NET Core, Docker e o Microsoft Azur...
Construindo aplicações escaláveis com ASP.NET Core, Docker e o Microsoft Azur...Construindo aplicações escaláveis com ASP.NET Core, Docker e o Microsoft Azur...
Construindo aplicações escaláveis com ASP.NET Core, Docker e o Microsoft Azur...
 
Conhecendo o AKS, o azure container services com kubernetes
Conhecendo o AKS, o azure container services com kubernetesConhecendo o AKS, o azure container services com kubernetes
Conhecendo o AKS, o azure container services com kubernetes
 
Node.js e Express
Node.js e ExpressNode.js e Express
Node.js e Express
 
Maven 3, Sonar e Hudson
Maven 3, Sonar e HudsonMaven 3, Sonar e Hudson
Maven 3, Sonar e Hudson
 
CWI Workshop 2016 - Cloud
CWI Workshop 2016 - CloudCWI Workshop 2016 - Cloud
CWI Workshop 2016 - Cloud
 
Quasar Framework - Uma visão Geral
Quasar Framework - Uma visão GeralQuasar Framework - Uma visão Geral
Quasar Framework - Uma visão Geral
 
Bibliotecas de interface rica no jsf 2
Bibliotecas de interface rica no jsf 2Bibliotecas de interface rica no jsf 2
Bibliotecas de interface rica no jsf 2
 
AMP Roadshow SP 2019 - Web Apps Modernas
AMP Roadshow SP 2019 - Web Apps ModernasAMP Roadshow SP 2019 - Web Apps Modernas
AMP Roadshow SP 2019 - Web Apps Modernas
 
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!
 
JBoss Fuse Service Works - O Fuse além da integração - PT-BR
JBoss Fuse Service Works - O Fuse além da integração - PT-BRJBoss Fuse Service Works - O Fuse além da integração - PT-BR
JBoss Fuse Service Works - O Fuse além da integração - PT-BR
 
Quasar Framework - Front end de alto desempenho
Quasar Framework - Front end de alto desempenhoQuasar Framework - Front end de alto desempenho
Quasar Framework - Front end de alto desempenho
 
QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...
QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...
QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...
 
TDC Floripa 2017 - Criando Microservices Reativos com Java
TDC Floripa 2017 - Criando Microservices Reativos com JavaTDC Floripa 2017 - Criando Microservices Reativos com Java
TDC Floripa 2017 - Criando Microservices Reativos com Java
 

En vedette (18)

2016.04.07-08 Колосова Светлана (презентация спикера Конференции)
2016.04.07-08 Колосова Светлана (презентация спикера Конференции)2016.04.07-08 Колосова Светлана (презентация спикера Конференции)
2016.04.07-08 Колосова Светлана (презентация спикера Конференции)
 
Chandika Thushara
Chandika ThusharaChandika Thushara
Chandika Thushara
 
Tap espectaculos cast ang
Tap espectaculos cast angTap espectaculos cast ang
Tap espectaculos cast ang
 
fasteners-stock
fasteners-stockfasteners-stock
fasteners-stock
 
Session-2
Session-2Session-2
Session-2
 
Como saber si un cuaderno es reciclado
Como saber si un cuaderno es recicladoComo saber si un cuaderno es reciclado
Como saber si un cuaderno es reciclado
 
Ruff Hewn Lookbook
Ruff Hewn LookbookRuff Hewn Lookbook
Ruff Hewn Lookbook
 
Creating groups in oracle
Creating groups in oracleCreating groups in oracle
Creating groups in oracle
 
02 semana 2011 el impuesto a la renta (2)
02 semana 2011 el impuesto a la renta (2)02 semana 2011 el impuesto a la renta (2)
02 semana 2011 el impuesto a la renta (2)
 
Loadrunner
LoadrunnerLoadrunner
Loadrunner
 
FOTOS CURIOSAS
FOTOS CURIOSASFOTOS CURIOSAS
FOTOS CURIOSAS
 
Bonzer Bar Book Vol2 Low Res
Bonzer Bar Book Vol2 Low ResBonzer Bar Book Vol2 Low Res
Bonzer Bar Book Vol2 Low Res
 
Ambiance Technology Introduction Letter
Ambiance Technology Introduction LetterAmbiance Technology Introduction Letter
Ambiance Technology Introduction Letter
 
M ASH reference Genius
M ASH reference GeniusM ASH reference Genius
M ASH reference Genius
 
Tour de Magie Nicolas Sarkozy
Tour de Magie Nicolas SarkozyTour de Magie Nicolas Sarkozy
Tour de Magie Nicolas Sarkozy
 
Functions
FunctionsFunctions
Functions
 
Development template (infant & toddler)
Development template (infant & toddler)Development template (infant & toddler)
Development template (infant & toddler)
 
tipos computadores
tipos computadorestipos computadores
tipos computadores
 

Similaire à TDC2011: Java EE 6 & Azure

Acelerando a entrega de software com as ferramentas de desenvolvimento da AWS
Acelerando a entrega de software com as ferramentas de desenvolvimento da AWSAcelerando a entrega de software com as ferramentas de desenvolvimento da AWS
Acelerando a entrega de software com as ferramentas de desenvolvimento da AWSAmazon Web Services LATAM
 
Contêineres e VMs no mundo dos E-commerces (Devcommerce2016)
Contêineres e VMs no mundo dos E-commerces (Devcommerce2016)Contêineres e VMs no mundo dos E-commerces (Devcommerce2016)
Contêineres e VMs no mundo dos E-commerces (Devcommerce2016)Wellington Silva
 
DevOps na AWS: Construindo Sistemas para Entregas Rápidas
DevOps na AWS: Construindo Sistemas para Entregas RápidasDevOps na AWS: Construindo Sistemas para Entregas Rápidas
DevOps na AWS: Construindo Sistemas para Entregas RápidasAmazon Web Services LATAM
 
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorPlay Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorAllyson Barros
 
ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014Giovanni Bassi
 
Automatizando tudo no mundo mobile com fastlane
Automatizando tudo no mundo mobile com fastlaneAutomatizando tudo no mundo mobile com fastlane
Automatizando tudo no mundo mobile com fastlaneakamud
 
DevOps na AWS: Construindo Sistemas para Entregas Rápidas - DEV301 - Sao Pau...
DevOps na AWS: Construindo Sistemas para Entregas Rápidas -  DEV301 - Sao Pau...DevOps na AWS: Construindo Sistemas para Entregas Rápidas -  DEV301 - Sao Pau...
DevOps na AWS: Construindo Sistemas para Entregas Rápidas - DEV301 - Sao Pau...Amazon Web Services
 
Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...
Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...
Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...Renato Groff
 
Terraform + Kops + Kubernetes na AWS
Terraform + Kops + Kubernetes na AWSTerraform + Kops + Kubernetes na AWS
Terraform + Kops + Kubernetes na AWSLeandro Freitas
 
Containers com docker #CPRecife4
Containers com docker #CPRecife4Containers com docker #CPRecife4
Containers com docker #CPRecife4David Ruiz
 
Vagrant - ambiente de desenvolvimento virtualizado
Vagrant - ambiente de desenvolvimento virtualizadoVagrant - ambiente de desenvolvimento virtualizado
Vagrant - ambiente de desenvolvimento virtualizadoVinícius Krolow
 
Write once, run "everywhere"
Write once, run "everywhere"Write once, run "everywhere"
Write once, run "everywhere"Stefan Horochovec
 
Java e uma visão sobre PaaS
Java e uma visão sobre PaaSJava e uma visão sobre PaaS
Java e uma visão sobre PaaSEder Magalhães
 
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
 
Azure Functions e Java: Do Desenvolvimento a Produção
Azure Functions e Java: Do Desenvolvimento a ProduçãoAzure Functions e Java: Do Desenvolvimento a Produção
Azure Functions e Java: Do Desenvolvimento a Produçãothomasdacosta
 

Similaire à TDC2011: Java EE 6 & Azure (20)

Acelerando a entrega de software com as ferramentas de desenvolvimento da AWS
Acelerando a entrega de software com as ferramentas de desenvolvimento da AWSAcelerando a entrega de software com as ferramentas de desenvolvimento da AWS
Acelerando a entrega de software com as ferramentas de desenvolvimento da AWS
 
De 0 a DevOps
De 0 a DevOpsDe 0 a DevOps
De 0 a DevOps
 
Continuous Deployment e DevOps na Nuvem
Continuous Deployment e DevOps na NuvemContinuous Deployment e DevOps na Nuvem
Continuous Deployment e DevOps na Nuvem
 
Contêineres e VMs no mundo dos E-commerces (Devcommerce2016)
Contêineres e VMs no mundo dos E-commerces (Devcommerce2016)Contêineres e VMs no mundo dos E-commerces (Devcommerce2016)
Contêineres e VMs no mundo dos E-commerces (Devcommerce2016)
 
DevOps na AWS: Construindo Sistemas para Entregas Rápidas
DevOps na AWS: Construindo Sistemas para Entregas RápidasDevOps na AWS: Construindo Sistemas para Entregas Rápidas
DevOps na AWS: Construindo Sistemas para Entregas Rápidas
 
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorPlay Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
 
ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014
 
Automatizando tudo no mundo mobile com fastlane
Automatizando tudo no mundo mobile com fastlaneAutomatizando tudo no mundo mobile com fastlane
Automatizando tudo no mundo mobile com fastlane
 
DevOps na AWS: Construindo Sistemas para Entregas Rápidas - DEV301 - Sao Pau...
DevOps na AWS: Construindo Sistemas para Entregas Rápidas -  DEV301 - Sao Pau...DevOps na AWS: Construindo Sistemas para Entregas Rápidas -  DEV301 - Sao Pau...
DevOps na AWS: Construindo Sistemas para Entregas Rápidas - DEV301 - Sao Pau...
 
Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...
Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...
Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...
 
Terraform + Kops + Kubernetes na AWS
Terraform + Kops + Kubernetes na AWSTerraform + Kops + Kubernetes na AWS
Terraform + Kops + Kubernetes na AWS
 
Containers com docker #CPRecife4
Containers com docker #CPRecife4Containers com docker #CPRecife4
Containers com docker #CPRecife4
 
Vagrant - ambiente de desenvolvimento virtualizado
Vagrant - ambiente de desenvolvimento virtualizadoVagrant - ambiente de desenvolvimento virtualizado
Vagrant - ambiente de desenvolvimento virtualizado
 
Docker para devs .NET
Docker para devs .NETDocker para devs .NET
Docker para devs .NET
 
5. rodando containers docker na aws
5. rodando containers docker na aws5. rodando containers docker na aws
5. rodando containers docker na aws
 
Write once, run "everywhere"
Write once, run "everywhere"Write once, run "everywhere"
Write once, run "everywhere"
 
Java e uma visão sobre PaaS
Java e uma visão sobre PaaSJava e uma visão sobre PaaS
Java e uma visão sobre PaaS
 
Docker.io:
Docker.io: Docker.io:
Docker.io:
 
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...
 
Azure Functions e Java: Do Desenvolvimento a Produção
Azure Functions e Java: Do Desenvolvimento a ProduçãoAzure Functions e Java: Do Desenvolvimento a Produção
Azure Functions e Java: Do Desenvolvimento a Produção
 

Plus de Dr. Spock

Improving Batch-Process Testing Techniques with a Domain-Specific Language
Improving Batch-Process Testing Techniques with a Domain-Specific LanguageImproving Batch-Process Testing Techniques with a Domain-Specific Language
Improving Batch-Process Testing Techniques with a Domain-Specific LanguageDr. Spock
 
Avoiding Java EE Application Design Traps to Achieve Effective Use of Cloud C...
Avoiding Java EE Application Design Traps to Achieve Effective Use of Cloud C...Avoiding Java EE Application Design Traps to Achieve Effective Use of Cloud C...
Avoiding Java EE Application Design Traps to Achieve Effective Use of Cloud C...Dr. Spock
 
Evitando Armadilhas no Projeto de Aplicações Java EE para uso eficaz na nuvem
Evitando Armadilhas no Projeto de Aplicações Java EE para uso eficaz na nuvemEvitando Armadilhas no Projeto de Aplicações Java EE para uso eficaz na nuvem
Evitando Armadilhas no Projeto de Aplicações Java EE para uso eficaz na nuvemDr. Spock
 
Novidades do JSF: Um tour completo no JSF 2.2
Novidades do JSF: Um tour completo no JSF 2.2Novidades do JSF: Um tour completo no JSF 2.2
Novidades do JSF: Um tour completo no JSF 2.2Dr. Spock
 
Workshop de Introdução ao ScrumToys
Workshop de Introdução ao ScrumToysWorkshop de Introdução ao ScrumToys
Workshop de Introdução ao ScrumToysDr. Spock
 
TDC2012: Usando os recursos de extensibilidade da API de CDI do Java EE 6
TDC2012: Usando os recursos de extensibilidade da API de CDI do Java EE 6TDC2012: Usando os recursos de extensibilidade da API de CDI do Java EE 6
TDC2012: Usando os recursos de extensibilidade da API de CDI do Java EE 6Dr. Spock
 
TDC2012: Explorando os conceitos básicos da API de CDI do Java EE 6
TDC2012: Explorando os conceitos básicos da API de CDI do Java EE 6TDC2012: Explorando os conceitos básicos da API de CDI do Java EE 6
TDC2012: Explorando os conceitos básicos da API de CDI do Java EE 6Dr. Spock
 
TDC2011: Spring Mobile
TDC2011: Spring MobileTDC2011: Spring Mobile
TDC2011: Spring MobileDr. Spock
 
TDC2011: Spring, uma plataforma enterprise, social, móvel e nas nuvens
TDC2011: Spring, uma plataforma enterprise, social, móvel e nas nuvensTDC2011: Spring, uma plataforma enterprise, social, móvel e nas nuvens
TDC2011: Spring, uma plataforma enterprise, social, móvel e nas nuvensDr. Spock
 
TDC2011: Arquitetura de Software Enterprise
TDC2011: Arquitetura de Software EnterpriseTDC2011: Arquitetura de Software Enterprise
TDC2011: Arquitetura de Software EnterpriseDr. Spock
 
Spring Framework no desenvolvimento móvel
Spring Framework no desenvolvimento móvelSpring Framework no desenvolvimento móvel
Spring Framework no desenvolvimento móvelDr. Spock
 
Desafios no deploy de aplicações Java EE 6 no Microsoft Azure
Desafios no deploy de aplicações Java EE 6 no Microsoft AzureDesafios no deploy de aplicações Java EE 6 no Microsoft Azure
Desafios no deploy de aplicações Java EE 6 no Microsoft AzureDr. Spock
 
Performance Tips and Tricks: Java EE, Java Persistence API and JavaServer Faces
Performance Tips and Tricks: Java EE, Java Persistence API and JavaServer FacesPerformance Tips and Tricks: Java EE, Java Persistence API and JavaServer Faces
Performance Tips and Tricks: Java EE, Java Persistence API and JavaServer FacesDr. Spock
 
Dicas e truques sobre performance em JavaEE, JPA e JSF
Dicas e truques sobre performance em JavaEE, JPA e JSFDicas e truques sobre performance em JavaEE, JPA e JSF
Dicas e truques sobre performance em JavaEE, JPA e JSFDr. Spock
 
Computação Física com Arduino, Program-ME e Java
Computação Física com Arduino, Program-ME e JavaComputação Física com Arduino, Program-ME e Java
Computação Física com Arduino, Program-ME e JavaDr. Spock
 
Spring 3: Uma Plataforma além do Framework
Spring 3: Uma Plataforma além do FrameworkSpring 3: Uma Plataforma além do Framework
Spring 3: Uma Plataforma além do FrameworkDr. Spock
 
Produtividade com Spring Roo no Google App Engine
Produtividade com Spring Roo no Google App EngineProdutividade com Spring Roo no Google App Engine
Produtividade com Spring Roo no Google App EngineDr. Spock
 
Criando uma Aplicação Web com Spring Roo em 5 minutos!
Criando uma Aplicação Web com Spring Roo em 5 minutos!Criando uma Aplicação Web com Spring Roo em 5 minutos!
Criando uma Aplicação Web com Spring Roo em 5 minutos!Dr. Spock
 
Spring Framework 3: Um 'brainstorm' de novas funcionalidades
Spring Framework 3: Um 'brainstorm' de novas funcionalidadesSpring Framework 3: Um 'brainstorm' de novas funcionalidades
Spring Framework 3: Um 'brainstorm' de novas funcionalidadesDr. Spock
 
Dicas e Truques sobre Performance em Java EE, JPA e JSF
Dicas e Truques sobre Performance em Java EE, JPA e JSFDicas e Truques sobre Performance em Java EE, JPA e JSF
Dicas e Truques sobre Performance em Java EE, JPA e JSFDr. Spock
 

Plus de Dr. Spock (20)

Improving Batch-Process Testing Techniques with a Domain-Specific Language
Improving Batch-Process Testing Techniques with a Domain-Specific LanguageImproving Batch-Process Testing Techniques with a Domain-Specific Language
Improving Batch-Process Testing Techniques with a Domain-Specific Language
 
Avoiding Java EE Application Design Traps to Achieve Effective Use of Cloud C...
Avoiding Java EE Application Design Traps to Achieve Effective Use of Cloud C...Avoiding Java EE Application Design Traps to Achieve Effective Use of Cloud C...
Avoiding Java EE Application Design Traps to Achieve Effective Use of Cloud C...
 
Evitando Armadilhas no Projeto de Aplicações Java EE para uso eficaz na nuvem
Evitando Armadilhas no Projeto de Aplicações Java EE para uso eficaz na nuvemEvitando Armadilhas no Projeto de Aplicações Java EE para uso eficaz na nuvem
Evitando Armadilhas no Projeto de Aplicações Java EE para uso eficaz na nuvem
 
Novidades do JSF: Um tour completo no JSF 2.2
Novidades do JSF: Um tour completo no JSF 2.2Novidades do JSF: Um tour completo no JSF 2.2
Novidades do JSF: Um tour completo no JSF 2.2
 
Workshop de Introdução ao ScrumToys
Workshop de Introdução ao ScrumToysWorkshop de Introdução ao ScrumToys
Workshop de Introdução ao ScrumToys
 
TDC2012: Usando os recursos de extensibilidade da API de CDI do Java EE 6
TDC2012: Usando os recursos de extensibilidade da API de CDI do Java EE 6TDC2012: Usando os recursos de extensibilidade da API de CDI do Java EE 6
TDC2012: Usando os recursos de extensibilidade da API de CDI do Java EE 6
 
TDC2012: Explorando os conceitos básicos da API de CDI do Java EE 6
TDC2012: Explorando os conceitos básicos da API de CDI do Java EE 6TDC2012: Explorando os conceitos básicos da API de CDI do Java EE 6
TDC2012: Explorando os conceitos básicos da API de CDI do Java EE 6
 
TDC2011: Spring Mobile
TDC2011: Spring MobileTDC2011: Spring Mobile
TDC2011: Spring Mobile
 
TDC2011: Spring, uma plataforma enterprise, social, móvel e nas nuvens
TDC2011: Spring, uma plataforma enterprise, social, móvel e nas nuvensTDC2011: Spring, uma plataforma enterprise, social, móvel e nas nuvens
TDC2011: Spring, uma plataforma enterprise, social, móvel e nas nuvens
 
TDC2011: Arquitetura de Software Enterprise
TDC2011: Arquitetura de Software EnterpriseTDC2011: Arquitetura de Software Enterprise
TDC2011: Arquitetura de Software Enterprise
 
Spring Framework no desenvolvimento móvel
Spring Framework no desenvolvimento móvelSpring Framework no desenvolvimento móvel
Spring Framework no desenvolvimento móvel
 
Desafios no deploy de aplicações Java EE 6 no Microsoft Azure
Desafios no deploy de aplicações Java EE 6 no Microsoft AzureDesafios no deploy de aplicações Java EE 6 no Microsoft Azure
Desafios no deploy de aplicações Java EE 6 no Microsoft Azure
 
Performance Tips and Tricks: Java EE, Java Persistence API and JavaServer Faces
Performance Tips and Tricks: Java EE, Java Persistence API and JavaServer FacesPerformance Tips and Tricks: Java EE, Java Persistence API and JavaServer Faces
Performance Tips and Tricks: Java EE, Java Persistence API and JavaServer Faces
 
Dicas e truques sobre performance em JavaEE, JPA e JSF
Dicas e truques sobre performance em JavaEE, JPA e JSFDicas e truques sobre performance em JavaEE, JPA e JSF
Dicas e truques sobre performance em JavaEE, JPA e JSF
 
Computação Física com Arduino, Program-ME e Java
Computação Física com Arduino, Program-ME e JavaComputação Física com Arduino, Program-ME e Java
Computação Física com Arduino, Program-ME e Java
 
Spring 3: Uma Plataforma além do Framework
Spring 3: Uma Plataforma além do FrameworkSpring 3: Uma Plataforma além do Framework
Spring 3: Uma Plataforma além do Framework
 
Produtividade com Spring Roo no Google App Engine
Produtividade com Spring Roo no Google App EngineProdutividade com Spring Roo no Google App Engine
Produtividade com Spring Roo no Google App Engine
 
Criando uma Aplicação Web com Spring Roo em 5 minutos!
Criando uma Aplicação Web com Spring Roo em 5 minutos!Criando uma Aplicação Web com Spring Roo em 5 minutos!
Criando uma Aplicação Web com Spring Roo em 5 minutos!
 
Spring Framework 3: Um 'brainstorm' de novas funcionalidades
Spring Framework 3: Um 'brainstorm' de novas funcionalidadesSpring Framework 3: Um 'brainstorm' de novas funcionalidades
Spring Framework 3: Um 'brainstorm' de novas funcionalidades
 
Dicas e Truques sobre Performance em Java EE, JPA e JSF
Dicas e Truques sobre Performance em Java EE, JPA e JSFDicas e Truques sobre Performance em Java EE, JPA e JSF
Dicas e Truques sobre Performance em Java EE, JPA e JSF
 

TDC2011: Java EE 6 & Azure

  • 1. Java EE 6 & Azure Desafios no deploy de aplicações Java EE no cloud da Microsoft Dr. Spock @drspockbr
  • 2. @bout me! • Bacharel e especialista em Física pela UFV e Unicamp; • Desenvolvedor de aplicações Web desde 96 e Java desde 99; • Palestrante em eventos nacionais e internacionais; • Integrante da equipe de P&D da Softplan em Florianópolis;
  • 3. @bout me! • Bacharel e especialista em Física pela UFV e Unicamp; • Desenvolvedor de aplicações Web desde 96 e Java desde 99; • Palestrante em eventos nacionais e internacionais; • Integrante da equipe de P&D da Softplan em Florianópolis;
  • 5.
  • 7. Agenda • Introdução e conceitos;
  • 8. Agenda • Introdução e conceitos; • Desafios no processo para deploy de Java EE no Azure;
  • 9. Agenda • Introdução e conceitos; • Desafios no processo para deploy de Java EE no Azure; • Elasticidade com Java EE e Azure;
  • 10. Introdução & Conceitos
  • 12.
  • 13. Usuário Final Desenvolvedores Administradores de rede
  • 14.
  • 15.
  • 16. Share Point Online, Office Live, CRM Services Windows Server, IIS, SQL Compute, storage, network, access control
  • 17.
  • 18. Desafios no deploy de Java EE no Azure
  • 19. Desenv. Packaging Preparação Run Upload
  • 20. Preparação • Windows Azure SDK; • IIS 7 + Hotfixes; • Windows Starter Kit for Java => Ant ou Eclipse • MS Visual Web Developer 2010 Express
  • 21. Preparação • Windows Azure SDK; • IIS 7 + Hotfixes; • Windows Starter Kit for Java => Ant ou Eclipse • MS Visual Web Developer 2010 Express • Desafio 1: “Escolha”
  • 22. Desenv. Packaging Preparação Run Upload
  • 23. Desenv. • A parte fácil => WAR ou EAR • Arquivos no storage • Criação de scripts de inicialização => .bat, .cmd ou .ps • VBScript ou C# => .NET DLLs
  • 24. Desenv. • A parte fácil => WAR ou EAR • Arquivos no storage • Criação de scripts de inicialização => .bat, .cmd ou .ps • VBScript ou C# => .NET DLLs • Desafio 2: “Códigos estranhos”
  • 26. Desenv. Packaging Preparação Run Upload
  • 27. Packaging • Gerar o arquivo Cloud Service Package (.cspkg) • Task Ant requer DLL do Windows Azure SDK • Gerar o Cloud Service Definition (XML .csdef com tipo VM, ativação RDP, criptografia, etc)
  • 28. Packaging • Gerar o arquivo Cloud Service Package (.cspkg) • Task Ant requer DLL do Windows Azure SDK • Gerar o Cloud Service Definition (XML .csdef com tipo VM, ativação RDP, criptografia, etc) • Desafio 3: “Configurações XML”
  • 30. Desenv. Packaging Preparação Run Upload
  • 31. Upload • Upload .cspkg e .csdef via Portal • Portal requer Silverlight • Storage acessível por outra ferramenta • Upload via MS Visual Developer 2010 Express
  • 32. Upload • Upload .cspkg e .csdef via Portal • Portal requer Silverlight • Storage acessível por outra ferramenta • Upload via MS Visual Developer 2010 Express • Desafio 4: “Tempo de deploy”
  • 34. Desenv. Packaging Preparação Run Upload
  • 35. Run • Na inicialização da VM o script é executado • O script pode falhar em algum ponto • Portas mapeadas não tem efeito quando ocorre erro • Recomendado habilitar RDP
  • 36. Run • Na inicialização da VM o script é executado • O script pode falhar em algum ponto • Portas mapeadas não tem efeito quando ocorre erro • Recomendado habilitar RDP • Desafio 5: “Debug”
  • 37. Run
  • 38. Run
  • 39. Desenv. Packaging Preparação Run Upload
  • 40. Elasticidade com Java EE e Azure
  • 49. 1000 usuários Load Balancer Virtual Machine 100 usuários por VM
  • 50. 500 usuários Load Balancer Virtual Machine 50 usuários por VM
  • 51. 100 usuários Load Balancer Virtual Machine 10 usuários por VM
  • 52. 100 usuários Load Balancer Virtual Machine 100 usuários numa VM
  • 53. 100 usuários Load Balancer Virtual Machine 100 usuários numa VM
  • 54. Apache mod_cluster JBossAS + mod_cluster
  • 55. Uma possível solução! • Windows Azure Connect • Virtual Network + Activation Token • 1 VM com Apache 64bits + mod_cluster • n VMs com JBossAS 6 + mod_cluster • Datagrid com Infinispan
  • 56. Referências • Windows Azure http://www.microsoft.com/windowsazure/ • Interoperability Bridges http://www.interoperabilitybridges.com/ • Windows Azure SDK for Java http://www.windowsazure4j.org/ • Windows Azure Tools for Eclipse http://www.windowsazure4e.org/ • JBoss Community - mod_cluster http://www.jboss.org/mod_cluster
  • 57. Referências • Mani Doraisany’s Blog - Statelessness vs Elasticity http://manidoraisamy.blogspot.com/2010/07/why-does-elastic-nature-of-cloud-impose.html • Glassfish no Azure - Arun Gupta http://blogs.oracle.com/arungupta/entry/ttod_155_glassfish_in_azure
  • 58. Obrigado! • Contato: Dr. Spock spock@springbrasil.com.br • Twitter: @drspockbr • About me: http://about.me/drspockbr