UNIVERSIDADE ESTADUAL DE MARINGÁ UEM ESPECIALIZAÇÃO EM DESENVOLVIMENTO DE SISTEMAS PARA WEB ESPWEB

Tamanho: px
Começar a partir da página:

Download "UNIVERSIDADE ESTADUAL DE MARINGÁ UEM ESPECIALIZAÇÃO EM DESENVOLVIMENTO DE SISTEMAS PARA WEB ESPWEB"

Transcrição

1 UNIVERSIDADE ESTADUAL DE MARINGÁ UEM ESPECIALIZAÇÃO EM DESENVOLVIMENTO DE SISTEMAS PARA WEB ESPWEB BRUNO THEODORO DE AQUINO ORIENTADOR: MESTRE MUNIF GEBARA JÚNIOR COMPUTAÇÃO EM NUVENS COM GOOGLE APP ENGINE E JAVA MARINGÁ 2013

2 BRUNO THEODORO DE AQUINO COMPUTAÇÃO EM NUVENS COM GOOGLE APP ENGINE Trabalho submetido à Universidade Estadual de Maringá como requisito para a obtenção de título de Especialista em Desenvolvimento de Software para Web. Orientador: Prof. Mestre Munif Gebara Júnior MARINGÁ 2013

3 RESUMO With the popularization of the internet and its continuous improvement, cloud computing has grown greatly in recent years. His model is service-oriented and can be divided into: software as a service, platform as a service, infrastructure as a service and storage as a service. Several companies have set up their development platforms in the clouds, as the case of Google and Amazon, studied in this work. Also shown are the first steps of how to create an application on the Google platform using the Eclipse IDE with the Plug-in SDK, the Java language. A proposed example was created by Google and shown its development, that is persisted using JDO. Keywords: Cloud computing. Google App Engine. Amazon Web Services, AWS Elastic Beanstalk. ABSTRACT With the popularization of the Internet and its constant improvements, cloud computing has grown tremendously in recent years. His model is service-oriented and can be divided into: software as a service, platform as a service, infrastructure as a service and storage as a service. Several companies have set up their development platforms in the clouds, as the case of Google and Amazon, studied in this work. Also shows the first steps in creating an application in the Google platform using the Eclipse IDE, the plug-in SDK, the Java liguagem. It created an example proposed by Google, and shown its development, that is persisted using JDO. Key words: Cloud Computing. Google App Engine. Amazon Web Services, AWS Elastic Beanstalk.

4 Sumário 1 Introdução Objetivo Justificativa Motivação Estrutura do Trabalho Fundamentação Teórica Computação em Nuvens Características Customização Modelo de Serviço Infraestrutura como Serviço IaaS Plataforma como serviço PaaS Software como Serviço SaaS Demais serviços Modelo de Implantação Privado Pública Comunidade Hibrido Google App Engine Funcionalidades do GAE Amazon Web Services (AWS) Funcionalidades do AWS Elastic Beanstalk GAE x AWS Ambiente de Desenvolvimento Armazenamento Definição de Preços e Limites Plataforma Java Aplicação com Google App Engine Preparando o Ambiente Java Development Kit Plug-in do Google para IDE Eclipse Testando a instalação Criando o primeiro Projeto Olá Mundo Mural de Mensagens Persistência DataNucleus Access Platform Anotações JDO e POJOs Fábrica de Conexão e persistence.xml Servlet View (JSP) JDOSQL Como enviar o projeto com a IDE Eclipse Conclusão Referência bibliográfica...44 Apêndices...45 Apêndice A Classe BtajdoServlet...46

5 Apêndice B Mural.jsp...48 Apêndice C Controle de Versão com Git...50

6 Índice de figuras Figura 1: Modelo de Serviço...12 Figura 2: Modelo de Nuvem Privada...15 Figura 3: Nuvem Pública...16 Figura 4: Nuvem Comunitária...16 Figura 5: Nuvem Hibrida...17 Figura 6: Ambiente de desenvolvimento Java...18 Figura 7: Verificando instalação do Java...26 Figura 8: Adicionando o link do Plug-in...26 Figura 9: Adicionando nome e endereço do Download...27 Figura 10: Escolhendo as ferramentas...27 Figura 11: Detalhes dos recursos...28 Figura 12: Processo de instalação...28 Figura 13: Comando para Linux e MAC OS, [6]...29 Figura 14: Comando para Windows, [6]...29 Figura 15: Estrutura do Projeto...30 Figura 16: Olá Mundo...31 Figura 17: Execução do Olá Mundo...31 Figura 18: Configurações JDO...32 Figura 19: Classe com anotação JDO...33 Figura 20: Exemplo de fábrica de conexão...34 Figura 21: persistence.xml...35 Figura 22: Servlet...36 Figura 23: JSP...36 Figura 24: Exemplo de JDOSQL...37 Figura 25: Criando uma conta Google...38 Figura 26: Criando o ID do Projeto...38 Figura 27: Formulário do ID...39 Figura 28: Adicionando o ID no Projeto...39 Figura 29: Enviando o projeto...40 Figura 30: Projeto mural de mensagens...41 Figura Figura 32: Fonte: Bitbucket Figura 33: Fonte: Bitbucket Figura 34: Fonte: Bitbucket Figura Figura 36: Fonte: Bitbucket,

7 8 1 Introdução Com o avanço cada vez mais rápido da internet, ter acesso às suas informações de qualquer computador com acesso à rede, se tornou fundamental no mercado de hoje. A computação em nuvens, vem trazendo esta possibilidade, onde empresas conseguem usar a infraestrutura de terceiros, de qualquer dispositivo com acesso as nuvens. 1.1 Objetivo O objetivo deste trabalho é apresenta o Google App Engine da Google, mostrando os passos básicos para o desenvolvimento de uma aplicação simples em Java, utilizando a IDE de desenvolvimento Eclipse. Além disso, será apresentado uma comparação com os recursos do AWS Elastic Beanstalk, o serviço concorrente da Amazon. 1.2 Justificativa Com o mercado cada vez mais competitivo, ter acesso a seus sistemas e informações de qualquer lugar passou a ser fundamental. Com os serviços de computação em nuvens, empresas terceirizam suas infraestruturas de servidores, e para acessar seus arquivos e aplicativos, basta ter acesso as nuvens, ou seja, internet. Várias gigantes da internet, como a Google e Amazon, começaram a disponibilizar sua infraestrutura de computação em nuvens, e são pioneiras no ramo. Com está abordagem, diminuem os custos que as empresas teriam para bancar sua própria infraestrutura de servidores, além de outros gastos como segurança, manutenção e atualização dos equipamentos. A empresa teria recursos para focar em outros pontos estratégicos, justificando assim este trabalho. 1.3 Motivação Tanto para empresas como para usuários comuns, a computação em nuvens está cada dia mais presente, pessoas ficam conectados a nuvem o tempo todo, seja por um computador pessoal ou

8 9 smartfones, é um mercado aquecido. Empresas estão migrando seus sistemas corporativos para nuvens, e fornecendo seus serviços através dela. 1.4 Estrutura do Trabalho No capítulo 2, apresentaremos uma introdução sobre computação em nuvens, e suas características de serviços, como IaaS, PaaS e SaaS. No capítulo 3, será apresentado o Google App Engine, e também uma comparação com o serviço da Amazon. No capítulo 4, será apresentado como configurar o Eclipse para o desenvolvimento de uma aplicação com GAE, além de mostrarmos os passos para o desenvolvimento de uma aplicação simples e deploy nas nuvens. Capítulo 5, conclusão deste estudo, mostrando o que esperar da computação e nuvens e do Google App Engine, além de ser apresentado os trabalhos futuros. No Apêndice, estará presente o código fonte das principais classes do projeto, além do seu controle de versão.

9 10 2 Fundamentação Teórica Para entender melhor como funciona o Google App Engine, é necessário ter uma base de conhecimento sobre computação em nuvens. Este capítulo tem como objetivo apresentar os conceitos de computação em nuvens, e suas principais características. 2.1 Computação em Nuvens O termo computação em nuvens ou cloud computing surgiu 2006, em uma palestra de Eric Schmidt, da Google. Computação em nuvens ou clomputing, se trata de usar a infraestrutura de terceiras atrás da internet, o armazenamento, é feito com serviços que poderão ser acessados de qualquer lugar do mundo a qualquer hora, atrás do acesso remoto via internet, daí a alusão a nuvens. [4] A palavra nuvem sugere uma ideia de ambiente desconhecido, o qual podemos ver apenas seu início e fim, assim a palavra nuvem foi empregada a este novo conceito de tecnologia, pois toda a infraestrutura computacional fica a cargo de terceiros, tendo o usuário final, acesso a estes recursos e serviços. As nuvens são representadas pela internet, que é a infraestrutura de comunicação dos recursos disponibilizados de hardware, software, armazenamento, redes de telecomunicações e etc. Tudo isso é possível, graças a grande informações de usuários armazenados em grandes centros chamados de data center Com a computação em nuvens, muitos aplicativos, não precisam mais estar instalados em computadores do usuário final, nem mesmo em servidores e data centers próprio. Este conteúdo fica disponível nas nuvens, ou seja, na internet. Cabendo ao fornecedor do serviço, todas as tarefas de uma data center, como armazenamento, segurança, backups, atualizações e etc. A computação em nuvem surge da necessidade de diminuir os gastos com recursos com infraestrutura, e também da necessidade de se acessar os dados de qualquer lugar. Além disso, recursos de computação e hardware são propensos a ficarem obsoletos rapidamente. Assim a utilização de plataformas computacionais de terceiros é uma solução inteligente para os usuários lidarem com a infraestrutura de TI, já que passa essa responsabilidade para o fornecedor contratado.

