sábado, 1 de outubro de 2011

Tech Ed 2011 - Microsoft

Olá pessoal,
entre os dias 29 e 30 de setembro estive na ultima edição do Tech Ed 2011 da Microsoft no Expo Center em SP. Diversos assuntos foram abordados pelos palestrantes, entre eles Cloud Computing, Windows Azure, SQL Server Denali ( a nova versão do banco de dados da Microsoft), XBOX 360, o ótimo Visual Studio LightSwitch, muito sobre o mundo DOT NET, Windows Server AppFabric e muitas outras coisas que irei postando aos poucos. O que também chamou a atenção está relacionado ao fato de que nada, ou quase nada se falou sobre a nova versão do Windows, denominada Windows 8, o que chega a preocupar, pois dela dependemos para que possamos direconar as novas aplicações e inovações. Muito provavelmente a Microsft ainda está preocupada com a baixa aderência do Windows 7 e a ainda incrivel base instalada do Windows XP em todo mundo e que foi lançada no histórico setembro de 2001. Para hoje separei o tema Cloud Computing, visto tratar-se de algo do qual todo mundo fala, poucos sabem exatamente o que é e vendo algumas palestras pudemos perceber que se trata de algo que realmente deve ser pensando com muito carinho, atenção e profundidade. Para aqueles que se acostumaram com aplicações on promise (em casa), ou mesmo no modelos ASP ou SaaS, recomendamos uma leitura mais aprofundada pois o tema é ainda mais polêmico e complexo do que realmente se apresenta. Resumindo o que acho do tema, basicamente algo muito simples (e que remonta dos antigos (ou atuais) mainframes onde as estações de trabalho dependiam 100% dos que a CPU disponibilizava, processava e distribuia de informação) e algo muito complexo que envolve um sem numero de variáveis e que deve ser minusiosamente pensado visto que tudo está disperso em qualquer lugar do planeta e deve endereçar no tempo certo, qualidade necessária, velocidade no minimo igual a uma aplicação caseira a qualquer momento e intensidade. O plataforma Windows Azure é uma das ferramentas apresentas pela Microsoft para a criação de aplicações na nuvem com garantia de escalabilidade e alta disponibilidade (pelo menos na teoria tudo aqui é muito bonito). Mas antes de qualquer decisão sobre levar (ou desenvolver) ou não sua aplicação para a nuvem enumero abaixo alguns quesitos que devem fazer parte de sua análise. A partir deste ponto o projeto poderá começar a ser analisado para suas devidas analises de custos, benefícios, retornos e riscos para a operação. De inicio posso garantir que são temas complexos e que requerem uma série de considerações técnicas e de negócio. 1-dados na aplicação - diz respeito aos estados possiveis da aplicação e seus modelos de replicação. Aplicações Stateless são providas para que mesmo numa queda do servidor de aplicação a aplicação continue trabalhando sem a percepção do usuário e saiba exatemente o que fazer com os dados gerados numa outra instancia. Outra consideração aqui se refere a possiveis uso de storages para replicação de dados. Fundamental para aplicações de missão crítica. 2 - instalação e configuração do balanceamento : se refere ao tipo de crescimento (escalabidade) previsto para aplicação. Scale Out significa o crescimento horizontal, ou seja, o incremento de servidores que garantam a performance e tempo de resposta da aplicação através de um load balance bem estruturado. Scale up significa o crescimento vertical dos servidores, incrementando capacidade de processamento através seja com mais memória RAM seja com mais processadores. 3 - dependência da aplicação - e aqui está um quesito super importante, relacionado a disponibilidade do serviço e quais as técnicas existentes para que isto não se torne um problema para o cliente final. O monitoramento também é algo fundamental e que deve ser considerado. O Windows ApprFabric Server é a ferramenta indicada para o monitoramento deste ambiente na nuvem. 4 - limite de latência - Para aplicações remotas não basta possuir um link adequado, é fundamental analisar como a aplicação se comporta e qual sua requisição da qualidade da latência do link. Quanto menor a frequencia dos fluxo dos pacotes, maiores serão os intervalos entre a comunicação remota da servidor de aplicação, estações de trabalho e banco de dados. 5 - conectividade - tema fundamental relacionado a infraestura disponivel para rodar a aplicação de forma satisfatória. 6 - sensibilidade dos dados - tema de extrema preocupação para todos que ainda tateiam quando o assunto é computação na nuvem. Basicamente trata-se da questão da segurança dos dados e de como e quais os riscos que isto pode trazer para o cliente, fornecedor e demais interessados. Importante lembrar que um dos tópicos da computação na nuvem prevê a virtualização dos ambientes (servidores, estações de trabalho, etc) sem a necessidade de deixar com que os dados fiquem expostos na nuvem. Desta forma podemos ter todo o processamento na nuvem enquanto que as informações podem permanecer um data center local ou mesmo on premise. 7 - regulatório - como bem sabemos a computação na nuvem prevê que as informações trafeguem por diversos lugares diferentes, o que muitas vezes significa dizer que a informação pode estar fora do seu país, ou seja, em suma estamos invadindo outros espaços com informações de alguma forma possam infringir leis especificas. Enfim é um tema ainda nebuloso e que requer ainda maiores estudos e definições. 8 - precificação - o discurso aqui é que Cloud Computing é igual a conta de energia, se paga pelo tempo e quantidade com se que usa. A Microsoft disponibiliza uma ferramenta que ajuda ao cliente fazer seus calculos. Só não sabemos ainda o quanto isto, na ponta do lápis, significa, Minha modesta opinião : particulamente não gosto de moda e nem acho que seja o caso. Apenas acredito em modelos hibridos, onde a topologia da aplicação deva prever destes aplicações fat client (onde o servidor e estações estejam locais), redes tradicionais, aplicações client servidor, modelo ASP controlado (private Cloud) chegando mesmo até as chamadas Public Clouds. Ou seja, no futuro as aplicações precisam estar preparadas para estes diversos cenários para atender à diversas necessidades e este será um dos elementos que irão garantir a sobrevivência das aplicações de mercado. e muita agua ainda vai rolar.. Como leitura recomendado segue o LINK : http://msdn.microsoft.com/pt-br/hh292576?ocid=otc-n-br-mba--ted_azure Visita também o site do evento - http://www.teched.com.br/
Logo mais volto para falar sobre este e outros temas, Wagner

Nenhum comentário: