Mostrando postagens com marcador cloud computing. Mostrar todas as postagens
Mostrando postagens com marcador cloud computing. Mostrar todas as postagens

segunda-feira, junho 27, 2011

Cloud Computing: Aprendendo a Programar nas Nuvens - Introdução


Este post inicia uma nova série sobre cloud computing cujo intuito é dar noções iniciais sobre essa badalada tecnologia. Para que não sabe ou lembra, já escrevemos alguns posts introdutórios sobre o tema e cuja leitura é recomendada: Cloud Computing - Programando nas Nuvens, Aprenda Cloud Computing com a Microsoft e Quer começar a programar em nuvem? Veja aqui as opções.

Apesar de causar arrepios em alguns, com uma possível perda de privacidade, a ideia de cloud computing já está consolidada na Internet onde aparece desde redes sociais, passando por discos virtuais até reservatório de músicas.

Nesse pequeno post introdutório, vamos explicar resumidamente o que é o Google App Engine e seus principais pontos.

O Google App Engine é toda a infraestrutura de programação em nuvens provida pelo Google. Isso significa que sua aplicação ficará hospedada nos servidores do Google e estará disponível para acesso de qualquer lugar onde haja Internet. 

O App Engine é gratuito mas com algumas limitações: 10 aplicativos por conta de desenvolvedor; cada aplicativo pode utilizar 500 MB de armazenamento e 5 milhões de visualizações de páginas por mês. Para  mais recursos pode-se pagar, o que pode desanimar alguns, mas é fácil perceber que quando estiver próximo ao limite da cota, sua aplicação provavelmente já terá bastante receita para pagar por infraestrutura.

Várias linguagens de programação são suportadas, como Javascript e Ruby, mas o ambiente é fortemente orientado para Java e Python. O que acaba atendendo praticamente a todo o público de desenvolvedores, já que praticamente todo mundo aprende Java na faculdade.

As aplicações rodam em uma sandbox que permite um ambiente seguro para desenvolvimento e produção. O acesso ao sistema operacional das máquinas hospedeiras é limitadíssimo. Não é possível ler arquivos, exceto os fornecidos com o código fonte da aplicação. Toda a entrada e saída de dados é feita através de URLS e emails.

Outro ponto que merece destaque é o armazenamento de dados. Trata-se de uma forma não convencional de armazenamento, ou seja, nada do banco de dados relacional padrão. Ao invés disso definimos entidades com propriedades que são armazenadas remotamente. Este tópico será melhor abordado em um futuro post.

Um recurso bastante interessante é a possibilidade de utilizar contas do Google para fazer login na sua aplicação, assim não será necessário criar todo um sistema de controle de usuários e acesso.



O Google App Engine é um ótimo começo para quem pretende aprender a programar nas nuvens, pois não exige uma curva de aprendizado muito acentuada, bem como novas linguagens e paradigmas. No próximo post você aprenderá a preparar sua máquina para desenvolver aplicações na nuvem.

quinta-feira, maio 21, 2009

Liberado Visual Studio 2010 Beta




Nessa segunda dia 19, foi liberado para download o Beta da nova versão da IDE de desenvolvimento de sistemas da Microsoft, o Visual Studio 2010.

Entre as novidades da nova versão estão:


  • Aprimoramento da interface gráfica: com uma organização mais clara, redução de complexidade, janelas e documentos flutuantes, editor melhorado.
  • Programação paralela: Agora disponível tanto para usuários de código nativo e gerenciado e com suporte embutido na própria IDE.
  • Gerenciamento do ciclo de vida de aplicações: Prometendo ferramentas para todos os envolvidos no projeto de software, desde arquitetos a programadores e testadores. Incluindo construção de novos tipos de diagramas com use cases e diagramas de sequência e atividade, um novo motor de testes e uma nova ferramenta de controle de workflow.

  • Desenvolvimento WEB: Novo motor de intellisense de Javascript,suporte a SilverLight,  "One click deployment" que permite publicar todo o site e suas dependências de uma só vez.
  • Cloud Computing: Windows Azure Tools já integradas por padrão na IDE.
  • Suporte nativo a mais Databases: Agora é possível utilizar as classes de acesso a dados nativos do .NET Framework para BDs baseados em IBM DB2 e Oracle.


Ficou interessado? Pode conferir o novo VS 2010 aqui.

Aprenda Cloud Computing com a Microsoft



Para quem quer aprender a programar para a nuvem sem muito esforço, a Microsoft disponibiliza uma área específica no portal MSDN (voltado para desenvolvedores de produtos microsoft) para o estudo das características e funcionalidades do Windows Azure, a plataforma para Cloud Computing da empresa, o desenvolvimento e deployment de aplicações para a nuvem e a integração com outros serviços, como o SQL Services e ferramentas de colaboração da série Live.