10 Características A convergência de uma gama de importantes tecnologias permite à computação na nuvem prover serviços de forma transparente para o usuário, dentre outras funcionalidades e particularidades. Campos de tecnologia que são de grande relevância nesta convergência são: Hardware, com a capacidade de virtualização, Tecnologias de internet, como a Web 2.0, serviços web; Gerenciamento de Sistemas, como a computação independente(autonomic computing) e a automação de gerenciamento e manutenção de Data Center; além da computação distribuída, em especial a utility & grid computing. [1] A computação na nuvem propicia a ilusão de recursos computacionais infinitos disponíveis para o uso. Portanto, os usuários têm a expectativa de que a nuvem seja capaz de fornecer rapidamente recursos em qualquer quantidade e a qualquer momento. É esperado que os recursos adicionais possam ser providos, possivelmente de forma automática, quando ocorre o aumento da demanda e retidos, no caso da diminuição desta demanda. [1] O consumidor de serviços da computação na nuvem espera adquirir recursos computacionais de acordo com sua necessidade e de forma instantânea. Para suportar este tipo de expectativa, as nuvens devem permitir o acesso em autoatendimento (self-service) para que os usuários possam solicitar, personalizar, pagar e usar os serviços desejados sem intervenção humana. [1] Uma vez que o usuário tem a opção de requisitar e utilizar somente a quantidade de recursos e serviços que ele julgar necessário, os serviços devem ser precificados com base em um uso de baixa duração, como por exemplo, medido em horas de uso. Por esta razão, as nuvens devem implementar recursos que garantam um eficiente comércio de serviços, tais como tarifação adequada, contabilidade, faturamento, monitoramento e otimização do uso. Esta medição de uso dos recursos deve ser feita de forma automática e de acordo com os diferentes tipos de serviços oferecidos (armazenamento, processamento e largura debanda) e prontamente reportada, permitindo uma maior transparência comercial. [3] Os recursos devem estar disponíveis através da rede e acessados através de mecanismos padrões que permitam a utilização dos mesmos por plataformas heterogêneas, como smartfones, laptops, PDAs, entre outros. [2]

11 Customização No atendimento a múltiplos usuários verifica-se a grande disparidade entre a necessidades dos mesmos, tornando essencial a capacidade de personalização dos recursos da nuvem. Desde serviços de infraestrutura, a serviços de plataforma e serviços de software. 2.3 Modelo de Serviço O modelo conceitual encontrado na literatura é composto de três camadas, que definem um padrão para computação em nuvem. Na ilustração 1, podemos verificar as camadas, informando quem utiliza e o tipo de serviço. Figura 1: Modelo de Serviço Infraestrutura como Serviço IaaS Nesta camada são oferecidos os serviços de infraestrutura, ou seja, os fornecedores deste serviço, oferecem recursos de hardwares virtualizados como computação, armazenamento e comunicação. Está camada é a mais inferior, por este motivo, trabalha como infraestrutura para as demais camadas. Exemplo de ferramentas do nicho de serviço como infraestrutura é o Eucalyptus, um software livre que consiste num framework que utiliza e gerência uma infraestrutura de computadores e dispositivos de armazenamento com o intuito de disponibilizar um ambiente modular aos

12 13 prestadores de serviço. Outros exemplos estão o CloudSim (voltado para simulações), Amazon Elastic Compute Cloud, que é puramente comercial, onde ele provê um ambiente virtual no qual é possível desenvolver e executar aplicações Linux, para isso o usuário escolhe como sua máquina virtual deve ser.[3] Plataforma como serviço PaaS O fornecedor oferece um ambiente como serviço, onde pode ser desenvolvido aplicações nas nuvens, evitando assim algumas preocupações dos desenvolvedores, como processamento e quantidade de memória utilizada pela aplicação. É a camada intermediaria, e utiliza a camada inferior para prover seus serviços. A tecnologia que apresentaremos neste trabalho, o Google App Engine, faz parte desta camada da computação em nuvens, ela oferece serviços capazes de desenvolver aplicações em Java, Python ou qualquer outra linguagem de programação, que utilize uma Java Virtual Machine (JVM) ou Máquina Virtual Java Software como Serviço SaaS Se trata da camada mais alta da computação e nuvens, e fornece como serviços, aplicações completas para o usuário final. Essas aplicações são fornecidas através do acesso a Web, permitindo a execução de programas nas nuvens, através de uma máquina local. O SaaS como camada mais alta, utiliza o IaaS e PaaS para seus serviços. O Google com seu Google App, é o mais famoso fornecedor deste serviço, entre os serviços fornecidos, estão Gmail, Hangout e Google Docs, outros exemplos são o Microsoft Azure, Chrome OS, Photoshop online e etc Demais serviços Existem outras tipologias de computação em nuvem, tais como, DaaS (Desenvolvimento como Serviço), CaaS (Comunicação como Serviço), TaaS (Teste como Serviço) e EaaS (Tudo como Serviço). Utilizados normalmente para diferenciar um tipo de serviço.

13 Modelo de Implantação No modelo de implantação,4 dependemos das necessidades das aplicações que serão implementadas. A restrição ou abertura de acesso depende do processo de negócios, do tipo de informação e do nível de visão desejado. Percebemos que certas organizações não desejam que todos os usuários possam acessar e utilizar determinados recursos no seu ambiente de computação em nuvem. Segue abaixo a divisão dos diferentes tipos de implantação [5] Privado Nuvens privadas, são aquelas construídas para um único usuário, por exemplo, uma empresa. Nela o acesso é restrito, estabelecido pelo usuário, porém por ser uma nuvem privada que permite o usuário ter este tipo de controle, gera um custo maior. Característica que diferencia as nuvens privadas é ato da restrição de acesso, pois a mesma se encontra atrás do firewall da empresa, sendo uma forma de aderir à tecnologia, beneficiando-se das suas vantagens, porém mantendo o controle do nível de serviço e aderência às regras de segurança da instituição. [4] As nuvens privadas são aquelas construídas exclusivamente para um único usuário (uma empresa, por exemplo). Diferentemente de uma data center privado virtual, a infraestrutura utilizada pertence ao usuário, e, portanto, ele possui total controle sobre como as aplicações são implementadas na nuvem. Uma nuvem privada é, em geral, construída sobre um Data Center privado [5]. A figura 2, mostra um modelo de nuvem privada:

14 15 Figura 2: Modelo de Nuvem Privada Pública As nuvens públicas são aquelas que são executadas por terceiros. As aplicações de diversos usuários ficam misturadas nos sistemas de armazenamento, o que pode parecer ineficiente a princípio. Porém, se a implementação de uma nuvem pública considera questões fundamentais, como desempenho e segurança, a existência de outras aplicações sendo executadas na mesma nuvem permanece transparente tanto para os prestadores de serviços como para os usuários [5]. A figura 3, mostra um modelo de Nuvem publica.

15 16 Figura 3: Nuvem Pública Comunidade A infraestrutura de nuvem é compartilhada por diversas organizações e suporta uma comunidade específica que partilha as preocupações (por exemplo, a missão, os requisitos de segurança, política e considerações sobre o cumprimento). Pode ser administrado por organizações ou por um terceiro e pode existir localmente ou remotamente [5]. A figura 4, mostra um modelo de Nuvem Comunitária Figura 4: Nuvem Comunitária Hibrido Nas nuvens híbridas temos uma composição dos modelos de nuvens públicas e privadas. Elas permitem que uma nuvem privada possa ter seus recursos ampliados a partir de uma reserva de recursos em uma nuvem pública. Essa 8 característica possui a vantagem de manter os níveis de

16 17 serviço mesmo que haja flutuações rápidas na necessidade dos recursos. A conexão entre as nuvens pública e privada pode ser usada até mesmo em tarefas periódicas que são mais facilmente implementadas nas nuvens públicas, por exemplo. O termo computação em ondas é, em geral, utilizado quando se refere às nuvens híbridas [3]. Na figura 5, temos um exemplo de Nuvem Hibrida Figura 5: Nuvem Hibrida 2.5 Google App Engine O Google App Engine, permite que os usuários executem os aplicativos na infraestrutura da Google, assim não é necessário manter servidores, e se preocupar com os gastos que uma estrutura dessas demandaria. O aplicativo é enviado para nuvens, e está pronto para ser utilizado pelo usuário final. Você pode enviar o arquivo para infraestrutura da Google, e manter seu próprio domínio, ou também pode estar utilizando um nome livre de domínio oferecido pelo próprio Google App, o appspot.com. O aplicativo enviado para o ambiente da Google, pode ser configurado para ser acessado apenas por sua organização, ou ter livre acesso. Os aplicativos podem ser desenvolvidos nas linguagens de programação Java e Python, ou por qualquer outra linguagem de programação, que utilize uma Máquina Virtual Java. Para auxiliar no desenvolvimento, é disponibilizado um conjunto de ferramentas chamado Google Web Toolkit

17 18 (GWT), que podem ser adicionados as principais IDEs do mercado, por exemplo, Eclipse e Netbeans. Na figura 6, mostra como funciona o ambiente de desenvolvimento em Java, e que existem serviços de apoio. Figura 6: Ambiente de desenvolvimento Java Funcionalidades do GAE O Google App Engine facilita a criação de aplicativos que podem ser executados de forma confiável mesmo sob uma carga pesada e com grandes quantidades de dados. O Google App Engine inclui os seguintes recursos: 1. Serviço da web dinâmico, com suporte completo a tecnologias da web comuns 2. Armazenamento persistente com consultas, classificação e transações 3. Escalonamento e balanceamento de carga automática 4. APIs para autenticação de usuários e envio de s usando Contas do Google 5. Um ambiente de desenvolvimento local com todos os recursos, simulando o Google App Engine em seu computador 6. Filas de tarefas para realizar trabalho fora do escopo de uma solicitação da web

