SlideShare a Scribd company logo
1 of 57
Download to read offline
Título da EM NUVEM
     COMPUTAÇÃO
     Apresentação
     COM PHP USANDO
     ZEND FRAMEWORK




     Flávio Gomes da Silva Lisboa

Palestrante:                        00/00/0000
Nossa Agenda

►Utilização de PHP no mundo
►PHP e a nuvem
►Zend Framework
►Estudo de caso: Amazon
►Serviço de armazenamento S3
►Usando máquinas virtuais da EC2
►Filas de mensagens com SQS
►Perspectivas
Utilização do PHP no mundo


O que é PHP?
 ►Linguagem nascida e pensada para aplicações Web

 ►Multiparadigma (estruturada, orientada a objetos e com
 suporte para orientação a aspectos)

 ►Suporte a inúmeras de bibliotecas de código
 Manipulação de formatos de áudio, autenticação, calendário e
 eventos, compressão de arquivos, cartão de crédito,
 criptografia, banco de dados, sistema de arquivos, linguagem
 humana, e-mail, computação científica, controle de processo,
 mecanismo de busca, processamento de texto, web services,
 XML, ...

 ►Integração com outras linguagens e plataformas
 Java, Perl, Python, ASP, COM, .NET




                           Computação em Nuvem com PHP usando Zend Framework
Utilização do PHP no mundo


O que é PHP?

 ►Software livre sem restrições de uso comercial
  A licença não é contaminante

 ►Objetiva e fácil de aprender
  Vasta documentação

 ►Multi-plataforma e portável

 ►Disponibilidade de hospedagem de baixo custo
  E ainda é possível hospedar milhares de clientes por
 servidor

 ►Muitas aplicações prontas para todos fins
  Open Source e comerciais: CMS, fóruns, web mail,
 SGBD, monitoração, gerenciamento de projetos...



                            Computação em Nuvem com PHP usando Zend Framework
Utilização do PHP no mundo


Como o PHP é utilizado


 ►Criação de scripts

 ►Aplicações Web (incluindo as acessíveis por celular)

 ►Aplicações Desktop (PHP-GTK)

 ►Aplicações Android NOVIDADE!




                           Computação em Nuvem com PHP usando Zend Framework
Utilização do PHP no mundo


+ 1/3 das aplicações da Internet usam PHP




                        Computação em Nuvem com PHP usando Zend Framework
Utilização do PHP no mundo


Aplicações corporativas em PHP estão crescendo...

                                              Part-Time        Independent          Corporate
                                              Developers       Software
                                              And Hobbyists    Vendors              IT
                                                                                    Developers
       Programmers (Millions)




                                2006   2007       2008        2009           2010     2011       2012   2013
Source: Gartner (December 2007)




                                                       Computação em Nuvem com PHP usando Zend Framework
PHP e a nuvem




Expondo serviços!




     Computação em Nuvem com PHP usando Zend Framework
PHP e a nuvem




Consumindo
 serviços!




   Computação em Nuvem com PHP usando Zend Framework
Zend Framework




                                          Data
                                         Database

  MVC                                      XML
Controller                                Search
  View                                     PDF
              Core
 Security
             Cache                                    i18n
                          Web Services
    Acl      Config                        Locale            Date
    Auth                     Feed
               Log                        Translate      Calendar
   Filter                    Client
             Registry                     Measure        Currency
  Validate                   Server
             Session
                            Services


                 Computação em Nuvem com PHP usando Zend Framework
Zend Framework




Web Services
   Feed
   Client
   Server
  Services




               REST       SOAP           XML-RPC



                 Computação em Nuvem com PHP usando Zend Framework
Zend Framework




Web Services
   Feed
   Client
   Server
  Services




               Computação em Nuvem com PHP usando Zend Framework
Estudos de caso: Amazon




  Computação em Nuvem com PHP usando Zend Framework
Armazenamento


                                                  Como seria
                                                maravilhoso se
                                                   houvesse
                                               espaço em disco
                                                ilimitado para
                                                   usuários e
                                                 aplicativos...




O´Reilly Media All rights reserved.

                               Computação em Nuvem com PHP usando Zend Framework
Armazenamento


SONHO!




             ∞

         Computação em Nuvem com PHP usando Zend Framework
Armazenamento


REALIDADE!




              ~∞

             Computação em Nuvem com PHP usando Zend Framework
Armazenamento




 Em um mundo ideal, acessar o
   armazenamento virtual de
uma nuvem seria tão fácil quanto
  acessar um disco rígido local



           Computação em Nuvem com PHP usando Zend Framework
Armazenamento




    Porém, as APIs básicas da
      maioria dos serviços de
    armazenamento em nuvem
obrigam os programadores a pensar
sobre detalhes de configuração em
 vez de somente trabalhar com os
               dados


           Computação em Nuvem com PHP usando Zend Framework
Armazenamento




 O desafio para construir
aplicativos que funcionem
  na nuvem é a interface
 para os próprios serviços




       Computação em Nuvem com PHP usando Zend Framework
Armazenamento




              FATO:

A maioria dos serviços possui uma
    interface REST ou SOAP




           Computação em Nuvem com PHP usando Zend Framework
Armazenamento




             FATO:

         REST e SOAP
não são específicos de linguagem




          Computação em Nuvem com PHP usando Zend Framework
Armazenamento




            VANTAGEM:

É possível invocar um serviço REST ou
  SOAP com qualquer linguagem de
             programação



             Computação em Nuvem com PHP usando Zend Framework
Armazenamento




         DESVANTAGEM:

O programador pensa nos detalhes da
  solicitação em vez de pensar nos
        dados que está usando



            Computação em Nuvem com PHP usando Zend Framework
Armazenamento




                FATO:

  Uma abordagem de alto nível que
permita ao programador se concentrar
   nos dados e não nos detalhes
      melhora a produtividade



             Computação em Nuvem com PHP usando Zend Framework
Armazenamento




Web Services
   Feed
   Client
   Server
  Services




               REST       SOAP           XML-RPC



                 Computação em Nuvem com PHP usando Zend Framework
Armazenamento




S3 é um sistema de arquivos distribuído que
      fornece armazenagem ilimitada.

  Seu modelo de dados tem dois conceitos:
          o depósito e o objeto.



                Computação em Nuvem com PHP usando Zend Framework