Chamada Azure Academy, essa área disponibiliza apresentações em forma de vídeos e transparências que guiam o estudante desde os conceitos introdutórios da estrutura e objetivos envolvidos no desenvolvimento da plataforma Azure até a distribuição de serviços e  aplicações na nuvem. O forte das apresentações é, sem dúvida, a linguagem de fácil entendimento e a presença de demontrações explicativas que facilitam o entendimento do conteúdo apresentado.

Para o desenvolvimento para Windows Azure, é utilizado o Visual Studio 2008 integrado com com o Windows Azure SDK e o conjunto de ferramentas para do Windows Azure para o Visual Studio.



sábado, abril 25, 2009

Oracle compra a Sun Microsystems




Uma das notícias mais bombásticas da semana, foi com certeza a compra da Sun, fabricante de produtos de grande renome como o banco de Dados MySQL, o sistema operacional Solaris e a linguagem de programação Java além de ter grande sucesso com a produção de hardware para servidores corporativos por US$ 7,4 bilhões pela Oracle, Gigante produtora da área de banco de dados.

Mas, quais os interesses por trás dessa fusao que promete abalar a comunidade de usuários de produtos da Sun?

A Oracle, com seus 85 mil funcionários em todo o mundo e faturamento fiscal em 2008 estimado em US$ 22,4 bilhões veio ao longos dos últimos anos investindo continuamente no desenvolvimento de aplicações corporativas e adquirindo rivais de mercado com ofertas tentadoras como foi o caso com a Peoplesoft, BEA, Hyperion e Siebel. O seu sistema de banco de dados, de mesmo nome, é tão conhecido no mundo empresarial pela robustez e confibilidade que 280 mil dos 320 mil clientes da empresa, devem-se a aquisição de licensas de uso do software para instalação em servidores, muitos deles provenientes da própria Sun.

Uma conclusão possível nesse ponto, seria a possibilidade de venda da tecnologia de hardware da Sun com sistema solaris em conjunto com o BD oracle de forma conjunta oque poderia representar uma economia para a empresa, mas dificultaria as negociações com parceiros como a HP, Dell e IBM. Uma alternativa seria o uso da tecnologia de hardware para criar infraestrutura necessária para a Oracle investir em áreas como SAAS (software as Service) e Cloud Computing.

Para a área de software, mais dúvidas permeiam. Uma delas seria a respeito do futuro do MySQL (adquirido pela Sun a pouco mais de um ano), um dos bancos mais utilizados na internet e de comunidade mais ativa, frente ao atual produto da empresa. Será que testemunharemos a morte de um BD tão querido quanto esse ou a transformação do mesmo em um sistema proprietário para a fúria da comunidade open-source?

Já para o Java e o Solaris, as coisas parecem estar mais calmas. Segundo um comunicado da Oracle, Java foi o software mais importante que a empresa já adquiriu. Uma conclusão lógica, afinal uma infinidade de softwares desenvolvidos usando a linguagem Java podem ser encontrados em praticamente todo o lugar, desde computadores de bordo de automóveis, celulares, PDA até aplicações muito ricas para Desktop e WEB. A Oracle, também demarcou a importância do Solaris em sua estratégia operacional.

Por fim, a gigante da área de bancos de dados declarou que a compra da Sun irá contribuir com mais de US$ 1,5 bilhão para o lucro operacional da organização e muito mais lucrativa que a compra da Peoplesoft, BEA e Siebel combinadas.

Agora, só o tempo dirá quais os impactos dessa negociação para os usuários dos produtos de ambas as empresas.


sexta-feira, março 13, 2009

Quer começar a programar em nuvem? Veja aqui as opções!

No artigo chamado Cloud Computing - Programando nas nuvens, explicamos um pouco sobre essa nova tendência na área de desenvolvimento de sistemas, além de explicar um pouco a respeito sobre os conceitos relacionados, bem como quem atualmente está investindo na área. Sendo assim, nesse post pretendo abordar uma nova vertente da Cloud Computing que tem um potencial de crescimento significativo, o desenvolvimento para Sistemas Operacionais em nuvem. Veja algumas alternativas para quem quer começar a "andar nas nuvens".

Windows Azure



Sem dúvida um dos assuntos mais comentados a respeito do desenvolvimento de S.O rodando na nuvem, foi a respeito da inclusão da Migrosoft nesse mercado através de sua nova plataforma para criar e executar aplicações web, chamada Windows Azure. Suas vantagens principais estão no uso de produtos conhecidos como o MS SQL Server que recebeu sua versão online batizada de SQL Services, o Visual Studio 2008 já com algumas ferramentas incorporadas para o desenvolvimento em Cloud Computing, além de integração com a série Live Services, um conjunto de serviços e blocos construtivos que podem ser usados na construção de web apps. Entretanto, o Windows Azure ainda está em fase beta e atualmente só é compátivel com aplicações criadas usando o .NET Framework. Quem estiver interessado em conhecer melhor o sistema pode dar uma olhada na versão beta localizada na Community Technology Preview.

Google App Engine