18 19 7. Tarefas programadas para iniciar eventos em horários específicos e em intervalos regulares O aplicativo pode ser executado em um destes dois runtime environments: Java e Python Cada ambiente oferece protocolos padrão e tecnologias comuns para o desenvolvimento de aplicativos da web. [6] Os aplicativos são executados em um ambiente seguro que fornece acesso limitado ao sistema operacional subjacente. Essas limitações permitem que o Google App Engine distribua solicitações de web para o aplicativo entre diversos servidores, iniciando e interrompendo servidores para atender às demandas de tráfego. O sandbox isola o aplicativo em seu próprio ambiente seguro e confiável, independentemente de hardware, sistema operacional e localização física do servidor da web. São exemplos das limitações do ambiente seguro sandbox: 1. Um aplicativo pode acessar outros computadores na Internet somente por meio dos serviços de busca de URL e de fornecidos. Outros computadores podem se conectar ao aplicativo somente fazendo solicitações HTTP (ou HTTPS) nas portas padrão. 2. Um aplicativo não pode gravar no sistema de arquivos. Um aplicativo pode ler arquivos, mas somente os enviados junto com o código do aplicativo. O aplicativo deve usar o armazenamento de dados, o memcache ou outros serviços do Google App Engine para todos os dados que persistirem entre solicitações. 3. O código do aplicativo é executado somente em resposta a uma solicitação da web, a uma tarefa na fila ou a um trabalho do cron, e deve retornar dados de resposta em 30 segundos, independentemente do caso. Um manipulador de solicitação não pode gerar um subprocesso nem executar o código após o envio da resposta. [6] O Google App Engine, contém um mecanismos de armazenamento de dados distribuído, baseado em consultas e transações. Assim o armazenamento de dados distribuído, cresce a medida que o número de dados aumentam. O armazenamento de dados do Google App Engine, não é de maneira relacional, como grande parte dos bancos de dados presentes do mercado. As consultas do modelo oferecido pelo Google, recupera uma entidade de um tipo determinado, filtradas e classificadas de acordo com as propriedades definidas. As interfaces de Java JPA/JDO e as interfaces de armazenamento de dados em Python, possuem recursos para implementação em seus aplicativos. As consultas são executadas sobre objetos de dados, que também são conhecidas como entidades, as entidades podem conter uma ou várias propriedades onde uma delas é um identificador único chamado de chave. O Google App Engine suporta a integração de um aplicativo com as Contas do Google para

19 20 autenticar um usuário. Seu aplicativo pode permitir que um usuário faça login com uma conta do Google e acesse o endereço de e o nome de exibição associado à conta. O uso de Contas do Google permite que o usuário comece a usar seu aplicativo mais rapidamente, pois talvez não precise criar uma conta. Isso economiza o esforço de implementar um sistema de contas de usuário somente para seu aplicativo. Se seu aplicativo estiver sendo executado no Google Apps, ele pode usar os mesmos recursos com os membros de sua organização e contas do Google Apps. A API de usuários também pode informar ao aplicativo se o usuário atual é um administrador registrado do aplicativo. Isso facilita a implementação de áreas de seu site restritas a administradores. [6] Criar um aplicativo no Google App Engine é gratuito, assim é possível desenvolver um aplicativo e publicar o mesmo na plataforma do Google, sem nenhum custo inicial. Porém a versão gratuita tem suas limitações, um aplicativo nesta categoria, pode ter apenas 500 MB de capacidade de armazenamento, e 5 milhões de visualizações de página por mês. Caso necessite de mais recursos, você pode ativar o faturamento, e escolher um dos planos disponíveis. Você pode registrar no máximo 10 aplicativos por conta de desenvolvedor, e definir uma limitação para cada um deles, as chamadas cotas, que define a quantidade de recursos que se pode usar em um dia, podendo ser configurado posteriormente para aumentar ou até mesmo diminuir está quantidade de recursos, a medida que seu aplicativo necessite. 2.6 Amazon Web Services (AWS) Criado em 2006, o Amazon Web Services (AWS), começou a oferecer seus serviços de computação em nuvens para as empresas de TI. Atualmente o AWS oferece nas nuvens um serviço de infraestrutura altamente confiável e escalável, presente em mais de 190 pais, com seus Data centers localizados nos EUA, Europa, Brasil, Cingapura, Japão e Austrália Funcionalidades do AWS Elastic Beanstalk Assim que um aplicativo estiver sendo executado, o Elastic Beanstalk fornecerá vários recursos de gestão, como:

20 21 1. Implemente facilmente as novas versões do aplicativo em ambientes em execução (ou implante em uma versão anterior). 2. Acesse métricas de monitoramento CloudWatch embutidas, como a utilização média da CPU, a contagem de solicitações e a latência média. 3. Receber notificações por por meio do Amazon Simple Notification Service (Amazon SNS) quando o status do aplicativo mudar ou os servidores do aplicativo forem adicionados ou removidos. 4. Acesse arquivos de log do servidor sem precisar efetuar login nos servidores do aplicativo. 5. Reiniciar rapidamente os servidores do aplicativo em todas as instâncias do EC2 com um único comando. Com o Elastic Beanstalk, os desenvolvedores retêm o controle total sobre os recursos da AWS capacitando seu aplicativo e podem desempenhar uma série de funções simplesmente ao ajustar definições de configuração padrão do console de gestão do Elastic Beanstalk, incluindo: 1. Seleção do tipo de instância do Amazon EC2 mais apropriado que corresponde aos requisitos da CPU e de memória do seu aplicativo 2. Escolher entre várias opções de armazenamento e de banco de dados disponíveis, como o Amazon RDS, Amazon DynamoDB, Amazon SimpleDB, Microsoft SQL Server, Oracle, IBM DB2 ou o Informix. 3. Habilitação do acesso de login a instâncias do Amazon EC2 para a solução de problemas imediata e direta 4. Aprimoramento rápido da confiabilidade do aplicativo ao executar em mais de uma Zona de disponibilidade 5. Aperfeiçoamento da segurança do aplicativo ao habilitar o protocolo HTTPS no load balancer 6. Ajustar configurações de servidor do aplicativo (p.ex., configurações JVM) e varáveis de ambiente de passagem 7. Execução de outros componentes do aplicativo, como serviço de armazenamento em cache da memória, lado a lado no Amazon EC2 8. Ajustar as definições de Auto Scaling para controlar a métrica e os limites usados para determinar quando adicionar ou remover instâncias de um ambiente. [7]

21 GAE x AWS Apesar das duas tecnologias de computação em nuvens pertencerem a mesma camada, o PaaS, ambas tem suas particularidades e similaridades que apresentaremos neste trabalho. Focaremos na comparação referente a linguagem de programação Java, não entrando em detalhes nas demais linguagens Ambiente de Desenvolvimento Ambas as tecnologias possuem ferramentas que auxiliam o desenvolvimento, e também no envio das aplicações para as nuvens, no caso da linguagem Java, possuem uma SDK que suporta o Java 5 e 6. Existe um Plug-in de desenvolvimento para a IDE Eclipse, o Google Web Toolkit (GWT) e AWS Toolkit, após instalação do mesmo, sua IDE Eclipse, estará configurada para o criar, testar e enviar suas aplicações para as nuvens. O Netbeans, outra importante IDE do mercado, também possui um Plug-in de desenvolvimento para o SDK, porém o Eclipse é mais recomendado, e citado na documentação de ambas as tecnologias Armazenamento O Google App Engine inclui suporte a dois padrões de APIs diferentes para o armazenamento de dados: JDO (Objetos de dados Java) e JPA (API persistente Java). Essas interfaces são oferecidas pelo DataNucleus Access Platform, uma implementação de código aberto de vários padrões de persistência Java, com um adaptador para o armazenamento de dados do App Engine. [6] Criado e oferecido pelo Google, o BigTable é um banco de dados orientando a colunas, salva objetos de dados, conhecidos como entidades. Uma entidade tem uma ou mais propriedades, valores nomeados de um dos vários tipos de dados, incluindo números inteiros, valores de ponto flutuante, strings, datas, dados binários e etc. Cada entidade também tem uma chave que identifica a entidade. A chave mais simples têm um tipo e um ID de entidade fornecidos pelo armazenamento de dados. O tipo classifica a entidade para que você possa consultá-la com mais facilidade. O ID da entidade também pode ser uma string fornecida pelo aplicativo. Ao contrário de banco de dados tradicionais, o armazenamento de dados usa uma arquitetura distribuída, também é diferente na forma como

22 23 descrever relacionamentos entre objetos de dados, com o BigTable duas entidades do mesmo tipo, podem ter propriedades diferentes. Diferentes entidades de dados podem ter propriedades com o mesmo nome, mas tipos de valores diferentes. São usadas consultas escritas em Google Query Language (GQL) para recuperar dados do BigTable, diferente dos bancos de dados tradicionais que utilizam Structured Query Language (SQL). Caso o desenvolvedor queria utilizar o MySQL, banco de dados modelo relacional mais utilizado no mundo, é necessário uma outra ferramenta do Google, chamada Google Cloud SQL que pode ser integrada ao Google App Engine. O Amazon Elastic Beanstalk, o usuário pode utilizar qualquer um dos bancos relacionais mais populares do mercado, como MySQL, Oracle e Microsoft SQL, basta utilizar um dos seus serviços de persistência chamado Amazon RDS. Outros serviços oferecidos pela Amazon, são: O Amazon DynamoDB é um serviço de banco de dados NoSQL, Amazon SimpleDB é um serviço de banco de dados NoSQL gerenciado, projetado para conjuntos de dados menores e Amazon ElastiCache é um serviço web que trabalha com cache na memória na nuvem Definição de Preços e Limites Ambos os serviços apresentados, oferecem opções gratuitas para serem utilizadas, e o contratante só paga o que exceder este limite gratuito. No caso do Google App Engine, um aplicativo de uma conta gratuita pode usar até 500 MB de armazenamento e até 5 milhões de visualizações de página por mês. Além disso, você pode registrar até 10 aplicativos por conta de desenvolvedor. Amazon Elastic Beanstalk, você só paga pelos recursos AWS subjacentes, por exemplo, um recurso mais robusto de armazenamento. Cada recurso do AWS, também possui sua cota gratuita, que varia de produto para produto. Entretanto, o custo é alto para Web sites com tráfego baixo e desenvolvedores amadores. É possível criar até 25 aplicativos e 500 versões de aplicativos. Por padrão, você pode executar até 10 ambientes em todos seus aplicativos Plataforma Java Google App Engine e Amazon Elastic Beanstalk, possuem suporte para a Plataforma Java, nas