Armazenamento




           OBJETO
                                    DADOS
                    OBJETO



           ∞
                                    METADADOS

DEPÓSITO

                    OBJETO
           OBJETO




                     Computação em Nuvem com PHP usando Zend Framework
Armazenamento




Web Services
   Feed
   Client
   Server
  Services




  Zend_Service_Amazon_S3
               Computação em Nuvem com PHP usando Zend Framework
Armazenamento




 Usando Zend Framework, um programador não
precisa calcular assinaturas nem precisa considerar
  códigos de resposta HTTP ou envelopes XML.

    Ele simplesmente trabalha com os dados.



                    Computação em Nuvem com PHP usando Zend Framework
Máquinas Virtuais


Servidores, servidores, servidores...




                 Computação em Nuvem com PHP usando Zend Framework
Máquinas Virtuais


                                               Meus servidores
                                               ficam ociosos
                                               por horas
                                               durante o mês...
                                               e eu tenho que
                                               gastar usando
                                               ou não...




O´Reilly Media All rights reserved.

                               Computação em Nuvem com PHP usando Zend Framework
Máquinas Virtuais


                                                      E em
                                                 determinados
                                                   momentos
                                                preciso de mais
                                                 servidores...
                                                que não usarei
                                                    depois!




O´Reilly Media All rights reserved.

                               Computação em Nuvem com PHP usando Zend Framework
Máquinas Virtuais


                                                   Como seria
                                                 maravilhoso se
                                                 fosse possível
                                                criar imagens de
                                                    máquinas
                                                    virtuais e
                                                 executá-las na
                                                    nuvem...




O´Reilly Media All rights reserved.

                               Computação em Nuvem com PHP usando Zend Framework
Máquinas Virtuais



                                                 Assim poderia
                                                   adicionar e
                                                    remover
                                                 servidores sem
                                               ficar com dor nas
                                                    costas...




O´Reilly Media All rights reserved.

                               Computação em Nuvem com PHP usando Zend Framework
Máquinas Virtuais




Computação em Nuvem com PHP usando Zend Framework
Máquinas Virtuais




Elastic Compute Cloud




       Computação em Nuvem com PHP usando Zend Framework
Máquinas Virtuais




Servers On Demand




   Computação em Nuvem com PHP usando Zend Framework
Máquinas Virtuais




Fast Food de Servidores




             Computação em Nuvem com PHP usando Zend Framework
Máquinas Virtuais




Self-service de servidores




        Computação em Nuvem com PHP usando Zend Framework
Máquinas Virtuais




   Podemos mandar
os servidores para casa!




        Computação em Nuvem com PHP usando Zend Framework
Máquinas Virtuais

                   MAS...
Como manipular as instâncias em execução, e os
  pares de chaves e grupos de segurança que
  permitem gerenciar as máquinas virtuais?

           ou trocando em miúdos...

Como ter uma interface simples de gerenciamento
          para as máquinas virtuais?



                  Computação em Nuvem com PHP usando Zend Framework
Máquinas Virtuais




Zend_Service_Amazon_Ec2




        Computação em Nuvem com PHP usando Zend Framework
Máquinas Virtuais




          InformationWeek, 16/08/2010

Novell irá oferecer o SUSE Linux Enterprise Server,
             versões 10 e 11, pelo EC2.

             O que isso quer dizer?
 O cliente contrata o uso do sistema operacional e
         paga somente pelas horas usadas.

                    Computação em Nuvem com PHP usando Zend Framework
Mensagens


Sistemas de Informação produzem mensagens

 Pra quê?
 ►Trocar dados com outra aplicação

 ►Conduzir o usuário em um workflow

 ►Informar que ocorreu um erro (ou foi lançada uma
 exceção)

 ►Enviar um indicador para um agente de monitoramento

 ►Armazenar dados para auditoria

 ►Trocar dados entre processos




                           Computação em Nuvem com PHP usando Zend Framework
Mensagens


Comunicação entre Processos


 Comunicação Assíncrona
 ►Às vezes, o remetente e o destinatário da mensagem
 não precisam interagir ao mesmo tempo.

 ►As mensagens podem ser enfileiradas e armazenadas
 até que o destinatário as processe.

 ►Isso é extremamente útil quando a probabilidade de
 desconexão não pode ser desprezada.




                           Computação em Nuvem com PHP usando Zend Framework
Mensagens


Fila de Mensagens




                    Computação em Nuvem com PHP usando Zend Framework
Mensagens


                                                   Como seria
                                                 maravilhoso se
                                                 houvesse uma
                                               infraestrutura pra
                                                     filas de
                                                mensagens que
                                                eu pudesse usar
                                                  sem ter que
                                                    manter...




O´Reilly Media All rights reserved.

                               Computação em Nuvem com PHP usando Zend Framework
Mensagens




            Simple Queue Service
fornece as funções básicas de um sistema de enfileiramento de mensagens


                             Computação em Nuvem com PHP usando Zend Framework
Mensagens

Mas como eu faço pra...
listar todas as filas de mensagens em uma conta, incluindo o número de
mensagens em cada uma?

criar uma fila de mensagens?

criar uma mensagem e a coloca em uma fila?

receber uma mensagem de uma determinada fila?

excluir uma mensagem recebida?

excluir uma fila de mensagens juntamente com as mensagens presentes
nela?


Tudo isso de modo SIMPLES?

                            Computação em Nuvem com PHP usando Zend Framework
Mensagens




Zend_Service_Amazon_Sqs




        Computação em Nuvem com PHP usando Zend Framework
Conclusão


Amo Muito Zend Framework
 Os detalhes técnicos das solicitações que são
 de fato enviadas para a Amazon ficam ocultos
 em objetos PHP.

 O uso do Zend Framework oferece um refinado
 conjunto de objetos para trabalhar com a
 computação em nuvem.




                      Computação em Nuvem com PHP usando Zend Framework
Perspectivas


Zend Framework e as nuvens

 Zend Framework possui a infraestrutura necessária para
 a construção de componentes que atuem como interface
 amigável para o consumo de serviços em nuvem.

 Provavelmente, conforme as grandes nuvens forem se
 estabelecendo, componentes Zend Framework para elas
 serão criados.

 Você pode oferecer um diferencial na sua nuvem, se já
 distribuir um componente que facilite o consumo dos
 serviços (e que não te dê trabalho).

 E lembrando que tudo na nuvem é fornecido como
 serviço, Zend Framework possui a infraestrutura para
 expor serviços com os protocolos mais utilizados.



                            Computação em Nuvem com PHP usando Zend Framework