Atualmente quando se fala em cloud computing, é inevitável pensar no Google com todos os seus serviços web como Docs, Calendar, Gmail, Reader, etc..Tanto como é inevitável a entrada da empresa em um projeto tão interessante quanto o desenvolvimento de S.O para nuvem. A aposta do Google nessa área vem na forma do Google App Engine, atualmente gratuíto em sua fase Beta, ele disponibiliza 500MB em armazenamento para os usuários que segundo o google, em conjunto com o poder de processamento destinado ao recurso, são capazes de suportar sites de até 5 milhões de page views mensais. Atualmente, ele encontra-se entre os produtos mais limitados quanto à outras plataformas em nuvem, oferecendo apenas a possibilidade de desenvolver aplicativos usando a linguagem Python e banco de dados em DataStore, versão derivada do banco de dados Big Table, usado internamente na empresa. A estimativa é que futuramente a empresa lance versões pagas do produto com maiores recursos.Quem quiser conferir o Google App Engine e baixar o SDK, é só acessar a área reservada ao produto no website do Google.

EyeOS



O EyeOS é o mais novo candidato a ser o Linux da Cloud Computing. Trata-se de um projeto de software livre iniciado em 2005 por Pau Garcia-milá e que já abrange comunidades de desenvolvedores operando em 9 países. Apesar de não ser considerado um S.O em essência, por não permitir interação direta com o hardware, ele roda sobre Apache e PHP e permite ao desenvolvedor criar e executar aplicações web facilmente. Entrando no site do projeto, é possível baixar o kit de ferramentas (SDK) ou testar o sistema online.


quarta-feira, outubro 15, 2008

Cloud Computing - Programando nas Nuvens

cloud

Em muitos diagramas da informática, principalmente na área de redes de computadores, é comum retratar o ambiente diverso da internet como a figura de uma nuvem (cloud, em inglês) e não por acaso. Tal qual uma nuvem real, a internet apresenta uma estrutura maleável com centro indefinido e contornos em constante mutação. Logo, Cloud Computing passou a ser conhecido como o ato de se utilizar a internet como se a mesma fosse uma extensão de seu computador.

É uma tendência que vêm ganhando força ultimamente, principalmente com os investimentos realizados por gigantes como o Google, Yahoo!, Microsoft, IBM entre outras e objetiva de forma simples centralizar tarefas relativas a processamento de dados em um unico lugar. Na prática, o computador passaria a ser um pouco mais que uma porta de acesso à nuvem e os serviços oferecidos por ela, sem a necessidade de instalar pouco ou nenhum dado adicional, o que para uma empresa significaria uma boa economia em investimentos em hardware, backups e atualizações de softwares.

Entretanto, a tecnologia não é tão recente como aparenta ser, afinal ela é a base que sustenta grandes empresas como o Google, atual ícone da Cloud Computing, e que tornou o mesmo tão popular, seja por meio de seu famoso motor de busca (que vasculha a cada consulta 40 bilhões de páginas, selecionando as informações pertinentes e devolvendo-as ao usuário como links) ou atuais aplicativos on-line Gmail, Google Calendar, Google Docs, etc. Mas não só ela, o que impressiona na programação nas nuvens é a diversidade de soluções disponíveis, indo desde simples sistemas de armazenamento de dados, edição de fotos, editores de texto até mesmo sistemas operacionais! Pelo menos é o que prometeu no ínicio do mês Steve Ballmer, CEO da Microsoft. O S.O, provisoriamente chamado de Windows Cloud seria um projeto separado do Windows 7 e voltado para desenvolvedores de aplicativos WEB, já disponível antes do fim do ano segundo pronunciamento de Ballmer.

Mas, e como a Cloud Computing garante a segurança dos dados de seus usuários? Bom, isso é uma questão que ainda levanta polêmica entre os pesquisadores do assunto, embora a opinião geral seja que os riscos são mínimos para a área corporativa. Para eles, é mais vantajoso para pequenas e médias empresas manterem seus dados na nuvem do que armazena-los no HD de seus servidores. A explicação é que as empresas que oferecem serviços web geralmente possuem uma equipe especializada destinada a proteger os dados armazenados, sistemas robustos e atualizados de combate a vírus e invasões e backups frequentes, coisa que muitas empresas desse porte não tem condições de realizar por conta de baixos investimentos na área ou falta de pessoal capacitado.

Flexibilidade do Cloud Computing

Isso sem contar que a flexibilidade da internet, facilita o acesso aos dados tanto por computadores e notebooks até por celulares, PDAS e outros dispositivos digitais. O resultado de toda essa revolução seria por exemplo o fim de suítes de softwares, como o pacote Office da Microsoft, em virtude de serviços web gratuítos ou assinados períodicamente. Enfim, aparentemente vivemos mais um momento de mudança de conceitos com relação ao computador e a influência da web em nossas vidas. Ou talvez não? Mais uma vez na informática, a força dessa corrente só o tempo dirá.

Por Janio N. Lima