23 24 versões 5 e 6, entretanto há algumas diferenças entre os dois serviços. No caso do primeiro, os recursos para Java são limitados, e em alguns casos fora dos padrões. Devido a várias restrições impostas aos seus aplicativos, o Google App Engine não suporta certas APIs da plataforma Java. As limitações de APIs, acaba prejudicando o uso de alguns frameworks famosos no mercado, podemos usar como exemplo, o JavaServer Faces (JFS), que requer modificações manualmente no código de origem do framework para fazer com que ele execute no Google App Engine. Amazon Elastic Beanstalk, suporta servidor Tomcat completo. Por causa de sua popularidade, quase todos os frameworks Java corporativos suportam a implementação em Tomcat. Esses frameworks podem ser iniciados ou inicializados a partir de um arquivo WAR do Tomcat, oferecendo a você uma ampla variedade de opções de frameworks e bibliotecas.

24 25 3 Aplicação com Google App Engine O objetivo deste trabalho, é apresentar a estrutura de desenvolvimento da ferramenta do Google, além do apresentarmos o desenvolvimento de uma aplicação simples. Após o desenvolvimento, a aplicação será envidada para as Nuvens. 3.1 Preparando o Ambiente Para o desenvolvimento da aplicação, precisamos preparar o ambiente, além do Java e da IDE Eclipse, precisaremos do SDK do Google App Engine. O SDK inclui software para um servidor web que você pode executar no seu próprio computador para testar seus aplicativos Java. O servidor simula todos os serviços do App Engine, incluindo uma versão local do armazenamento de dados, Contas do Google e recursos de busca de URLs e envio de s pelo computador através das APIs do App Engine. [6] Java Development Kit Java Development Kit é um conjunto de utilitários que permitem criar sistemas de software para plataforma Java. O Google App Engine, tem suporte para as versões 5 e 6, e também suporte experimental para a versão 7. A versão recomendada para o desenvolvimento de suas aplicações, é a 6. É necessário realizar o download do JDK para instalação, isso pode ser feito no site do fornecedor. A instalação depende do sistema operacional utilizado, mas instruções de instalação podem ser encontrados em: Depois que o JDK estiver instalado, execute os seguintes comandos em um prompt de comando, java -version e javac -version para confirmar se é possível executar os comandos e para identificar a versão instalada. Como mostra a figura 7.

25 26 Figura 7: Verificando instalação do Java Plug-in do Google para IDE Eclipse Google Web Toolkit (GWT) é um Plug-in do Google para Eclipse que ajuda no desenvolvimento de aplicações. O Plug-in permite que você crie, teste e envie aplicativos do App Engine pelo Eclipse. Você pode instalar o Plug-in usando o recurso Software Update (Atualização de software) do Eclipse, instalaremos a versão para a última versão do Eclipse no momento, Eclipse 4.3 (Kepler). Com o Eclipse aberto, selecione Help (Ajuda) > Install New Software... (Instalar novo software...). Irá abrir uma janela para informarmos o Plug-in que deve ser instalado, conforme figura número 8. Figura 8: Adicionando o link do Plug-in

26 27 Na janela da figura 8, devemos clicar em Add para adicionar o nome e o endereço, de onde o Eclipse deve baixar o Plug-in. O endereço que dever ser inserido: https://dl.google.com/eclipse/plugin/4.3 conforme a figura 9. Figura 9: Adicionando nome e endereço do Download Após o endereço ser adicionado, uma lista de ferramentas do Google App Engine, será mostrada. Para o desenvolvimento de aplicações Web, é necessário apenas as opções requeridas e recomendadas, mas adicionaremos todas as ferramentas, como mostra a figura 10. Figura 10: Escolhendo as ferramentas

27 28 A próxima janela que será aberta, mostra os detalhes dos recursos que serão instalados, bastando clicar em Next, como mostra a figura 11. Figura 11: Detalhes dos recursos A figura 12, mostra o processo de instalação, que pode levar alguns minutos. Figura 12: Processo de instalação

28 Testando a instalação Com a instalação concluída, para testar se tudo está funcionando, pode executar uma das várias aplicações demos inclusos no SDK Java do App Engine. Se você usa o Eclipse, o SDK estará localizado no diretório de instalação, em plugins/com.google.appengine.eclipse.sdkbundle_version/, em que VERSION representa o identificador de versão do SDK. Para testar a instalação e executar um dos aplicativos demos, uma das opções é usar a linha de comando, para isso, acesse a pasta do Plug-in no Eclipse, e execute o comando, como mostra as ilustrações 13 e 14: Se estiver usando o Mac OS X ou o Linux, execute o seguinte comando: Figura 13: Comando para Linux e MAC OS, [6] Se estiver usando o Windows, execute o seguinte comando: Figura 14: Comando para Windows, [6] 3.2 Criando o primeiro Projeto Os aplicativos Java do App Engine usam a norma Java Servlet para interagir com o ambiente do servidor web. Os arquivos de um aplicativo, incluindo classes compiladas, JARs, arquivos estáticos e de configuração, são organizados em uma estrutura de diretórios no layout padrão WAR para aplicativos web Java. Você pode usar qualquer processo de desenvolvimento que desejar para desenvolver servlets web e criar um diretório do WAR. Os arquivos do armazenamento WAR ainda não são compatíveis com o SDK. [GOOGLE, 2013] No Eclipse, crie um novo projeto, clicando no botão Web Application Project New na barra de ferramentas: O botão Web Application Project New: De um nome para o projeto, e um nome

29 30 para o pacote do mesmo, clique em finalizar, e será criado um novo projeto com a estrutura mostrada na figura 15. Figura 15: Estrutura do Projeto src: Código fonte Java; META-INF: Outras configurações; war: JSP, imagens e arquivos de dados; WEB-INF: Aplicativos de configuração; lib: JARs, onde adicionamos as bibliotecas; classes: Classes compiladas Olá Mundo Os aplicativos em Java do App Engine usam a API Java Servlet para interagir com o servidor web. Um servlet HTTP é uma classe de aplicativo que pode processar e responder a solicitações da web. Essa classe estende javax.servlet.http.httpservlet. [6] a classe javax.servlet.genericservlet ou a classe

30 31 Crie um Servlet dentro do diretório src com o código mostrado na figura 16. Figura 16: Olá Mundo Após o desenvolvimento do código, execute aplicação em Run > Run As > Web Application. Eclipse e o Plug-in do Google para Eclipse, o servidor será executado pela porta 8888 por padrão, como mostra a figura 17. Figura 17: Execução do Olá Mundo

31 Mural de Mensagens O projeto demostrativo deste trabalho, será um Mural de mensagens, onde poderá ser postada uma mensagem e a mesma será gravada no mural através da persistência utilizando JDO. O usuário que estiver logado em uma conta do Google, aparecerá seu nome na mensagem, caso contrário, será postado como anônimo. 3.4 Persistência O Google App Engine, permite que realize persistência usando duas API Java. O JDO (Objeto de dados Java) e JPA (API de persistência Java), no exemplo proposto deste trabalho, será utilizada a primeira API citada DataNucleus Access Platform O Access Platform precisa de um arquivo de configuração que especifique que ele usará o armazenamento de dados do GAE, este arquivo é chamado jdoconfig.xml. E deve estar no diretório war/web-inf/classes/meta-inf/. Caso esteja utilizando o Eclipse com o Plug-in do Google App Engine, este arquivo deve ser gerado automaticamente, caso o contrário, crie um com as informações mostradas na figura 18. Figura 18: Configurações JDO

32 Anotações JDO e POJOs Devemos agora criar um POJO(Plain Old Java Objects), simples classes Java, com construtor e Gets e Sets. Porém nestas classes adicionaremos anotações JDO para que possamos persisti-la na plataforma da Google. Para declarar uma classe Java como capaz de ser armazenada e recuperada do armazenamento de dados com JDO, atribua a à classe. [6]. Campos da classe de dados que devem ser armazenados no armazenamento de dados devem ser declarados como campos persistentes. Para declarar um campo como persistente, dê a ele uma [6] Toda a classe deve conter um campo dedicado para a chave primaria, As chaves principais exigem uma e uma IdGeneratorStrategy.IDENTITY). A figura 19, mostra um exemplo de classe anotada. Figura 19: Classe com anotação JDO =

33 Fábrica de Conexão e persistence.xml Cada solicitação que usa o armazenamento de dados cria uma instância nova da classe PersistenceManager. Para fazer isso, ela usa uma instância da classe PersistenceManagerFactory. Uma instância da PersistenceManagerFactory demora para ser inicializada. Felizmente, você só precisa de uma instância para seu aplicativo e ela pode ser armazenada em uma variável estática para ser usada por várias solicitações e várias classes. Uma maneira fácil de fazer isso através da criação de uma única classe empacotadora para a instância estática.[6] As figuras 20 e 21 ilustram nosso modelo de fábrica de conexão e persistência. Figura 20: Exemplo de fábrica de conexão O transactions-optional deve estar em seu persistence.xml:

34 35 Figura 21: persistence.xml Servlet A classe BtajdoServlet será responsável por criar e persistir nosso objeto. Para salvar a instância no armazenamento de dados, ele cria um PersistenceManager usando um PersistenceManagerFactory e, em seguida, passa a instância para o método makepersistent() do PersistenceManager. Depois que makepersistent() retorna, o novo objeto é armazenado no armazenamento de dados. A figura 22, ilustra nosso modelo.

35 36 Figura 22: Servlet View (JSP) Após a criação do Servlet devemos criar nossa JSP, que será responsável por mostrar as informações no navegador do usuário, nossa visão deve ser editada com as informações que deseja apresentar. A figura 23, ilustra nosso formulário. Figura 23: JSP JDOSQL