Referências


  Esta apresentação resume os artigos de Douglas
     Tidwell, que foi extremamente gentil em
disponibilizar todo o código-fonte dos exemplos no
             developerWorks da IBM.

          Você pode encontrar os artigos aqui:
 http://www.ibm.com/developerworks/br/technology/library/os-php-cloud1

http://www.ibm.com/developerworks/br/opensource/library/artigo/os-php-cloud2

http://www.ibm.com/developerworks/br/opensource/library/os-php-cloud3



                            Computação em Nuvem com PHP usando Zend Framework
Para saber mais...




Computação em Nuvem com PHP usando Zend Framework
Para saber mais...


●   Zend Framework website http://framework.zend.com
●   Zend Developer Zone http://devzone.zend.com
●   ZFTutorials forum http://www.zftutorials.com
●   Blogs
     –   Matthew Weier O'Phinney: http://weierophinney.net/matthew
     –   Cal Evans: http://blog.calevans.com
     –   Andries Seutens: http://andries.systray.be/blog
     –   Rob Allen: http://akrabat.com
●   Zend Framework Brasil
     –   http://www.zfbrasil.com
     –   http://groups.google.com/group/zfbrasil


                                    Computação em Nuvem com PHP usando Zend Framework
Fim




Obrigado!
flavio.lisboa@serpro.gov.br




     Computação em Nuvem com PHP usando Zend Framework

More Related Content

Viewers also liked

111 Blumauer - A Five-Star Rating System for Semantic Search
111 Blumauer - A Five-Star Rating System for Semantic Search111 Blumauer - A Five-Star Rating System for Semantic Search
111 Blumauer - A Five-Star Rating System for Semantic SearchAndreas Blumauer
 
Fundamentos del Arte Tema 4 Antigüedad (III) Roma
Fundamentos del Arte Tema 4 Antigüedad (III) Roma Fundamentos del Arte Tema 4 Antigüedad (III) Roma
Fundamentos del Arte Tema 4 Antigüedad (III) Roma ANA GALVAN ROMARATE-ZABALA
 
Renovación de la atención primaria de la salud en las américas 2007
Renovación de la atención primaria de la salud en las américas 2007Renovación de la atención primaria de la salud en las américas 2007
Renovación de la atención primaria de la salud en las américas 2007UDI
 
Crisis - Restrategizate. (HD-07)
Crisis - Restrategizate. (HD-07)Crisis - Restrategizate. (HD-07)
Crisis - Restrategizate. (HD-07)Ferran Fisas
 
HD07- Crisis (Tratamiento de las crisis financieras en la empresa)
HD07- Crisis (Tratamiento de las crisis financieras en la empresa)HD07- Crisis (Tratamiento de las crisis financieras en la empresa)
HD07- Crisis (Tratamiento de las crisis financieras en la empresa)Ferran Fisas
 
Ifsp tramiteprocedimientosciviles
Ifsp tramiteprocedimientoscivilesIfsp tramiteprocedimientosciviles
Ifsp tramiteprocedimientoscivilesGina's Jewelry
 
TEORIA GENERAL DE LA PRUEBA
TEORIA GENERAL DE LA PRUEBATEORIA GENERAL DE LA PRUEBA
TEORIA GENERAL DE LA PRUEBAVladimir Platero
 