36 37 A norma JDO define um mecanismo para consultar objetos persistentes chamadas JDOQL. Você pode usar o JDOQL para realizar consultas de entidades no armazenamento de dados do App Engine e recuperar resultados como objetos aprimorados pelo JDO. Realize uma consulta com a interface JDO através da JDOQL, uma linguagem de consultas do tipo SQL para recuperação de objetos de dados. A linha a seguir define a sequência de caracteres da consulta JDOQL. [6] Um exemplo de consulta com JDOSQL pode ser visto na figura 24. Figura 24: Exemplo de JDOSQL Como enviar o projeto com a IDE Eclipse Depois de pronto, para enviar o projeto para a plataforma da Google, é necessário criar um ID único para o projeto, após a criação deste ID, temos a possibilidade de excluirmos, porém, não poderemos usar o mesmo ID novamente. Para criar o ID do projeto, acesse a URL: https://appengine.google.com/. Será necessário ter uma conta Google, caso não possua, a mesma pode ser criada preenchendo o formulário da URL: https://accounts.google.com/signup?service=chromiumsync&continue=https%3a%2f %2Fwww.google.com%2Fintl%2Fpt-BR%2Fchrome%2Fblank.html%3Fsource%3D1 Como mostra a figura 25.

37 38 Figura 25: Criando uma conta Google Após finalizar a criação da conta Google, para criar o ID do projeto, clique em Create Application e preenchendo os campos do formulário, como mostra as figuras 26 e 27. Figura 26: Criando o ID do Projeto Figura 27, vemos o formulário que deve ser preenchido.

38 39 Figura 27: Formulário do ID No projeto edite o arquivo appengine-web.xml e, em seguida, altere o valor do elemento <application> para corresponder ao ID de aplicativo que registrou. O arquivo deve estar na pasta WEB-INF de sua aplicação. A figura 28, mostra onde devemos adicionar o ID no projeto. Figura 28: Adicionando o ID no Projeto Pode enviar o código e os arquivos do projeto pelo Eclipse usando o Plug-in do Google. Para enviar o projeto pelo Eclipse, clique no botão de implementação do App Engine na barra de

Planejamento Estratégico de TI. Felipe Pontes felipe.pontes@gmail.com

Planejamento Estratégico de TI. Felipe Pontes felipe.pontes@gmail.com Planejamento Estratégico de TI Felipe Pontes felipe.pontes@gmail.com VPN Virtual Private Network Permite acesso aos recursos computacionais da empresa via Internet de forma segura Conexão criptografada

Leia mais

A computação na nuvem é um novo modelo de computação que permite ao usuário final acessar uma grande quantidade de aplicações e serviços em qualquer

A computação na nuvem é um novo modelo de computação que permite ao usuário final acessar uma grande quantidade de aplicações e serviços em qualquer A computação na nuvem é um novo modelo de computação que permite ao usuário final acessar uma grande quantidade de aplicações e serviços em qualquer lugar e independente da plataforma, bastando para isso

Leia mais

Google App Engine. André Gustavo Duarte de Almeida. Computação Ubíqua e Nuvens. Natal, 24 de maio de 2012 andregustavoo@gmail.com

Google App Engine. André Gustavo Duarte de Almeida. Computação Ubíqua e Nuvens. Natal, 24 de maio de 2012 andregustavoo@gmail.com Google App Engine Natal, 24 de maio de 2012 andregustavoo@gmail.com Sumário Introdução Instalação Aplicação Exemplo Implantação Conclusão Introdução Google App Engine developers.google.com/appaengine Permite

Leia mais

Levantamento sobre Computação em Nuvens

Levantamento sobre Computação em Nuvens Levantamento sobre Computação em Nuvens Mozart Lemos de Siqueira Doutor em Ciência da Computação Centro Universitário Ritter dos Reis Sistemas de Informação: Ciência e Tecnologia Aplicadas mozarts@uniritter.edu.br

Leia mais

Ricardo R. Lecheta. Novatec

Ricardo R. Lecheta. Novatec Ricardo R. Lecheta Novatec Copyright 2014 da Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer

Leia mais

Universidade Agostinho Neto Faculdade de Ciências Departamento de Ciências da Computação

Universidade Agostinho Neto Faculdade de Ciências Departamento de Ciências da Computação Universidade Agostinho Neto Faculdade de Ciências Departamento de Ciências da Computação Nº 96080 - Adário de Assunção Fonseca Muatelembe Nº 96118 - Castelo Pedro dos Santos Nº 96170 - Feliciano José Pascoal

Leia mais

Minicurso Computação em Nuvem Prática: AWS

Minicurso Computação em Nuvem Prática: AWS Grupo de Pesquisa em Software e Hardware Livre Glauber Cassiano Batista Membro Colméia glauber@colmeia.udesc.br Joinville Minicurso Computação em Nuvem Prática: AWS Roteiro Definições Virtualização Data

Leia mais

Cloud Computing. Andrêza Leite. andreza.lba@gmail.com

Cloud Computing. Andrêza Leite. andreza.lba@gmail.com Cloud Computing Andrêza Leite andreza.lba@gmail.com Roteiro O que é cloud computing? Classificação O que está 'por traz' da cloud? Exemplos Como montar a sua? O que é cloud computing? Cloud Computing O

Leia mais

Alexandre Malveira, Wolflan Camilo

Alexandre Malveira, Wolflan Camilo Alexandre Malveira, Wolflan Camilo Introdução Cloud Computing Computação Móvel SaaS, PaaS e IaaS CloudBees Diariamente arquivos são acessados, informações dos mais variados tipos são armazenadas e ferramentas

Leia mais

Fernando Seabra Chirigati. Universidade Federal do Rio de Janeiro EEL879 - Redes de Computadores II Professores Luís Henrique Costa e Otto Duarte

Fernando Seabra Chirigati. Universidade Federal do Rio de Janeiro EEL879 - Redes de Computadores II Professores Luís Henrique Costa e Otto Duarte Fernando Seabra Chirigati Universidade Federal do Rio de Janeiro EEL879 - Redes de Computadores II Professores Luís Henrique Costa e Otto Duarte Introdução Grid x Nuvem Componentes Arquitetura Vantagens

Leia mais

INTRODUÇÃO AO DESENVOLVIMENTO DE JOGOS COM LIBGDX. Vinícius Barreto de Sousa Neto

INTRODUÇÃO AO DESENVOLVIMENTO DE JOGOS COM LIBGDX. Vinícius Barreto de Sousa Neto INTRODUÇÃO AO DESENVOLVIMENTO DE JOGOS COM LIBGDX Vinícius Barreto de Sousa Neto Libgdx é um framework multi plataforma de visualização e desenvolvimento de jogos. Atualmente ele suporta Windows, Linux,

Leia mais

CLOUD COMPUTING. Andrêza Leite. andreza.leite@univasf.edu.br

CLOUD COMPUTING. Andrêza Leite. andreza.leite@univasf.edu.br CLOUD COMPUTING Andrêza Leite andreza.leite@univasf.edu.br Roteiro O que é cloud computing? Classificação O que está 'por traz' da cloud? Exemplos Como montar a sua? O que é cloud computing? Cloud Computing

Leia mais

O que é Cloud Computing (Computação nas Nuvens)?

O que é Cloud Computing (Computação nas Nuvens)? O que é Cloud Computing (Computação nas Nuvens)? Introdução A denominação Cloud Computing chegou aos ouvidos de muita gente em 2008, mas tudo indica que ouviremos esse termo ainda por um bom tempo. Também

Leia mais

Guia de conceitos básicos API Version 2010-01-01

Guia de conceitos básicos API Version 2010-01-01 : Guia de conceitos básicos Copyright 2011 Amazon Web Services LLC ou suas afiliadas. Todos os direitos reservados. Conceitos básicos do Amazon RDS... 1 Cadastre-se no Amazon RDS... 2 Inicie uma instância

Leia mais

Lógica de Programação

Lógica de Programação Lógica de Programação Unidade 4 Ambiente de desenvolvimento Java QI ESCOLAS E FACULDADES Curso Técnico em Informática SUMÁRIO A LINGUAGEM JAVA... 3 JVM, JRE, JDK... 3 BYTECODE... 3 PREPARANDO O AMBIENTE

Leia mais

Minicurso Computação em Nuvem Prática: AWS

Minicurso Computação em Nuvem Prática: AWS Minicurso Computação em Nuvem Prática: AWS Glauber Cassiano Batista Ricardo Sohn Membros Colméia Roteiro Geral Definições Virtualização Data center Computação em Nuvem Principais classificações: Modelos

Leia mais

Este livro é dedicado a minha esposa Edna e a todos os desenvolvedores que fizeram do software livre um meio profissional levado a sério.

Este livro é dedicado a minha esposa Edna e a todos os desenvolvedores que fizeram do software livre um meio profissional levado a sério. EDSON GONÇALVES Este livro é dedicado a minha esposa Edna e a todos os desenvolvedores que fizeram do software livre um meio profissional levado a sério. AGRADECIMENTOS Primeiramente gostaria de agradecer

Leia mais

Processos (Threads,Virtualização e Migração de Código)

Processos (Threads,Virtualização e Migração de Código) Processos (Threads,Virtualização e Migração de Código) Roteiro Processos Threads Virtualização Migração de Código O que é um processo?! Processos são programas em execução. Processo Processo Processo tem

Leia mais

Introdução a Computação nas Nuvens

Introdução a Computação nas Nuvens Introdução a Computação nas Nuvens Professor: Rômulo César Dias de Andrade. E-mail: romulocesar@faculdadeguararapes.edu.br romulodandrade@gmail.com www.romulocesar.com.br PROFESSOR... Mini CV: NOME: RÔMULO

Leia mais

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas Linguagem de Programação JAVA Professora Michelle Nery Nomeclaturas Conteúdo Programático Nomeclaturas JDK JRE JEE JSE JME JVM Toolkits Swing AWT/SWT JDBC EJB JNI JSP Conteúdo Programático Nomenclatures

Leia mais

Desenvolvendo Aplicações Web com NetBeans

Desenvolvendo Aplicações Web com NetBeans Desenvolvendo Aplicações Web com NetBeans Aula 3 Cap. 4 Trabalhando com Banco de Dados Prof.: Marcelo Ferreira Ortega Introdução O trabalho com banco de dados utilizando o NetBeans se desenvolveu ao longo

Leia mais

2 Requisitos Mínimos... 2. 1 Visão Geral 2 Instalando o SDK... da Sun 3 Instalando o Tomcat... do Apache Jakarta Project 4 Instalando o WebIntegrator

2 Requisitos Mínimos... 2. 1 Visão Geral 2 Instalando o SDK... da Sun 3 Instalando o Tomcat... do Apache Jakarta Project 4 Instalando o WebIntegrator Conteúdo I Conteúdo Part I Introdução 2 1 Apresentação... 2 2 Requisitos Mínimos... 2 Part II Instruções de Instalação 2 1 Visão Geral... 2 2 Instalando o SDK... da Sun 2 3 Instalando o Tomcat... do Apache

Leia mais

Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores

Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores Disciplina - Sistemas Distribuídos Prof. Andrey Halysson Lima Barbosa Aula 12 Computação em Nuvem Sumário Introdução Arquitetura Provedores

Leia mais

Manual de Utilização

Manual de Utilização Se ainda tiver dúvidas entre em contato com a equipe de atendimento: Por telefone: 0800 642 3090 Por e-mail atendimento@oisolucoespraempresas.com.br Introdução... 3 1. O que é o programa Oi Backup Empresarial?...

Leia mais

ADAPTANDO UMA APLICAÇÃO PARA CLOUD: UMA ANÁLISE ENTRE OS ESFORÇOS UTILIZADOS

ADAPTANDO UMA APLICAÇÃO PARA CLOUD: UMA ANÁLISE ENTRE OS ESFORÇOS UTILIZADOS ADAPTANDO UMA APLICAÇÃO PARA CLOUD: UMA ANÁLISE ENTRE OS ESFORÇOS UTILIZADOS Cleverson Nascimento de Mello¹, Claudete Werner¹, Gabriel Costa Silva² ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil

Leia mais

Uma introdução ao Google App Engine com GWT

Uma introdução ao Google App Engine com GWT : : www.mundoj.com.br : : Uma introdução ao Google App Engine com GWT Desenvolvendo Java em Cloud Computing. Luiz Felipe Gomes Teixera É desenvolvedor Java na IPNET Soluções com ênfase em aplicações em

Leia mais

Instalando o IIS 7 no Windows Server 2008

Instalando o IIS 7 no Windows Server 2008 Goiânia, 16/09/2013 Aluno: Rafael Vitor Prof. Kelly Instalando o IIS 7 no Windows Server 2008 Objetivo Esse tutorial tem como objetivo demonstrar como instalar e configurar o IIS 7.0 no Windows Server

Leia mais

Instalando o IIS 7 no Windows Server 2008

Instalando o IIS 7 no Windows Server 2008 Goiânia, 16/09/2013 Aluno: Rafael Vitor Prof. Kelly Instalando o IIS 7 no Windows Server 2008 Objetivo Esse tutorial tem como objetivo demonstrar como instalar e configurar o IIS 7.0 no Windows Server

Leia mais

Aula 1 - Introdução e configuração de ambiente de desenvolvimento

Aula 1 - Introdução e configuração de ambiente de desenvolvimento Aula 1 - Introdução e configuração de ambiente de desenvolvimento Olá, seja bem-vindo à primeira aula do curso para desenvolvedor de Android, neste curso você irá aprender a criar aplicativos para dispositivos

Leia mais

Estudo comparativo entre tecnologias Java: Applet e JWS.

Estudo comparativo entre tecnologias Java: Applet e JWS. Estudo comparativo entre tecnologias Java: Applet e JWS. Clara Aben-Athar B. Fernandes¹, Carlos Alberto P. Araújo¹ 1 Centro Universitário Luterano de Santarém Comunidade Evangélica Luterana (CEULS/ULBRA)

Leia mais

ANÁLISE COMPARATIVA DE PLATAFORMAS DE COMPUTAÇÃO EM NUVEM

ANÁLISE COMPARATIVA DE PLATAFORMAS DE COMPUTAÇÃO EM NUVEM ANÁLISE COMPARATIVA DE PLATAFORMAS DE COMPUTAÇÃO EM NUVEM Igor dos Passos Granado¹, Ricardo de Melo Germano¹, Claudete Werner¹, Gabriel Costa Silva² ¹Universidade Paranaense (Unipar) Paranavai PR Brasil

Leia mais

O que é cloud computing (computação nas nuvens)? Entendendo a cloud computing (computação nas nuvens)

O que é cloud computing (computação nas nuvens)? Entendendo a cloud computing (computação nas nuvens) O que é cloud computing (computação nas nuvens)? Introdução A expressão cloud computing começou a ganhar força em 2008, mas, conceitualmente, as ideias por trás da denominação existem há muito mais tempo.

Leia mais

Classificação::Modelo de implantação

Classificação::Modelo de implantação Classificação::Modelo de implantação Modelo de implantação::privado Operada unicamente por uma organização; A infra-estrutura de nuvem é utilizada exclusivamente por uma organização: Nuvem local ou remota;

Leia mais

23/05/12. Computação em Nuvem. Computação em nuvem: gerenciamento de dados. Computação em Nuvem - Características principais

23/05/12. Computação em Nuvem. Computação em nuvem: gerenciamento de dados. Computação em Nuvem - Características principais Computação em Nuvem Computação em nuvem: gerenciamento de dados Computação em nuvem (Cloud Computing) é uma tendência recente de tecnologia cujo objetivo é proporcionar serviços de Tecnologia da Informação

Leia mais

Instalação do IBM SPSS Modeler Server Adapter

Instalação do IBM SPSS Modeler Server Adapter Instalação do IBM SPSS Modeler Server Adapter Índice Instalação do IBM SPSS Modeler Server Adapter............... 1 Sobre a Instalação do IBM SPSS Modeler Server Adapter................ 1 Requisitos de

Leia mais

Integrando Eclipse e Websphere Application Server Community Edition

Integrando Eclipse e Websphere Application Server Community Edition 1 Integrando Eclipse e Websphere Application Server Community Edition Sobre o Autor Carlos Eduardo G. Tosin (carlos@tosin.com.br) é formado em Ciência da Computação pela PUC-PR, pós-graduado em Desenvolvimento

Leia mais

João Víctor Rocon Maia Engenharia de Computação - UFES

João Víctor Rocon Maia Engenharia de Computação - UFES João Víctor Rocon Maia Engenharia de Computação - UFES Agenda Quem usa? Conceito Ilustração Vantagens Tipologia Topologia Como fazer? O que é preciso? Infraestrutura Sistema Operacional Software Eucalyptus

Leia mais

1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO

1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO 1 ÍNDICE 1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO... 3 1.1 REQUISITOS BASICOS DE SOFTWARE... 3 1.2 REQUISITOS BASICOS DE HARDWARE... 3 2 EXECUTANDO O INSTALADOR... 3 2.1 PASSO 01... 3 2.2 PASSO

Leia mais

otimizando níveis de serviço em implantações na nuvem pública

otimizando níveis de serviço em implantações na nuvem pública DOCUMENTAÇÃO TÉCNICA otimizando níveis de serviço em implantações na nuvem pública chaves para o gerenciamento de serviços efetivo agility made possible sumário resumo executivo 3 Introdução: modelos de

Leia mais

DESENVOLVIMENTO DE APLICATIVOS PARA CELULAR JAVA 2 MICRO EDITION

DESENVOLVIMENTO DE APLICATIVOS PARA CELULAR JAVA 2 MICRO EDITION DESENVOLVIMENTO DE APLICATIVOS PARA CELULAR JAVA 2 MICRO EDITION Robison Cris Brito Centro Federal de Educação Tecnológica do Paraná Unidade de Pato Branco robison@pb.cefetpr.br RESUMO Engana-se quem acha

Leia mais

Procedimentos para Instalação do SISLOC

Procedimentos para Instalação do SISLOC Procedimentos para Instalação do SISLOC Sumário 1. Informações Gerais...3 2. Instalação do SISLOC...3 Passo a passo...3 3. Instalação da Base de Dados SISLOC... 11 Passo a passo... 11 4. Instalação de

Leia mais

CLOUD COMPUTING PEDRO MORHY BORGES LEAL. MAC0412 - Organização de Computadores Prof. Alfredo Goldman 7 de dezembro de 2010

CLOUD COMPUTING PEDRO MORHY BORGES LEAL. MAC0412 - Organização de Computadores Prof. Alfredo Goldman 7 de dezembro de 2010 CLOUD COMPUTING PEDRO MORHY BORGES LEAL MAC0412 - Organização de Computadores Prof. Alfredo Goldman 7 de dezembro de 2010 0 CLOUD COMPUTING 1 1. Introdução Com o grande avanço da tecnologia de processadores,

Leia mais

CA Nimsoft Monitor para servidores

CA Nimsoft Monitor para servidores DOCUMENTAÇÃO TÉCNICA Setembro de 2012 CA Nimsoft Monitor para servidores agility made possible CA Nimsoft para monitoramento de servidores sumário CA Nimsoft Monitor para servidores 3 visão geral da solução

Leia mais

Arquitetura de uma Webapp

Arquitetura de uma Webapp Arquitetura de uma Webapp Arquitetura J2EE Containers e componentes MVC: introdução Frederico Costa Guedes Pereira 2006 fredguedespereira@gmail.com Plataforma J2EE World Wide Web e a Economia da Informação

Leia mais

Manual do Usuário Microsoft Apps

Manual do Usuário Microsoft Apps Manual do Usuário Microsoft Apps Edição 1 2 Sobre os aplicativos da Microsoft Sobre os aplicativos da Microsoft Os aplicativos da Microsoft oferecem aplicativos para negócios para o seu telefone Nokia

Leia mais

Manual do Teclado de Satisfação Local Versão 1.2.2

Manual do Teclado de Satisfação Local Versão 1.2.2 Manual do Teclado de Satisfação Local Versão 1.2.2 18 de fevereiro de 2015 Departamento de Engenharia de Produto (DENP) SEAT Sistemas Eletrônicos de Atendimento 1. Introdução O Teclado de Satisfação é

Leia mais

Xen Cloud Platform Xen descomplicado

Xen Cloud Platform Xen descomplicado Xen Cloud Platform Xen descomplicado CAPA A Xen Cloud Platform facilita muito a criação e o gerenciamento de máquinas virtuais sobre o hypervisor Xen. por Boris Quiroz e Stephen Spector A revolução da

Leia mais

Computação em Nuvem & OpenStack