Frontera de posibilidades de producción (copia conflictiva de jhon jamer nara...
Frontera de posibilidades de producción (copia conflictiva de jhon jamer nara...Frontera de posibilidades de producción (copia conflictiva de jhon jamer nara...
Frontera de posibilidades de producción (copia conflictiva de jhon jamer nara...Daniel Garcia
 
La prueba en materia penal
La prueba en materia penalLa prueba en materia penal
La prueba en materia penalRogelio Armando
 
Portfólio italo santana do nascimento
Portfólio   italo santana do nascimentoPortfólio   italo santana do nascimento
Portfólio italo santana do nascimentoitaloflanatico
 

Viewers also liked (19)

111 Blumauer - A Five-Star Rating System for Semantic Search
111 Blumauer - A Five-Star Rating System for Semantic Search111 Blumauer - A Five-Star Rating System for Semantic Search
111 Blumauer - A Five-Star Rating System for Semantic Search
 
Fundamentos del Arte Tema 4 Antigüedad (III) Roma
Fundamentos del Arte Tema 4 Antigüedad (III) Roma Fundamentos del Arte Tema 4 Antigüedad (III) Roma
Fundamentos del Arte Tema 4 Antigüedad (III) Roma
 
Origen del Conocimiento Cientifico
Origen del Conocimiento CientificoOrigen del Conocimiento Cientifico
Origen del Conocimiento Cientifico
 
Renovación de la atención primaria de la salud en las américas 2007
Renovación de la atención primaria de la salud en las américas 2007Renovación de la atención primaria de la salud en las américas 2007
Renovación de la atención primaria de la salud en las américas 2007
 
Crisis - Restrategizate. (HD-07)
Crisis - Restrategizate. (HD-07)Crisis - Restrategizate. (HD-07)
Crisis - Restrategizate. (HD-07)
 
HD07- Crisis (Tratamiento de las crisis financieras en la empresa)
HD07- Crisis (Tratamiento de las crisis financieras en la empresa)HD07- Crisis (Tratamiento de las crisis financieras en la empresa)
HD07- Crisis (Tratamiento de las crisis financieras en la empresa)
 
CPE 07 - Documento
CPE 07 - DocumentoCPE 07 - Documento
CPE 07 - Documento
 
Propuesta
PropuestaPropuesta
Propuesta
 
Ifsp tramiteprocedimientosciviles
Ifsp tramiteprocedimientoscivilesIfsp tramiteprocedimientosciviles
Ifsp tramiteprocedimientosciviles
 
TEORIA GENERAL DE LA PRUEBA
TEORIA GENERAL DE LA PRUEBATEORIA GENERAL DE LA PRUEBA
TEORIA GENERAL DE LA PRUEBA
 
ABOUT COLOR
ABOUT COLORABOUT COLOR
ABOUT COLOR
 
Hidraulica
HidraulicaHidraulica
Hidraulica
 
Ananananaan
AnanananaanAnanananaan
Ananananaan
 
Frontera de posibilidades de producción (copia conflictiva de jhon jamer nara...
Frontera de posibilidades de producción (copia conflictiva de jhon jamer nara...Frontera de posibilidades de producción (copia conflictiva de jhon jamer nara...
Frontera de posibilidades de producción (copia conflictiva de jhon jamer nara...
 
HIDRAULICA.pdf
HIDRAULICA.pdfHIDRAULICA.pdf
HIDRAULICA.pdf
 
La prueba en materia penal
La prueba en materia penalLa prueba en materia penal
La prueba en materia penal
 
Manejo del multimetro
Manejo del multimetroManejo del multimetro
Manejo del multimetro
 
结网
结网结网
结网
 
Portfólio italo santana do nascimento
Portfólio   italo santana do nascimentoPortfólio   italo santana do nascimento
Portfólio italo santana do nascimento
 

Similar to PHP na Nuvem com Zend Framework

PHP Nas Nuvens 2.0 - Apresentando a Simple Cloud API
PHP Nas Nuvens 2.0 - Apresentando a Simple Cloud APIPHP Nas Nuvens 2.0 - Apresentando a Simple Cloud API
PHP Nas Nuvens 2.0 - Apresentando a Simple Cloud APIMarcos Bezerra
 
Code Igniter & Zend Framework Uma UniãO De Sucesso
Code Igniter & Zend Framework   Uma UniãO De SucessoCode Igniter & Zend Framework   Uma UniãO De Sucesso
Code Igniter & Zend Framework Uma UniãO De SucessoJose Wilker
 
Desenvolvendo Aplicações com Zend Framework
Desenvolvendo Aplicações com Zend FrameworkDesenvolvendo Aplicações com Zend Framework
Desenvolvendo Aplicações com Zend FrameworkDomingos Teruel
 
Introdução ao Windows Azure
Introdução ao Windows AzureIntrodução ao Windows Azure
Introdução ao Windows AzureFernando Correia
 
PHP e componentes reutilizáveis
PHP e componentes reutilizáveisPHP e componentes reutilizáveis
PHP e componentes reutilizáveiselliando dias
 
Desenvolvendo em Zend Framework: Ênfase no Zend_Db
Desenvolvendo em Zend Framework: Ênfase no Zend_DbDesenvolvendo em Zend Framework: Ênfase no Zend_Db
Desenvolvendo em Zend Framework: Ênfase no Zend_DbFlávio Lisboa
 
Vinit Cloud Computing Anhembi Morumbi
Vinit   Cloud Computing   Anhembi MorumbiVinit   Cloud Computing   Anhembi Morumbi
Vinit Cloud Computing Anhembi Morumbivinitbr
 
.NET 2015, ASP.NET 5, C# 6 e tudo mais
.NET 2015, ASP.NET 5, C# 6 e tudo mais.NET 2015, ASP.NET 5, C# 6 e tudo mais
.NET 2015, ASP.NET 5, C# 6 e tudo maisakamud
 
AAB308 - Cloud Computing Windows Azure - wcamb.pdf
AAB308 - Cloud Computing Windows Azure - wcamb.pdfAAB308 - Cloud Computing Windows Azure - wcamb.pdf
AAB308 - Cloud Computing Windows Azure - wcamb.pdfMicrosoft Brasil
 
.Net Community Summit 2018 - Visão geral do Microsoft Azure para developers ....
.Net Community Summit 2018 - Visão geral do Microsoft Azure para developers .....Net Community Summit 2018 - Visão geral do Microsoft Azure para developers ....
.Net Community Summit 2018 - Visão geral do Microsoft Azure para developers ....iMasters
 
Palestra Zend Framework FISL XI
Palestra Zend Framework FISL XIPalestra Zend Framework FISL XI
Palestra Zend Framework FISL XIFlávio Lisboa
 
Webservices e Computação em Nuvem com PHP
Webservices e Computação em Nuvem com PHPWebservices e Computação em Nuvem com PHP
Webservices e Computação em Nuvem com PHPFlávio Lisboa
 
Nuvens híbridas: Conectando aplicações locais com a nuvem na plataforma Windo...
Nuvens híbridas:Conectando aplicações locais com a nuvem na plataforma Windo...Nuvens híbridas:Conectando aplicações locais com a nuvem na plataforma Windo...
Nuvens híbridas: Conectando aplicações locais com a nuvem na plataforma Windo...Osvaldo Daibert
 
Palestra Zend Framework na Campus Party 2011
Palestra Zend Framework na Campus Party 2011Palestra Zend Framework na Campus Party 2011
Palestra Zend Framework na Campus Party 2011Flávio Lisboa
 
12b windows server-2008_r2_overview-brz - julio
12b   windows server-2008_r2_overview-brz - julio12b   windows server-2008_r2_overview-brz - julio
12b windows server-2008_r2_overview-brz - julioProf Anderson Favaro
 
Win server 2008_r2_visao_geral
Win server 2008_r2_visao_geralWin server 2008_r2_visao_geral
Win server 2008_r2_visao_geralReginaldo Santos
 
Cloud & AWS: Da teoria à prática
Cloud & AWS: Da teoria à práticaCloud & AWS: Da teoria à prática
Cloud & AWS: Da teoria à práticaRicardo Martins ☁
 

Similar to PHP na Nuvem com Zend Framework (20)

PHP Nas Nuvens 2.0 - Apresentando a Simple Cloud API
PHP Nas Nuvens 2.0 - Apresentando a Simple Cloud APIPHP Nas Nuvens 2.0 - Apresentando a Simple Cloud API
PHP Nas Nuvens 2.0 - Apresentando a Simple Cloud API
 
Code Igniter & Zend Framework Uma UniãO De Sucesso
Code Igniter & Zend Framework   Uma UniãO De SucessoCode Igniter & Zend Framework   Uma UniãO De Sucesso
Code Igniter & Zend Framework Uma UniãO De Sucesso
 
Desenvolvendo Aplicações com Zend Framework
Desenvolvendo Aplicações com Zend FrameworkDesenvolvendo Aplicações com Zend Framework
Desenvolvendo Aplicações com Zend Framework
 
Introdução ao Windows Azure
Introdução ao Windows AzureIntrodução ao Windows Azure
Introdução ao Windows Azure
 
PHP e componentes reutilizáveis
PHP e componentes reutilizáveisPHP e componentes reutilizáveis
PHP e componentes reutilizáveis
 
Desenvolvendo em Zend Framework: Ênfase no Zend_Db
Desenvolvendo em Zend Framework: Ênfase no Zend_DbDesenvolvendo em Zend Framework: Ênfase no Zend_Db
Desenvolvendo em Zend Framework: Ênfase no Zend_Db
 
Vinit Cloud Computing Anhembi Morumbi
Vinit   Cloud Computing   Anhembi MorumbiVinit   Cloud Computing   Anhembi Morumbi
Vinit Cloud Computing Anhembi Morumbi
 
.NET 2015, ASP.NET 5, C# 6 e tudo mais
.NET 2015, ASP.NET 5, C# 6 e tudo mais.NET 2015, ASP.NET 5, C# 6 e tudo mais
.NET 2015, ASP.NET 5, C# 6 e tudo mais
 
Introducao ao PHP @edgarsandi
Introducao ao PHP @edgarsandiIntroducao ao PHP @edgarsandi
Introducao ao PHP @edgarsandi
 
AAB308 - Cloud Computing Windows Azure - wcamb.pdf
AAB308 - Cloud Computing Windows Azure - wcamb.pdfAAB308 - Cloud Computing Windows Azure - wcamb.pdf
AAB308 - Cloud Computing Windows Azure - wcamb.pdf
 
.Net Community Summit 2018 - Visão geral do Microsoft Azure para developers ....
.Net Community Summit 2018 - Visão geral do Microsoft Azure para developers .....Net Community Summit 2018 - Visão geral do Microsoft Azure para developers ....
.Net Community Summit 2018 - Visão geral do Microsoft Azure para developers ....
 
Palestra Zend Framework FISL XI
Palestra Zend Framework FISL XIPalestra Zend Framework FISL XI
Palestra Zend Framework FISL XI
 
Webservices e Computação em Nuvem com PHP
Webservices e Computação em Nuvem com PHPWebservices e Computação em Nuvem com PHP
Webservices e Computação em Nuvem com PHP
 
Nuvens híbridas: Conectando aplicações locais com a nuvem na plataforma Windo...
Nuvens híbridas:Conectando aplicações locais com a nuvem na plataforma Windo...Nuvens híbridas:Conectando aplicações locais com a nuvem na plataforma Windo...
Nuvens híbridas: Conectando aplicações locais com a nuvem na plataforma Windo...
 
Palestra Zend Framework na Campus Party 2011
Palestra Zend Framework na Campus Party 2011Palestra Zend Framework na Campus Party 2011
Palestra Zend Framework na Campus Party 2011
 
12b windows server-2008_r2_overview-brz - julio
12b   windows server-2008_r2_overview-brz - julio12b   windows server-2008_r2_overview-brz - julio
12b windows server-2008_r2_overview-brz - julio
 
Win server 2008_r2_visao_geral
Win server 2008_r2_visao_geralWin server 2008_r2_visao_geral
Win server 2008_r2_visao_geral
 
Aula 1
Aula 1Aula 1
Aula 1
 
Cloud & AWS: Da teoria à prática
Cloud & AWS: Da teoria à práticaCloud & AWS: Da teoria à prática
Cloud & AWS: Da teoria à prática
 
Azure Overview
Azure OverviewAzure Overview
Azure Overview
 

More from Flávio Lisboa

Criando testes integrados de APIs com PHP
Criando testes integrados de APIs com PHPCriando testes integrados de APIs com PHP
Criando testes integrados de APIs com PHPFlávio Lisboa
 
Cooperativas de Software Livre: Uma comparação entre Brasil e Argentina
Cooperativas de Software Livre: Uma comparação entre Brasil e ArgentinaCooperativas de Software Livre: Uma comparação entre Brasil e Argentina
Cooperativas de Software Livre: Uma comparação entre Brasil e ArgentinaFlávio Lisboa
 
Aprenda a afiar suas garras com Laminas
Aprenda a afiar suas garras com LaminasAprenda a afiar suas garras com Laminas
Aprenda a afiar suas garras com LaminasFlávio Lisboa
 
Ciência e software livre: desenvolvendo com método
Ciência e software livre: desenvolvendo com métodoCiência e software livre: desenvolvendo com método
Ciência e software livre: desenvolvendo com métodoFlávio Lisboa
 
Turbinando microsserviços em PHP
Turbinando microsserviços em PHPTurbinando microsserviços em PHP
Turbinando microsserviços em PHPFlávio Lisboa
 
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
 
PHP Conference Brazil - What can we expect about framework Laminas?
PHP Conference Brazil - What can we expect about framework Laminas?PHP Conference Brazil - What can we expect about framework Laminas?
PHP Conference Brazil - What can we expect about framework Laminas?Flávio Lisboa
 
Algoritmos Genéticos em PHP - PHP Conference Brasil 2019
Algoritmos Genéticos em PHP - PHP Conference Brasil 2019Algoritmos Genéticos em PHP - PHP Conference Brasil 2019
Algoritmos Genéticos em PHP - PHP Conference Brasil 2019Flávio Lisboa
 
Criando microsserviços em PHP
Criando microsserviços em PHPCriando microsserviços em PHP
Criando microsserviços em PHPFlávio Lisboa
 
Como se tornar o pior programador PHP do mundo
Como se tornar o pior programador PHP do mundoComo se tornar o pior programador PHP do mundo
Como se tornar o pior programador PHP do mundoFlávio Lisboa
 
A demanda da santa entrega Batman: bugs e gargalos em aplicações PHP
A demanda da santa entrega Batman: bugs e gargalos em aplicações PHPA demanda da santa entrega Batman: bugs e gargalos em aplicações PHP
A demanda da santa entrega Batman: bugs e gargalos em aplicações PHPFlávio Lisboa
 
Comunicação e padrões em código aberto: quando convergente e divergente cooperam
Comunicação e padrões em código aberto: quando convergente e divergente cooperamComunicação e padrões em código aberto: quando convergente e divergente cooperam
Comunicação e padrões em código aberto: quando convergente e divergente cooperamFlávio Lisboa
 
Criação de robôs em PHP para raspagem de dados
Criação de robôs em PHP para raspagem de dadosCriação de robôs em PHP para raspagem de dados
Criação de robôs em PHP para raspagem de dadosFlávio Lisboa
 
Estudo de Caso: Utilização de PHP no Serviço Federal de Processamento de Dados
Estudo de Caso: Utilização de PHP no Serviço Federal de Processamento de DadosEstudo de Caso: Utilização de PHP no Serviço Federal de Processamento de Dados
Estudo de Caso: Utilização de PHP no Serviço Federal de Processamento de DadosFlávio Lisboa
 
Arquitetura PHP para um mundo orientado a microsserviços
Arquitetura PHP para um mundo orientado a microsserviçosArquitetura PHP para um mundo orientado a microsserviços
Arquitetura PHP para um mundo orientado a microsserviçosFlávio Lisboa
 
Semeando Liberdade: Como (e onde) o software livre inclui as pessoas
Semeando Liberdade: Como (e onde) o software livre inclui as pessoasSemeando Liberdade: Como (e onde) o software livre inclui as pessoas
Semeando Liberdade: Como (e onde) o software livre inclui as pessoasFlávio Lisboa
 
O que é programação de computadores
O que é programação de computadoresO que é programação de computadores
O que é programação de computadoresFlávio Lisboa
 
Economia em rede (comunidade)
Economia em rede (comunidade)Economia em rede (comunidade)
Economia em rede (comunidade)Flávio Lisboa
 
Aplicações Corporativas em PHP (CRM e ERP)
Aplicações Corporativas em PHP (CRM e ERP)Aplicações Corporativas em PHP (CRM e ERP)
Aplicações Corporativas em PHP (CRM e ERP)Flávio Lisboa
 

More from Flávio Lisboa (20)

Criando testes integrados de APIs com PHP
Criando testes integrados de APIs com PHPCriando testes integrados de APIs com PHP
Criando testes integrados de APIs com PHP
 
Cooperativas de Software Livre: Uma comparação entre Brasil e Argentina
Cooperativas de Software Livre: Uma comparação entre Brasil e ArgentinaCooperativas de Software Livre: Uma comparação entre Brasil e Argentina
Cooperativas de Software Livre: Uma comparação entre Brasil e Argentina
 
Aprenda a afiar suas garras com Laminas
Aprenda a afiar suas garras com LaminasAprenda a afiar suas garras com Laminas
Aprenda a afiar suas garras com Laminas
 
Ciência e software livre: desenvolvendo com método
Ciência e software livre: desenvolvendo com métodoCiência e software livre: desenvolvendo com método
Ciência e software livre: desenvolvendo com método
 
Turbinando microsserviços em PHP
Turbinando microsserviços em PHPTurbinando microsserviços em PHP
Turbinando microsserviços em PHP
 
O que esperar do framework Laminas
O que esperar do framework LaminasO que esperar do framework Laminas
O que esperar do framework Laminas
 
PHP Conference Brazil - What can we expect about framework Laminas?
PHP Conference Brazil - What can we expect about framework Laminas?PHP Conference Brazil - What can we expect about framework Laminas?
PHP Conference Brazil - What can we expect about framework Laminas?
 
Algoritmos Genéticos em PHP - PHP Conference Brasil 2019
Algoritmos Genéticos em PHP - PHP Conference Brasil 2019Algoritmos Genéticos em PHP - PHP Conference Brasil 2019
Algoritmos Genéticos em PHP - PHP Conference Brasil 2019
 
Criando microsserviços em PHP
Criando microsserviços em PHPCriando microsserviços em PHP
Criando microsserviços em PHP
 
Como se tornar o pior programador PHP do mundo
Como se tornar o pior programador PHP do mundoComo se tornar o pior programador PHP do mundo
Como se tornar o pior programador PHP do mundo
 
A demanda da santa entrega Batman: bugs e gargalos em aplicações PHP
A demanda da santa entrega Batman: bugs e gargalos em aplicações PHPA demanda da santa entrega Batman: bugs e gargalos em aplicações PHP
A demanda da santa entrega Batman: bugs e gargalos em aplicações PHP
 
Comunicação e padrões em código aberto: quando convergente e divergente cooperam
Comunicação e padrões em código aberto: quando convergente e divergente cooperamComunicação e padrões em código aberto: quando convergente e divergente cooperam
Comunicação e padrões em código aberto: quando convergente e divergente cooperam
 
Criação de robôs em PHP para raspagem de dados
Criação de robôs em PHP para raspagem de dadosCriação de robôs em PHP para raspagem de dados
Criação de robôs em PHP para raspagem de dados
 
Amanhecer esmeralda
Amanhecer esmeraldaAmanhecer esmeralda
Amanhecer esmeralda
 
Estudo de Caso: Utilização de PHP no Serviço Federal de Processamento de Dados
Estudo de Caso: Utilização de PHP no Serviço Federal de Processamento de DadosEstudo de Caso: Utilização de PHP no Serviço Federal de Processamento de Dados
Estudo de Caso: Utilização de PHP no Serviço Federal de Processamento de Dados
 
Arquitetura PHP para um mundo orientado a microsserviços
Arquitetura PHP para um mundo orientado a microsserviçosArquitetura PHP para um mundo orientado a microsserviços
Arquitetura PHP para um mundo orientado a microsserviços
 
Semeando Liberdade: Como (e onde) o software livre inclui as pessoas
Semeando Liberdade: Como (e onde) o software livre inclui as pessoasSemeando Liberdade: Como (e onde) o software livre inclui as pessoas
Semeando Liberdade: Como (e onde) o software livre inclui as pessoas
 
O que é programação de computadores
O que é programação de computadoresO que é programação de computadores
O que é programação de computadores
 
Economia em rede (comunidade)
Economia em rede (comunidade)Economia em rede (comunidade)
Economia em rede (comunidade)
 
Aplicações Corporativas em PHP (CRM e ERP)
Aplicações Corporativas em PHP (CRM e ERP)Aplicações Corporativas em PHP (CRM e ERP)
Aplicações Corporativas em PHP (CRM e ERP)
 

PHP na Nuvem com Zend Framework

  • 1.
  • 2. Título da EM NUVEM COMPUTAÇÃO Apresentação COM PHP USANDO ZEND FRAMEWORK Flávio Gomes da Silva Lisboa Palestrante: 00/00/0000
  • 3. Nossa Agenda ►Utilização de PHP no mundo ►PHP e a nuvem ►Zend Framework ►Estudo de caso: Amazon ►Serviço de armazenamento S3 ►Usando máquinas virtuais da EC2 ►Filas de mensagens com SQS ►Perspectivas
  • 4. Utilização do PHP no mundo O que é PHP? ►Linguagem nascida e pensada para aplicações Web ►Multiparadigma (estruturada, orientada a objetos e com suporte para orientação a aspectos) ►Suporte a inúmeras de bibliotecas de código Manipulação de formatos de áudio, autenticação, calendário e eventos, compressão de arquivos, cartão de crédito, criptografia, banco de dados, sistema de arquivos, linguagem humana, e-mail, computação científica, controle de processo, mecanismo de busca, processamento de texto, web services, XML, ... ►Integração com outras linguagens e plataformas Java, Perl, Python, ASP, COM, .NET Computação em Nuvem com PHP usando Zend Framework
  • 5. Utilização do PHP no mundo O que é PHP? ►Software livre sem restrições de uso comercial A licença não é contaminante ►Objetiva e fácil de aprender Vasta documentação ►Multi-plataforma e portável ►Disponibilidade de hospedagem de baixo custo E ainda é possível hospedar milhares de clientes por servidor ►Muitas aplicações prontas para todos fins Open Source e comerciais: CMS, fóruns, web mail, SGBD, monitoração, gerenciamento de projetos... Computação em Nuvem com PHP usando Zend Framework
  • 6. Utilização do PHP no mundo Como o PHP é utilizado ►Criação de scripts ►Aplicações Web (incluindo as acessíveis por celular) ►Aplicações Desktop (PHP-GTK) ►Aplicações Android NOVIDADE! Computação em Nuvem com PHP usando Zend Framework
  • 7. Utilização do PHP no mundo + 1/3 das aplicações da Internet usam PHP Computação em Nuvem com PHP usando Zend Framework
  • 8. Utilização do PHP no mundo Aplicações corporativas em PHP estão crescendo... Part-Time Independent Corporate Developers Software And Hobbyists Vendors IT Developers Programmers (Millions) 2006 2007 2008 2009 2010 2011 2012 2013 Source: Gartner (December 2007) Computação em Nuvem com PHP usando Zend Framework
  • 9. PHP e a nuvem Expondo serviços! Computação em Nuvem com PHP usando Zend Framework
  • 10. PHP e a nuvem Consumindo serviços! Computação em Nuvem com PHP usando Zend Framework
  • 11. Zend Framework Data Database MVC XML Controller Search View PDF Core Security Cache i18n Web Services Acl Config Locale Date Auth Feed Log Translate Calendar Filter Client Registry Measure Currency Validate Server Session Services Computação em Nuvem com PHP usando Zend Framework
  • 12. Zend Framework Web Services Feed Client Server Services REST SOAP XML-RPC Computação em Nuvem com PHP usando Zend Framework
  • 13. Zend Framework Web Services Feed Client Server Services Computação em Nuvem com PHP usando Zend Framework
  • 14. Estudos de caso: Amazon Computação em Nuvem com PHP usando Zend Framework
  • 15. Armazenamento Como seria maravilhoso se houvesse espaço em disco ilimitado para usuários e aplicativos... O´Reilly Media All rights reserved. Computação em Nuvem com PHP usando Zend Framework
  • 16. Armazenamento SONHO! ∞ Computação em Nuvem com PHP usando Zend Framework
  • 17. Armazenamento REALIDADE! ~∞ Computação em Nuvem com PHP usando Zend Framework
  • 18. Armazenamento Em um mundo ideal, acessar o armazenamento virtual de uma nuvem seria tão fácil quanto acessar um disco rígido local Computação em Nuvem com PHP usando Zend Framework
  • 19. Armazenamento Porém, as APIs básicas da maioria dos serviços de armazenamento em nuvem obrigam os programadores a pensar sobre detalhes de configuração em vez de somente trabalhar com os dados Computação em Nuvem com PHP usando Zend Framework
  • 20. Armazenamento O desafio para construir aplicativos que funcionem na nuvem é a interface para os próprios serviços Computação em Nuvem com PHP usando Zend Framework
  • 21. Armazenamento FATO: A maioria dos serviços possui uma interface REST ou SOAP Computação em Nuvem com PHP usando Zend Framework
  • 22. Armazenamento FATO: REST e SOAP não são específicos de linguagem Computação em Nuvem com PHP usando Zend Framework
  • 23. Armazenamento VANTAGEM: É possível invocar um serviço REST ou SOAP com qualquer linguagem de programação Computação em Nuvem com PHP usando Zend Framework
  • 24. Armazenamento DESVANTAGEM: O programador pensa nos detalhes da solicitação em vez de pensar nos dados que está usando Computação em Nuvem com PHP usando Zend Framework
  • 25. Armazenamento FATO: Uma abordagem de alto nível que permita ao programador se concentrar nos dados e não nos detalhes melhora a produtividade Computação em Nuvem com PHP usando Zend Framework
  • 26. Armazenamento Web Services Feed Client Server Services REST SOAP XML-RPC Computação em Nuvem com PHP usando Zend Framework
  • 27. Armazenamento S3 é um sistema de arquivos distribuído que fornece armazenagem ilimitada. Seu modelo de dados tem dois conceitos: o depósito e o objeto. Computação em Nuvem com PHP usando Zend Framework
  • 28. Armazenamento OBJETO DADOS OBJETO ∞ METADADOS DEPÓSITO OBJETO OBJETO Computação em Nuvem com PHP usando Zend Framework
  • 29. Armazenamento Web Services Feed Client Server Services Zend_Service_Amazon_S3 Computação em Nuvem com PHP usando Zend Framework
  • 30. Armazenamento Usando Zend Framework, um programador não precisa calcular assinaturas nem precisa considerar códigos de resposta HTTP ou envelopes XML. Ele simplesmente trabalha com os dados. Computação em Nuvem com PHP usando Zend Framework
  • 31. Máquinas Virtuais Servidores, servidores, servidores... Computação em Nuvem com PHP usando Zend Framework
  • 32. Máquinas Virtuais Meus servidores ficam ociosos por horas durante o mês... e eu tenho que gastar usando ou não... O´Reilly Media All rights reserved. Computação em Nuvem com PHP usando Zend Framework
  • 33. Máquinas Virtuais E em determinados momentos preciso de mais servidores... que não usarei depois! O´Reilly Media All rights reserved. Computação em Nuvem com PHP usando Zend Framework
  • 34. Máquinas Virtuais Como seria maravilhoso se fosse possível criar imagens de máquinas virtuais e executá-las na nuvem... O´Reilly Media All rights reserved. Computação em Nuvem com PHP usando Zend Framework
  • 35. Máquinas Virtuais Assim poderia adicionar e remover servidores sem ficar com dor nas costas... O´Reilly Media All rights reserved. Computação em Nuvem com PHP usando Zend Framework
  • 36. Máquinas Virtuais Computação em Nuvem com PHP usando Zend Framework
  • 37. Máquinas Virtuais Elastic Compute Cloud Computação em Nuvem com PHP usando Zend Framework
  • 38. Máquinas Virtuais Servers On Demand Computação em Nuvem com PHP usando Zend Framework
  • 39. Máquinas Virtuais Fast Food de Servidores Computação em Nuvem com PHP usando Zend Framework
  • 40. Máquinas Virtuais Self-service de servidores Computação em Nuvem com PHP usando Zend Framework
  • 41. Máquinas Virtuais Podemos mandar os servidores para casa! Computação em Nuvem com PHP usando Zend Framework
  • 42. Máquinas Virtuais MAS... Como manipular as instâncias em execução, e os pares de chaves e grupos de segurança que permitem gerenciar as máquinas virtuais? ou trocando em miúdos... Como ter uma interface simples de gerenciamento para as máquinas virtuais? Computação em Nuvem com PHP usando Zend Framework
  • 43. Máquinas Virtuais Zend_Service_Amazon_Ec2 Computação em Nuvem com PHP usando Zend Framework
  • 44. Máquinas Virtuais InformationWeek, 16/08/2010 Novell irá oferecer o SUSE Linux Enterprise Server, versões 10 e 11, pelo EC2. O que isso quer dizer? O cliente contrata o uso do sistema operacional e paga somente pelas horas usadas. Computação em Nuvem com PHP usando Zend Framework
  • 45. Mensagens Sistemas de Informação produzem mensagens Pra quê? ►Trocar dados com outra aplicação ►Conduzir o usuário em um workflow ►Informar que ocorreu um erro (ou foi lançada uma exceção) ►Enviar um indicador para um agente de monitoramento ►Armazenar dados para auditoria ►Trocar dados entre processos Computação em Nuvem com PHP usando Zend Framework
  • 46. Mensagens Comunicação entre Processos Comunicação Assíncrona ►Às vezes, o remetente e o destinatário da mensagem não precisam interagir ao mesmo tempo. ►As mensagens podem ser enfileiradas e armazenadas até que o destinatário as processe. ►Isso é extremamente útil quando a probabilidade de desconexão não pode ser desprezada. Computação em Nuvem com PHP usando Zend Framework
  • 47. Mensagens Fila de Mensagens Computação em Nuvem com PHP usando Zend Framework
  • 48. Mensagens Como seria maravilhoso se houvesse uma infraestrutura pra filas de mensagens que eu pudesse usar sem ter que manter... O´Reilly Media All rights reserved. Computação em Nuvem com PHP usando Zend Framework
  • 49. Mensagens Simple Queue Service fornece as funções básicas de um sistema de enfileiramento de mensagens Computação em Nuvem com PHP usando Zend Framework
  • 50. Mensagens Mas como eu faço pra... listar todas as filas de mensagens em uma conta, incluindo o número de mensagens em cada uma? criar uma fila de mensagens? criar uma mensagem e a coloca em uma fila? receber uma mensagem de uma determinada fila? excluir uma mensagem recebida? excluir uma fila de mensagens juntamente com as mensagens presentes nela? Tudo isso de modo SIMPLES? Computação em Nuvem com PHP usando Zend Framework
  • 51. Mensagens Zend_Service_Amazon_Sqs Computação em Nuvem com PHP usando Zend Framework
  • 52. Conclusão Amo Muito Zend Framework Os detalhes técnicos das solicitações que são de fato enviadas para a Amazon ficam ocultos em objetos PHP. O uso do Zend Framework oferece um refinado conjunto de objetos para trabalhar com a computação em nuvem. Computação em Nuvem com PHP usando Zend Framework
  • 53. Perspectivas Zend Framework e as nuvens Zend Framework possui a infraestrutura necessária para a construção de componentes que atuem como interface amigável para o consumo de serviços em nuvem. Provavelmente, conforme as grandes nuvens forem se estabelecendo, componentes Zend Framework para elas serão criados. Você pode oferecer um diferencial na sua nuvem, se já distribuir um componente que facilite o consumo dos serviços (e que não te dê trabalho). E lembrando que tudo na nuvem é fornecido como serviço, Zend Framework possui a infraestrutura para expor serviços com os protocolos mais utilizados. Computação em Nuvem com PHP usando Zend Framework
  • 54. Referências Esta apresentação resume os artigos de Douglas Tidwell, que foi extremamente gentil em disponibilizar todo o código-fonte dos exemplos no developerWorks da IBM. Você pode encontrar os artigos aqui: http://www.ibm.com/developerworks/br/technology/library/os-php-cloud1 http://www.ibm.com/developerworks/br/opensource/library/artigo/os-php-cloud2 http://www.ibm.com/developerworks/br/opensource/library/os-php-cloud3 Computação em Nuvem com PHP usando Zend Framework
  • 55. Para saber mais... Computação em Nuvem com PHP usando Zend Framework
  • 56. Para saber mais... ● Zend Framework website http://framework.zend.com ● Zend Developer Zone http://devzone.zend.com ● ZFTutorials forum http://www.zftutorials.com ● Blogs – Matthew Weier O'Phinney: http://weierophinney.net/matthew – Cal Evans: http://blog.calevans.com – Andries Seutens: http://andries.systray.be/blog – Rob Allen: http://akrabat.com ● Zend Framework Brasil – http://www.zfbrasil.com – http://groups.google.com/group/zfbrasil Computação em Nuvem com PHP usando Zend Framework
  • 57. Fim Obrigado! flavio.lisboa@serpro.gov.br Computação em Nuvem com PHP usando Zend Framework