Computação em Nuvem & OpenStack Computação em Nuvem & OpenStack Grupo de Pesquisa em Software e Hardware Livre Ação Computação em Nuvem: Charles Christian Miers André Rover de Campos Glauber Cassiano Batista Joinville Roteiro Definições

Leia mais

Noções de. Microsoft SQL Server. Microsoft SQL Server

Noções de. Microsoft SQL Server. Microsoft SQL Server Noções de 1 Considerações Iniciais Basicamente existem dois tipos de usuários do SQL Server: Implementadores Administradores 2 1 Implementadores Utilizam o SQL Server para criar e alterar base de dados

Leia mais

Computação em Nuvem. Henrique Ruschel, Mariana Susan Zanotto, Wélton Costa da Mota. Especialização em Redes e Segurança de Sistemas 2008/2

Computação em Nuvem. Henrique Ruschel, Mariana Susan Zanotto, Wélton Costa da Mota. Especialização em Redes e Segurança de Sistemas 2008/2 Computação em Nuvem Henrique Ruschel, Mariana Susan Zanotto, Wélton Costa da Mota Especialização em Redes e Segurança de Sistemas 2008/2 Pontifícia Universidade Católica do Paraná Curitiba, Abril de 2010

Leia mais

Procedimentos para Instalação do Sisloc

Procedimentos para Instalação do Sisloc Procedimentos para Instalação do Sisloc Sumário: 1. Informações Gerais... 3 2. Instalação do Sisloc... 3 Passo a passo... 3 3. Instalação da base de dados Sisloc... 16 Passo a passo... 16 4. Instalação

Leia mais

Como criar um EJB. Criando um projeto EJB com um cliente WEB no Eclipse

Como criar um EJB. Criando um projeto EJB com um cliente WEB no Eclipse Como criar um EJB Criando um projeto EJB com um cliente WEB no Eclipse Gabriel Novais Amorim Abril/2014 Este tutorial apresenta o passo a passo para se criar um projeto EJB no Eclipse com um cliente web

Leia mais

Programação para Android

Programação para Android Programação para Android Aula 01: Visão geral do android, instalação e configuração do ambiente de desenvolvimento, estrutura básica de uma aplicação para Android Objetivos Configurar o ambiente de trabalho

Leia mais

DESENVOLVIMENTO EM DISPOSITIVOS MÓVEIS UTILIZANDO BANCO DE DADOS

DESENVOLVIMENTO EM DISPOSITIVOS MÓVEIS UTILIZANDO BANCO DE DADOS DESENVOLVIMENTO EM DISPOSITIVOS MÓVEIS UTILIZANDO BANCO DE DADOS Leandro Guilherme Gouvea 1, João Paulo Rodrigues 1, Wyllian Fressatti 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil leandrog.gouvea@gmail.com,

Leia mais

Gestão em Sistemas de Informação. Profa.: Me. Christiane Zim Zapelini E-mail: christianezapelini@nwk.edu.br

Gestão em Sistemas de Informação. Profa.: Me. Christiane Zim Zapelini E-mail: christianezapelini@nwk.edu.br Gestão em Sistemas de Informação Profa.: Me. Christiane Zim Zapelini E-mail: christianezapelini@nwk.edu.br Gestão em Sistemas de Informação Cloud Computing (Computação nas Nuvens) 2 Cloud Computing Vocês

Leia mais

Questões Potenciais para a Prova Informática Questões Carlos Vianna

Questões Potenciais para a Prova Informática Questões Carlos Vianna 1. Questões Potenciais para a Prova Informática Questões Carlos Vianna 2012 Copyright. Curso Agora eu Passo - Todos os direitos reservados ao autor. 1.O comando pwd do Linux possibilita ao usuário efetuar

Leia mais

Arquivos de Instalação... 4. Instalação JDK... 7. Instalação Apache Tomcat... 8. Configurando Tomcat... 9

Arquivos de Instalação... 4. Instalação JDK... 7. Instalação Apache Tomcat... 8. Configurando Tomcat... 9 Instalando e Atualizando a Solução... 3 Arquivos de Instalação... 4 Instalação do Servidor de Aplicação... 7 Instalação JDK... 7 Instalação Apache Tomcat... 8 Configurando Tomcat... 9 Configurando Banco

Leia mais

FileMaker 13. Guia de ODBC e JDBC

FileMaker 13. Guia de ODBC e JDBC FileMaker 13 Guia de ODBC e JDBC 2004 2013 FileMaker Inc. Todos os direitos reservados. FileMaker Inc. 5201 Patrick Henry Drive Santa Clara, Califórnia 95054 FileMaker e Bento são marcas comerciais da

Leia mais

Ricardo R. Lecheta. Novatec

Ricardo R. Lecheta. Novatec Ricardo R. Lecheta Novatec Copyright 2015 da Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer

Leia mais

Procedimentos para Reinstalação do Sisloc

Procedimentos para Reinstalação do Sisloc Procedimentos para Reinstalação do Sisloc Sumário: 1. Informações Gerais... 3 2. Criação de backups importantes... 3 3. Reinstalação do Sisloc... 4 Passo a passo... 4 4. Instalação da base de dados Sisloc...

Leia mais

Relatório do GPES. Descrição dos Programas e Plugins Utilizados. Programas Utilizados:

Relatório do GPES. Descrição dos Programas e Plugins Utilizados. Programas Utilizados: Relatório do GPES Relatório referente à instalação dos programas e plugins que estarão sendo utilizados durante o desenvolvimento dos exemplos e exercícios, sendo esses demonstrados nos próximos relatórios.

Leia mais

Tecnologia Java. Daniel Destro do Carmo Softech Network Informática daniel@danieldestro.com.br

Tecnologia Java. Daniel Destro do Carmo Softech Network Informática daniel@danieldestro.com.br Tecnologia Java Daniel Destro do Carmo Softech Network Informática daniel@danieldestro.com.br Origem da Tecnologia Java Projeto inicial: Oak (liderado por James Gosling) Lançada em 1995 (Java) Tecnologia

Leia mais

Linguagem de Programação Visual

Linguagem de Programação Visual Linguagem de Programação Visual Unidade 1 Ambiente de desenvolvimento Curso Técnico em Informática SUMÁRIO INTRODUÇÃO... 3 SOBRE O JAVA... 3 AMBIENTE DE DESENVOLVIMENTO... 5 RECURSOS DA FERRAMENTA NETBEANS...

Leia mais

FileMaker Pro 12. Utilização de uma Conexão de Área de Trabalho Remota com o

FileMaker Pro 12. Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 12 Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 12 2007 2012 FileMaker Inc. Todos os direitos reservados. FileMaker Inc. 5201 Patrick Henry Drive Santa Clara,

Leia mais

ENTERPRISE JAVABEANS 3. Msc. Daniele Carvalho Oliveira

ENTERPRISE JAVABEANS 3. Msc. Daniele Carvalho Oliveira ENTERPRISE JAVABEANS 3 Msc. Daniele Carvalho Oliveira Apostila Servlets e JSP www.argonavis.com.br/cursos/java/j550/index.html INTRODUÇÃO Introdução Enterprise JavaBeans é um padrão de modelo de componentes

Leia mais

Cisco Intelligent Automation for Cloud

Cisco Intelligent Automation for Cloud Dados técnicos do produto Cisco Intelligent Automation for Cloud Os primeiros a adotarem serviços com base em nuvem buscavam uma economia de custo maior que a virtualização e abstração de servidores podiam

Leia mais

Java na WEB Servlet. Sumário

Java na WEB Servlet. Sumário 1 Java na WEB Servlet Objetivo: Ao final da aula o aluno será capaz de: Utilizar Servlets para gerar páginas web dinâmicas. Utilizar Servlets para selecionar páginas JSPs. Utilizar Servlets como elemento

Leia mais

Java. no Google App Engine. Escreva aplicações Java para o serviço de Cloud Computing da Google

Java. no Google App Engine. Escreva aplicações Java para o serviço de Cloud Computing da Google Pedro Mariano (pedro.mariano@caelum.com.br): é técnologo em Análise e Desenvolvimento de Software pela FIAP, possui a certificação SCJP 6. Trabalha como consultor e desenvolvedor pela Caelum com linguagens

Leia mais

INSTALAÇÃO PRINTERTUX Tutorial

INSTALAÇÃO PRINTERTUX Tutorial INSTALAÇÃO PRINTERTUX Tutorial 2 1. O Sistema PrinterTux O Printertux é um sistema para gerenciamento e controle de impressões. O Produto consiste em uma interface web onde o administrador efetua o cadastro

Leia mais

FileMaker Pro 14. Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 14

FileMaker Pro 14. Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 14 FileMaker Pro 14 Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 14 2007-2015 FileMaker, Inc. Todos os direitos reservados. FileMaker Inc. 5201 Patrick Henry Drive Santa Clara,

Leia mais

BlackBerry Internet Service. Versão: 4.5.1. Guia do usuário

BlackBerry Internet Service. Versão: 4.5.1. Guia do usuário BlackBerry Internet Service Versão: 4.5.1 Guia do usuário Publicado: 09/01/2014 SWD-20140109134951622 Conteúdo 1 Primeiros passos... 7 Sobre os planos de serviço de mensagens oferecidos para o BlackBerry

Leia mais

Associação Carioca de Ensino Superior Centro Universitário Carioca

Associação Carioca de Ensino Superior Centro Universitário Carioca Desenvolvimento de Aplicações Web Lista de Exercícios Métodos HTTP 1. No tocante ao protocolo de transferência de hipertexto (HTTP), esse protocolo da categoria "solicitação e resposta" possui três métodos

Leia mais

Guia de Instalação e Inicialização. Para WebReporter 2012

Guia de Instalação e Inicialização. Para WebReporter 2012 Para WebReporter 2012 Última revisão: 09/13/2012 Índice Instalando componentes de pré-requisito... 1 Visão geral... 1 Etapa 1: Ative os Serviços de Informações da Internet... 1 Etapa 2: Execute o Setup.exe

Leia mais

Ambientação JAVA. Versão 0.1 MICHEL CORDEIRO ANALISTA DE NEGÓCIO (NTI 2014) 1 UNIVERSIDADE CEUMA 08/01/2014

Ambientação JAVA. Versão 0.1 MICHEL CORDEIRO ANALISTA DE NEGÓCIO (NTI 2014) 1 UNIVERSIDADE CEUMA 08/01/2014 UNIVERSIDADE CEUMA Ambientação JAVA Versão 0.1 08/01/2014 Este é um modelo de configuração para desenvolvimento no ambiente Java. MICHEL CORDEIRO ANALISTA DE NEGÓCIO (NTI 2014) 1 Sumário Sumário... 2 1

Leia mais

SELENIUM 28/03/2011. Márcio Delamaro Harry Trinta

SELENIUM 28/03/2011. Márcio Delamaro Harry Trinta 1 SELENIUM 28/03/2011 Márcio Delamaro Harry Trinta O que é a Selenium? Selenium é uma ferramenta desenvolvida para a automação de testes em aplicações Web Suporta diversos browsers: Firefox Internet Explorer

Leia mais

Java Server Pages: Apresentação e Instalação

Java Server Pages: Apresentação e Instalação 1 Java Server Pages: Apresentação e Instalação Prof. Autor: Daniel Morais dos Reis e-tec Brasil Programação Avançada Para Web Página1 Meta Apresentar a tecnologia Java Server Pages; Instalar e configurar

Leia mais

Tutorial 1.0. Instalação

Tutorial 1.0. Instalação Tutorial 1.0 Instalação Índice Requisitos Instalando Android SDK Instalando Eclipse Instalando Plugin ADT no Eclipse Requisitos Para a instalação do SDK é necessário ter no minímo versão Java 6 (Standard

Leia mais

JAVA ENTERPRISE EDITION: PERSISTÊNCIA DE BANCO DE DADOS

JAVA ENTERPRISE EDITION: PERSISTÊNCIA DE BANCO DE DADOS COLÉGIO ESTADUAL ULYSSES GUIMARÃES CURSO TÉCNICO PROFISSIONALIZANTE EM INFORMÁTICA ERINALDO SANCHES NASCIMENTO JAVA ENTERPRISE EDITION: PERSISTÊNCIA DE BANCO DE DADOS FOZ DO IGUAÇU 2013 SUMÁRIO 1. PERSISTÊNCIA

Leia mais

OCEL001 Comércio Eletrônico Módulo 9_3: OpenShift

OCEL001 Comércio Eletrônico Módulo 9_3: OpenShift OCEL001 Comércio Eletrônico Módulo 9_3: OpenShift Prof. Charles Christian Miers e-mail: charles.miers@udesc.br OpenShift Solução livre de PaaS da RedHat Aquisição da Makara em 2010 Principais concorrentes:

Leia mais

PROGRAMANDO ANDROID NA IDE ECLIPSE GABRIEL NUNES, JEAN CARVALHO TURMA TI7

PROGRAMANDO ANDROID NA IDE ECLIPSE GABRIEL NUNES, JEAN CARVALHO TURMA TI7 Serviço Nacional de Aprendizagem Comercial do Rio Grande do Sul Informação e Comunicação: Habilitação Técnica de Nível Médio Técnico em Informática Programação Android na IDE Eclipse PROGRAMANDO ANDROID

Leia mais

Desenvolvimento Web TCC-00.226 Turma A-1

Desenvolvimento Web TCC-00.226 Turma A-1 Desenvolvimento Web TCC-00.226 Turma A-1 Conteúdo Arquitetura de Aplicações Distribuídas na Web Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.2/tcc-00.226

Leia mais

Cloud Computing Aplicando a Tecnologia no Mundo Corporativo

Cloud Computing Aplicando a Tecnologia no Mundo Corporativo Cloud Computing Aplicando a Tecnologia no Mundo Corporativo Carlos Matheus Galvão Curso de Especialização em Redes e Segurança de Sistemas 2009/1 Pontifícia Universidade Católica do Paraná Curitiba, Outubro

Leia mais

Instalando o J2SE 5.0 JDK no Windows 2000/XP

Instalando o J2SE 5.0 JDK no Windows 2000/XP Instalando o J2SE 5.0 JDK no Windows 2000/XP Fabricio Leonard Leopoldino Descreve o processo de download, instalação e configuração do J2SE 5.0 JDK, no Windows 2000 e no Windows XP. 1 - Introdução Para

Leia mais

CLOUD COMPUTING: COMPARANDO COMO O MUNDO ONLINE PODE SUBSTITUIR OS SERVIÇOS TRADICIONAIS

CLOUD COMPUTING: COMPARANDO COMO O MUNDO ONLINE PODE SUBSTITUIR OS SERVIÇOS TRADICIONAIS CLOUD COMPUTING: COMPARANDO COMO O MUNDO ONLINE PODE SUBSTITUIR OS SERVIÇOS TRADICIONAIS João Antônio Bezerra Rodrigues¹, Claudete Werner¹, Gabriel Costa Silva² ¹Universidade Paranaense (Unipar) Paranavaí

Leia mais

Prof. M.Sc. Fábio Procópio Prof. M.Sc. João Maria Criação: Fev/2010

Prof. M.Sc. Fábio Procópio Prof. M.Sc. João Maria Criação: Fev/2010 Prof. M.Sc. Fábio Procópio Prof. M.Sc. João Maria Criação: Fev/2010 Primeira Dica Afirmação O que é Java? Características do Java Como Java Funciona Plataforma Java Edições Java Java SE Java EE Java ME

Leia mais

Guia passo a passo de introdução ao Microsoft Windows Server Update Services

Guia passo a passo de introdução ao Microsoft Windows Server Update Services Guia passo a passo de introdução ao Microsoft Windows Server Update Services Microsoft Corporation Publicação: 14 de março de 2005 Autor: Tim Elhajj Editor: Sean Bentley Resumo Este documento fornece instruções

Leia mais

Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: WEB I Conteúdo: WEB Container Aula 04

Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: WEB I Conteúdo: WEB Container Aula 04 Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: WEB I Conteúdo: WEB Container Aula 04 Agenda 1. 2. Web Container TomCat 2 3 J2EE permite criar aplicações Web dinâmicas (com conteúdo dinâmico)

Leia mais

Manual do Teclado de Satisfação Local Versão 1.4.1

Manual do Teclado de Satisfação Local Versão 1.4.1 Manual do Teclado de Satisfação Local Versão 1.4.1 26 de agosto de 2015 Departamento de Engenharia de Produto (DENP) SEAT Sistemas Eletrônicos de Atendimento 1. Introdução O Teclado de Satisfação é uma

Leia mais

Entendendo as camadas do cloud computing: Iaas, Paas e SaaS

Entendendo as camadas do cloud computing: Iaas, Paas e SaaS + segurança + economia + liberdade + disponibilidade + sustentabilidade + flexibilidade Entendendo as camadas do cloud computing: Iaas, Paas e SaaS As camadas da nuvem Nossa missão com este white paper

Leia mais

MC1 - Desenvolvendo sua primeira aplicação web na Nuvem com o Software Livre Openshift. Prof. Me. Stenio Longo (UESB/IFBA) Pedro Maioli (UESB)

MC1 - Desenvolvendo sua primeira aplicação web na Nuvem com o Software Livre Openshift. Prof. Me. Stenio Longo (UESB/IFBA) Pedro Maioli (UESB) MC1 - Desenvolvendo sua primeira aplicação web na Nuvem com o Software Livre Openshift Prof. Me. Stenio Longo (UESB/IFBA) Pedro Maioli (UESB) 1 Objetivo Nesse minicurso serão apresentados conceitos de

Leia mais

Manual de instalação e configuração da Ferramenta Android SDK

Manual de instalação e configuração da Ferramenta Android SDK Trabalho de Programação para Dispositivos Móveis Turma: 1011 Camila Botelho camilacunhabotelho@gmail.com Manual de instalação e configuração da Ferramenta Android SDK Introdução O Android é uma ferramenta

Leia mais

Arquitetura e Sistema de Monitoramento para

Arquitetura e Sistema de Monitoramento para Arquitetura e Sistema de Monitoramento para 1 Computação em Nuvem Privada Mestranda: Shirlei A. de Chaves Orientador: Prof. Dr. Carlos Becker Westphall Colaborador: Rafael B. Uriarte Introdução Computação

Leia mais

Em uma linguagem de programação como C e Pascal, temos a seguinte situação quando vamos compor um programa:

Em uma linguagem de programação como C e Pascal, temos a seguinte situação quando vamos compor um programa: 1 1. Introdução Este manual se propõe a dar uma visão inicial do Java e apresentar os primeiros passos para sua instalação, configuração e usabilidade pelo prompt de comando do Windows. O ideal é que este

Leia mais

Guia de administração. BlackBerry Professional Software para Microsoft Exchange. Versão: 4.1 Service pack: 4B

Guia de administração. BlackBerry Professional Software para Microsoft Exchange. Versão: 4.1 Service pack: 4B BlackBerry Professional Software para Microsoft Exchange Versão: 4.1 Service pack: 4B SWD-313211-0911044452-012 Conteúdo 1 Gerenciando contas de usuários... 7 Adicionar uma conta de usuário... 7 Adicionar

Leia mais

Manual de referência do HP Web Jetadmin Database Connector Plug-in

Manual de referência do HP Web Jetadmin Database Connector Plug-in Manual de referência do HP Web Jetadmin Database Connector Plug-in Aviso sobre direitos autorais 2004 Copyright Hewlett-Packard Development Company, L.P. A reprodução, adaptação ou tradução sem permissão

Leia mais

Shavlik Protect. Guia de Atualização

Shavlik Protect. Guia de Atualização Shavlik Protect Guia de Atualização Copyright e Marcas comerciais Copyright Copyright 2009 2014 LANDESK Software, Inc. Todos os direitos reservados. Este produto está protegido por copyright e leis de

Leia mais

para persistência de objetos na Google App Engine

para persistência de objetos na Google App Engine capa_ Usando JSON para persistência de objetos na Google App Engine A criação de aplicações de larga escala com dados distribuídos exige que repensemos nossos modelos de persistência de objetos. Ambientes

Leia mais