A plataforma Azure da Microsoft

1.944 visualizações

Publicada em

Descrição da Plataforma AZURE da Microsoft
Email: David Chou david.chou@microsoft.com
blogs.msdn.com/dachou

0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
1.944
No SlideShare
0
A partir de incorporações
0
Número de incorporações
1
Ações
Compartilhamentos
0
Downloads
164
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

A plataforma Azure da Microsoft

  1. 1. Plataforma Windows Azure David Chou david.chou@microsoft.com blogs.msdn.com/dachouTradução: Prof. Eng. Sylvio Silveira Santoshttp://soa4you.wordpress.com
  2. 2. Tipos de Nuvens Sistemas Infrastrutura Plataforma Você administra Privados (Como Serviço) (Como Serviço) (On-Premise) Você administra Aplicações Aplicações Aplicações Runtimes Runtimes Runtimes Administrado pelo fornecedor Segurança & Integração Segurança & Integração Segurança & Integração Administrado pelo fornecedor Você administra Bases de Dados Bases de Dados Bases de Dados Servidores Servidores Servidores Virtualização Virtualização Virtualização Servidor HW Servidor HW Servidor HW Armazenamento Armazenamento Armazenamento Redes Redes Redes
  3. 3. Tipos de Nuvens Privativas Infraestrutura Plataforma (On-Premise) (Como Serviço) (Como Serviço)
  4. 4. Um Mundo Híbrido Consistencia e Controle Escalabilidade & DisponibilidadeNuvem Privada Nuvem Pública (on-premise) (off-premise)Desempenho em Tempo Real Redundancia e Resiliencia Segurança e Privacidade Alcance Global Customização Provisionamento Fácil Recursos Físicos Recursos Abstratos Heterogeneidade Homogeneidade
  5. 5. A Nuvem da MicrosoftAproximadamente 100 Centros de Processamento de Dados DistribuídosGlobalmente Quincy, WA Chicago, IL San Antonio, TX Dublin, Irlanda Geração 4 DCs
  6. 6. A Nuvem da MicrosoftCategorias de Serviços Serviços de Aplicações Serviços de Software Platform Services Serviços de Infraestrutura
  7. 7. A Plataforma Windows Azure  Escala da Internet, uma fábrica nas nuvens de elevada disponibilidade  Data Centers da Microsoft globalmente distribuidos  Certificações ISO/IEC 27001:2005 e SAS 70 – Certificação Tipo I e Tipo II  Consumo e utilização baseado em preço justo: classe empresarial SLA  Computação – auto-  Dados – escalabilidade  Service Bus – conectividade provisionamento de 64-bits; maciça e bancos de dados de aplicações on-premise; aplicações residentes em relacionais altamente Web Services amigáveis, containers em Windows consistentes; geo-replicação seguros, federados, através Server VMs; suporta ampla e geo-localização de dados de fire-walls e menssageria faixa de modelos de  Processamento – relacional, intermediária; queues de aplicação queries, buscas, relatórios, informações duráveis e de  Armazenamento – Tabelas analítica em dados fácil descobrimento com alta disponibilidade, estruturados, semi-  Controle de Acesso – blobs e filas com serviços de estruturados e não Identificação federada armazenamento em cache estruturados dirigida por regras;  Linguagens – .NET 3.5 (C#,  Integração – sincronização e federação AD; autorizações VB.NET, etc.), IronRuby, replicação de bases de baseadas em pedidos IronPython, PHP, Java, código dados on-premise com  Workflows – orquestrações nativo Win32 outras fontes de dados de serviços via atividades baseadas em REST
  8. 8. Preços  Computação  Ediçaõ Web (1GB)  Barramento de Serviços • $0.12 / CPU hora • $9.99 / mês • $0.15 / 100k mensagens  Armazenagem  Business Edition (10GB)  Controle de Acesso • $0.15 / GB / mês • $99.99 / mês • $0.15 / 100k tokens • $0.01 / 10k transações /  Largura de Faixa  Largura de Faixa mês • $0.10 in / GB • $0.10 in / GB  Largura de Faixa • $0.15 out / GB • $0.15 out / GB • $0.10 in / GB • $0.15 out / GB Virtual Machine instances Armazenamento de Blobs Ingresso/Egresso Host OS Windows Server 2008 x64 Armazenamento de Tabelas (to/from sòmente Guest OS Windows Server 2008 Enterprise x64 Múltiplas réplicas Internet) Hypervisor Hyper-V CPU 1.5 - 1.7 GHz x64 equivalent Memory 1.7GB Network 100MbpsTransient storage 250GB Balanceadores de carga, roteadores, etc. Gestão de Serviços Automatizados - Operações da Fabric Controller (deploy/upgrade/delete/scale) - Programação de balanceamento de carga
  9. 9. Garantia de Serviços O barramento Serviços de de serviços Tudo que está Seu serviço é As bases de armazena- (.NET Service rodando é conectado e dados são mento de facil Bus endpoint) monitorado acessado via conectadas acesso, com terá continuamente Web ao elevada conetividade respectivo conectividade externa Se o aplicativo Os papeis ou rotina for gateway na diversos de Internet Seus pedidos Solicitações corrompido, acesso na de de operação nós detectamos Internet tem Monitora- armazenagem de mensagem imediatamente conectividade mento serão serão e tomamos externa disponivel a processados processadas medidas cada 5 de forma bem de forma a corretivas minutos de sucedida serem bem intervalo sucedidas Gerenciamento Automático dos Sistemas >99.95% >99.9% >99.9% >99.9%
  10. 10. Beneficios DEMANDAS DE DEMANDAS DE OFERECIMENTOS DA PLATAFORMA NEGÓCIOS TECNOLOGIA WINDOWS AZURE • Solução efetiva em custos para gestão de recursos de TI • Menos infra-estrutura para comprar/configurar e Custos Mais Eficiencia suportar • TCO mais baixo Baixos • Custos previsiveis • Foco na disponibilidade de software eficiente e não em gerenciar infra-estrutura Permaneça Inovação • Monetização de novas ofertas rápidamente sem Competitivo investimento para cobranças ou outras tecnologias habilitadoras, como pagamentos. • Velocidade de desenvolvimento • Inter-operacionalidade Geração Rápida • Aproveitamento de IP existente de Novos Agilidade • Disponibilidade simplificada na Web Retornos • Escalonamento up ou down de acordo com necessidade do negócio • Acesso rápido ao mercado • Serviço exequivel Riscos • SLAs (Service Level Agreements) Exequibilidade Reduzidos • Segurança • Centros globais de processamento de dados
  11. 11. Plataformas de Escolha
  12. 12. http://www.azure.comRegistre-se no Portal deDesenvolvedores daPlataforma WindowsAzure Acesso ao Windows Azure Ferramentas para desenvolvedores White papers Amostras de aplicaçõesPlaneje aplicações piloto,provas de conceitos esessões de projetos dearquitetura com parceirosWindows Azure
  13. 13. Arquitetura de Aplicações
  14. 14. Modelos de AplicaçõesHospedagem Web Computação de Alto Desempenho  Infra-estrutura em escala maciça  Processamento paralelo e  Gerência de estouro e overflow distribuido  Sites temporários e ad-hoc  Modelagem e simulação maciçasHospedagem de Aplicações  Analítica avançada  Extensões “on-premise” Compartilhamento de Informação  Aplicações compostas  Repositorios comuns de dados  Agentes automaticos / jobs  Dados referenciadosHospedagem & Processamento  Knowledge Mgmt e descoberta  Renderização CGI Processos Colaborativos  Transcodificação de conteudo  Integração multi-empresarial  Streaming de midia  B2B e e-commerceArmazenamento Distribuído  Gestão de Suprimentos  Armazenamento externo e backup  Ciências da Saude e da Vida  Serviços em dominios especificos
  15. 15. Arquitetura de Aplicações em Escala da InternetProjeto Dados e Conteúdo  Escalonamento horizontal  De-normalização  Composição SOA  Particionamento lógico  Consistencia eventual  Distribuição em cache de memória  Tolerancia a erros (falhas esperadas)  Diversas opções de armazenamento de dados (lida com dados persistentes eSegurançca transientes, relacionais e não estruturados,  Autenticação com base em pedidos e texto e binario, leitura e escrita, etc.) controle de acesso Processos  Identidade federada  Componentes fracamente acoplados  Criptografia de dados e controle de chaves  Processamento paralelo e distribuidoAdministração  Comunicação assincrona distribuida  Automação direcionada por políticas  Idempotente (lida com duplicidade)  Percepção de ciclo-de-vida das aplicações  Isolamento (separação de atributos)  Trabalho com dados dinamicos e mudanças de configuração
  16. 16. Arquitetura de Aplicações em Escala da Internet Apresentação • ASP.NET C#, PHP, Java • Cache distribuído in-memory Serviços • .NET C#, Java, codigo nativo • Cache de memória distribuído • Processos assíncronos • Processos paralelos distribuídos • Armazenamento de arquivos transientes Conectividade • Enfileiramento de mensagens • Orquestração de serviços • Identitdade de federação SERVICE ACCESS WORK BUS CONTROL FLOWS • Controle de acesso com base em solicitações • Conectividade a serviços externos Armazenamento • Dados relacionais e transacionais • Bases de Dados federadas • Dados não-estruturados, de-normalizados • Particionamento lógico • Persistencia de arquivos e blobs • Armazenamento criptografado
  17. 17. Padrões de AplicaçãoAplicações Web em Nuvem Web Mobile Silverlight WPF Browser Browser Application ApplicationUsuário Jobs Enterprise ASP.NET Web Svc Application ASP.NET ASP.NET (Worker ASP.NET Application (Web Role) ASP.NET (Web Role) ASP.NET ASP.NET Service (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) (Web Role) (Web Role) (Web Role) (Web Role) (Web Role) Enterprise Data Web Svc Service Table Blob Queue Enterprise Storage Storage Storage Service Data Service Service Service Enterprise Access Identity User Application Reference Workflow Identity Service Bus Control Service Data Data Data Service Service Nuvem deNuvem ServiçosPrivativa Públicos
  18. 18. Padrões de AplicaçãoAplicação de Serviços Compostos Web Mobile Silverlight WPF Browser Browser Application ApplicationUsuário Jobs Enterprise ASP.NET Web Svc Application ASP.NET ASP.NET (Worker ASP.NET Application (Web Role) ASP.NET (Web Role) ASP.NET ASP.NET Service (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) (Web Role) (Web Role) (Web Role) (Web Role) (Web Role) Enterprise Data Web Svc Service Table Blob Queue Enterprise Storage Storage Storage Service Data Service Service Service Enterprise Access Identity User Application Reference Workflow Identity Service Bus Control Service Data Data Data Service ServiceNuvem ServiçosPrivativa Públicos
  19. 19. Padrões de AplicaçãoAplicação em Nuvem com Auxílio de Agentes Web Mobile Silverlight WPF Browser Browser Application ApplicationUsuário Jobs Enterprise ASP.NET Web Svc Application ASP.NET ASP.NET (Worker ASP.NET Application (Web Role) ASP.NET (Web Role) ASP.NET ASP.NET Service (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) (Web Role) (Web Role) (Web Role) (Web Role) (Web Role) Enterprise Data Web Svc Service Table Blob Queue Enterprise Storage Storage Storage Service Data Service Service Service Enterprise Access Identity User Application Reference Workflow Identity Service Bus Control Service Data Data Data Service ServiceNúvem ServiçosPrivativa Públicos
  20. 20. Padrões de AplicaçãoAplicação com Integração B2B Web Mobile Silverlight WPF Browser Browser Application ApplicationUsuário Jobs Enterprise ASP.NET Web Svc Application ASP.NET ASP.NET (Worker ASP.NET Application (Web Role) ASP.NET (Web Role) ASP.NET ASP.NET Service (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) (Web Role) (Web Role) (Web Role) (Web Role) (Web Role) Enterprise Data Web Svc Service Table Blob Queue Enterprise Storage Storage Storage Service Data Service Service Service Enterprise Access Identity User Application Reference Workflow Identity Service Bus Control Service Data Data Data Service ServiceNuvem ServiçosPrivativa Públicos
  21. 21. Padrões de AplicaçãoAplicações em Grade / Computação Paralela Web Mobile Silverlight WPF Browser Browser Application ApplicationUsuário Jobs Enterprise ASP.NET Web Svc Application ASP.NET ASP.NET (Worker ASP.NET Application (Web Role) ASP.NET (Web Role) ASP.NET ASP.NET Service (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) (Web Role) (Web Role) (Web Role) (Web Role) (Web Role) Enterprise Data Web Svc Service Table Blob Queue Enterprise Storage Storage Storage Service Data Service Service Service Enterprise Access Identity User Application Reference Workflow Identity Service Bus Control Service Data Data Data Service ServiceNuvem ServiçosPrivativa Públicos
  22. 22. Padrões de AplicaçãoAplicações Empresariais Híbridas Web Mobile Silverlight WPF Browser Browser Application ApplicationUsuário Jobs Enterprise ASP.NET Web Svc Application ASP.NET ASP.NET (Worker ASP.NET Application (Web Role) ASP.NET (Web Role) ASP.NET ASP.NET Service (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) ASP.NET (Web Role) (Web Role) (Web Role) (Web Role) (Web Role) (Web Role) Enterprise Data Web Svc Service Table Blob Queue Enterprise Storage Storage Storage Service Data Service Service Service Enterprise Access Identity User Application Reference Workflow Identity Service Bus Control Service Data Data Data Service ServiceNuvem ServiçosPrivativa Púbublicos
  23. 23. Arquitetura do Windows Azure NEGÓCIOS CONSUMIDORES INTERNET
  24. 24. Arquitetura do Windows Azure Fabric Fabric controller Compute Storage O Fabric Controller comunica-se com cada servidor dentro da Fabrica. Ele gerencia o Windows Azure, monitora cada aplicação, decide onde novas aplicações deverão rodar – otimizando a utilização do hardware.
  25. 25. Arquitetura do Windows Azure O Fabric Controller automatiza o balanceamento de carga e calcula o escalonamento de recursos Segurança e Características de Controle incluem armazenamento de encriptação, autenticação de acesso e criptografia “over-the-wire” com uso de HTTPS. Computação Serviços de Armazenamento Certificação com padrões da indústria Provê esclabilidade das Permitem aos clientes fazer fazem parte do roadmap do Windows aplicações. Desenvolvedores escalonamento e armazenamento de Azure. podem criar uma combinação de grandes quantidades de dados – em papeis da web e de trabalho qualquer formato – para qualquer Centros de Processamento de Dados local. Estes papeis podem ser duração no tempo, pagando apenas geograficamente distribuídos, replicados conforme necessário pelo que usam ou armazenam. “estado da arte” para para escalonamento e ampliação armazenamento de seus aplicativos e das aplicações e poder de dados, accessiveis através da Internet processamento computacional. a partir de qualquer ponto que se queira, e por meio de diferentes plataformas e sistemas, tablets e celulares.
  26. 26. Arquitetura do Windows AzureFabric Controller Interage com um agente inteligente “Fabric Agent” em cada máquina Monitora cada VM, aplicação e instância Realização de balanceamento de carga, check pointing e recuperação
  27. 27. Arquitetura do Windows AzureComputação OBJETIVO: ESCALABILIDADE Dois tipos de instâncias: Web Role e Worker Role As aplicações em Windows Azure são construídas Gerenciamento da escalabilidade por dentro de instâncias - instâncias de papéis na web (web meio da replicação de instâncias de role instances), de trabalho (worker role instances), trabalho de acôrdo com as ou uma combinação de ambas. necessidades. Permite às aplicações fazerem o escalonamento do número de usuários e processamento computacional de modo independente. Cada instância roda em sua própria VM (virtual machine), que é replicada de acôrdo com as necessidades
  28. 28. Arquitetura do Windows AzureArmazenamento OBJETIVO: ARMAZENAMENTO ELÁSTICO, COM DURABILIDADE Tabelas: dados Filas (Queues): mensagens estruturados Blobs: dados ou solicitações acessadas simples, que podem volumosos, de modo série, permitindoO armazenamento do Windows Azure não ser acessados interação de papeis “web-storage é um aplicativo gerenciado usando serviços de estruturados roles” e “worker-roles” dados ADO.NETpelo Fabric Controller (audio, video, etc)As aplicações Windows Azure podemusar armazenamento nativo ou o SQLAzureO estado de uma aplicação é mantidopelos serviços de armazenamento, demodo que os papeis dos usuáriospodem ser replicados conforme asnecessidades
  29. 29. Arquitetura do Windows AzureAdministração dos ServiçosOBJETIVO:ADMINISTRAÇÃO E CONTROLE DE APLICAÇÕES Fabric O Fabric Controller automatiza o gerenciamento de serviços
  30. 30. Opcções de Armazenamento de Dados SQL Server • SQL Server “on-premises” • Recursos: governança de Dedicado Hospedagem máquina • Segurança: SQL Server/OS RDBMS • Hospedagem SQL Server Roda seu próprio HA/DR/scale • Recursos: governance @ VM Base de • Security @ SQL Server/OS Dados SQL Roda seu próprio HA/DR/scale Azure Recursos (RDBMS) • Servidor DB virtual • Base de Dados ´logica de usuário (LUDB) • Governança de recursos: governance @ LUDB • Segurança @LUDBCompartilhado Baixo Alto “Fricção”/Controle Proposições de Valor: Proposições de Valor : Proposições de Valor : • Auto HA, Tolerância a Falhas • XSPs, Server Ops • Controle integral h/w – • Escalabilidade livre de atritos • SQL CLR tamanho/escala • Auto-provisionamento • 100% de compatibilidade • 100% de compatibilidade • Elevada compatibilidade
  31. 31. Arquitetura do SQL Azure RDBMS de armazenamento eAcesso flexivel aos dados em nuvem hospedagem simples • Crie aplicações cliente que acessam dados na nuvem via TDS – como se faz no SQL Aplicação ODBC, OLEDB, Aplicação Aplicação ADO.Net PHP, Server em sua empresa em Ruby, … Browser REST Cliente SQL Cliente* • Crie aplicações Web na nuvem em Azure utilizando bibliotecas padronizadas SQLClient com uso de ADO.NET • Crie interfaces baseadas em nuvem em Azure com uso de interfaces de dados Nuvem baseadas em REST com ADO.NET Data Services e Entity Framework HTTP+REST HTTPNivel baixo de atrito no provisionamento TDSdestinado ao armazenamento de dados Windows Azure • Interface Web para provisionamento simples Data Center Web App REST(Astoria) de base de dados SQL Client* ADO.Net +EF • Escalonamento suave de dados dentro das necessidades TDS + TSQL ModelData Center auto-gerenciável • Manutenção automatizada SQL Azure • Elevada disponibilidade e recuperação de dados automatizada * Acesso cliente habilitado usando TDS para ODBC, ADO.Net, OLEDB, PHP-SQL, Ruby, …
  32. 32. Projeto na Plataforma de Dados Conta • Objetivo: Alcance global Azure – Uma plataforma de Sistema de cobrança armazenamento contruida para escalabilidade extrema e baixo custo Possui uma ou mais • Arquitetura: Servidor – Uma conta Azure permite Metadados da Database acesso ao SQL Azure Unidade de autorização – Cada conta pode ter um ou Unidade geo-localização mais servidores lógicos • Implementados como servidores físicos múltiplos dentro de uma geo-localização Possui uma ou mais – Cada servidor lógico pode Base de Dados conter uma ou mais base de dados lógicas Unidade de Consistência • Implementadas como dados replicados e Contém Usuários, particionados através de múltiplas bases de dados físicas Tabelas, Vistas, etc…
  33. 33. Bases de Dados Lógicas de Usuário• Usa infraestrutura compartilhada na base de dados SQL database e mais: – Cada usuário da base de dados é replicado em um ou mais servidores (configuráveis segundo SLA) – Solicitações clientes são enviadas ao “servidor primário” para operações de leitura e escrita (com base na sessão SQL) – Segurança, bloqueio e isolamento reforçados na conexão SQL• Tecnologia estado-da-arte: HA de elevada escalabilidade – Detecção automática de falhas; solicitações-cliente redirecionadas para novos servidores primários em caso de falhas – Elevado padrão de garantia SLA por meio de replicação lógica (réplicas “hot standby”) – Gerenciamento automático, correção automática e balanceamento de carga através de um pool de recursos compartilhados• A Base de Dados SQL Azure dispõe de provisionamento e infra-estrutura de cálculos de custos e cobrançaBase de Dados SQL Azure : Provisionamento (Bases de Dados, Contas, Atribuições, …, Medições e Cobranças) Máquina 4 Máquina 5 Máquina 6 Instância SQL Instância SQL Instância SQL SQL DB SQL DB SQL DB Usuário Usuário Usuário Usuário Usuário Usuário Usuário Usuário Usuário Usuário Usuário Usuário DB1 DB2 DB3 DB4 DB1 DB2 DB3 DB4 DB1 DB2 DB3 DB4 Escalabilidade e Disponibilidade: Fabric, Failover, Replicação e Balanceamento de Carga Contratos relativos ao DBA podem ser alterados com fóco no gerenciamento presente nas políticas/lógicas de administração dos sistemas
  34. 34. Modelos de Segurança e ConexãoSegurança• Usa o modelo tradicional de segurança do SQL – Autenticação de logins, mapeamento de usuários e atribuições – Autorização para usuários e atribuições em objetos SQL• Suporte padronizado de logins SQL – Logins são sempre username + strings de password – O serviço é reforçado com uso de credenciais de segurança por SSL – Suporte (futuro) para Federação tipo AD, WLID, etc., como protocolos alternativos de autenticaçãoConexões • Conexões usando bibliotecas de clientes comuns – ADO.NET, OLE DB, ODBC, etc. • Clientes podem conectar-se diretamente às bases de dados • Ampla superfície para SQL suportada dentro dos limites da base de dados – Trabalho futuro deverá relaxar muitas destas restrições
  35. 35. Modelo de Provisionamento• Contas e provisionamento de srvidores – Acesso facilitado por portais baseados em APIs – Ex: Enumere meus servidores, mostre-me as métricas de utilização, etc• Cada conta possui um ou mais servidores – Ex: srv123.data.database.windows.net• Cada servidor possui uma base virtual de * * dados-mestre (Virtual Master Database) – Possui um sub-conjunto do SQL Server para uma interface-mestre na base de dados (Master DB Interface)• Cada servidor possui um ou mais logins em SQL – O sistema cria um logi sysadmin no “server creation”• Bases de Dados criadas usando “CREATE DATABASE” – Podem ser chamadas por sysadmin ou por qualquer pessoa com permissão de acesso à base de dados (create DB permission)
  36. 36. Compatibilidade do Servidor SQL• O servidor SQL possui muitos padrões para cumprimento de suas tarefas – A base de dados do SQL Azure suporta um subconjunto dos padrões integrais da SQL – Com foco na lógica e políticas de administração do sistema – Os padrões são aplicáveis tanto à base de dados do SQL Azure Database como do servidor SQL • Isto favorece a migração de aplicações on-premise para e do SQL Azure• A base de dados SQL Azure é um serviço multi- inquilino – Políticas para gestão de estrangulamento e de controle de carga – Examplos: limite nas dimensões do Banco de Dados, duração das transações, etc.Entrada do escopo para v1 Saída do escopo para v1 • Criar/Alterar/Cancelar algo na Base de • CLR Dados/Indexar/Examinar • Alternância de serviços (Service Broker) • Procedimentos armazenados (Transact-SQL) • Transações distribuídas • Disparadores (Triggers) • Pesquisas distribuidas (Distributed Queries) • Restrições • Análise espacial • Variáveis em tabelas, tabelas para controle de • Niveis DDL em todos os serviços tempo (#t) • Todas as vistas físicas e de catálogos em DDL • + muitos outros procedimentos
  37. 37. Cenários de Aplicação Aplicações dem Departamentos Aplicações Web Data Hubs Ofertas ISV/SaaS
  38. 38. Padrões Comuns e Problemas• Como podemos usar serviços em nuvem para conectar aplicações e serviços através de localidades de desenvolvimento? – Nuvem-ponte, serviços on-premises e hospedagem de ativos – Navegue na rede e nos limites de segurança, de modo seguro e descomplicado – Assuma controle da identidade e acesso através de organizações e provedoes de ID – Interopere através de linguagens, plataformas e padrões – Realize mediação através de protocolos e mapeamento de esquemas (schema mapping)• Clientes necessitam de uma maneira para: Conectar a pontos terminais Controle & acesso seguro Barramento de Controle de Serviços Acesso
  39. 39. Serviços .NET oferecem soluçõespara desenvolvedores enfrentando estes problemas Terminais de Conexão Service Bus Barramento de Serviços Access Control Service• Expõe serviços RESTful ou SOAP na Internet • Authorization management and federation através de firewalls e limites NAT infrastructure firewall firewall• Communicação bi-direcional entre • Provides internet-scope federated identity NAT integration for distributed applications aplicações e serviços por meio de interface inter-operavel • Use it to • Secure Service Bus communications• Permite escolher relés, filas roteadores e • Manage user-level access to apps across outros padrões e tipos de mensagem organizations and ID providers• Permite escalabilidade natural e exequibilidade acompanhando crescimento de aplicações e serviços Sua aplicação Aplicação de Cliente/Parceiro
  40. 40. Serviços .NET são Provedores de Soluções Controle de Acesso Access Control Service Serviço de Controle de 1. Define access 3. Map input claims control rules for a to output claims customer Service Bus Acesso•Network abstraction and virtualization infrastructure •Integra autorizações em aplicações com a finalidade de•Enables many common shapes of communication in an controlar “o que os usuários tem autorização para fazer” efficient and interoperable manner •Integra em um só local múltiplos sistemas de identificação•Use it to 6. Check claims através de organizações e provedores de ID •Connect applications across any network topology, including •Permite aplicar regras de controle de acesso com granulação firewalls and NAT boundaries fina e simplificadas •Exchange data between loosely coupled applications •Comunicações seguras no Barramento de Serviços •Permite elevada escalabilidade, com naturalidade e eficiência, 5. Msg w/token independentemente do crescimento das aplicações e serviçosYour app Customer/partner users & apps
  41. 41. Capacidade do Barramento de Serviços• Escopo de abrangência da Internet e redes em geral, ligando IP NATs e Firewalls com controle de acesso em todos os sistemas federados – Comunicação tipo Listen/Send a partir de qualquer dispositivo conectado à rede – Escopo da Internet para qualquer terminal, por “endpoint Naming” e Descoberta – NAT/FW Traversal via TCP, TCP/Direct, e HTTP Web Streams Espaço de Redes B Privativas ACS ACS Espaço da A ACS D Internet ACS ACS C
  42. 42. Barramento de Serviços: Capacidades Específicas• Transferência de dados brutos e estruturados, permitindo uso de qualquer forma comum de comunicação – Dados Brutos, Texto, XML, JSON, … – Datagramas, Sessões, Mensagens Correlacionadas – Unicast, Multicast A B Octet-Streams Texto XML A B SOAP JSON … … XML- RPC … A B
  43. 43. Barramento de Serviços: Capacidades Específicas• Mensageria de primitivos Built-In, para comunicação temporária desacoplada, roteamento e processamento de mensagens – Tradução para receptores ocasionalmente conectados do tipo Push/Pull – Metodos publish/subscribe e processamento de mensagem (após V1) Push Pull A B Push B Push C A D E
  44. 44. Padrão: Notificação de Fan-Out(Datagramas tipo Sessionless Unicast ou Multicast) Windows Azure, Datacenter, Hosting, Amazon EC2, Google App Engine “Worker Role” ACS App App Instance ACS Instance ACS ACS unicast unicast ACS ACS ACS multicast NATs ACS ACS Cliente Cliente Cliente Cliente Cliente Cliente
  45. 45. Padrão: REST Resource Management(Request/Response HTTP/HTTPS c/ payloads arbitrarios) Windows Azure, Datacenter, Hosting, Amazon EC2, Google App Engine Storage Storage Storage App App App Instance Instance Instance ACS ACS POST, PUT, DELETE POST, PUT, DELETE POST ACS PUT POST, PUT, DELETE DELETE ACS ACS GET On-Demand „Pull‟ Sync Cache Continuous „Push‟ Sync On-Premise App(s)
  46. 46. Padrão: Troca de Documentos(session-bound, app-level ack‟d em transfer. de documentos +notificações) Hosted In-House Outsourced ACS Storage Storage Storage Fronteira de Sistema de Estoque Sistema de E-Commerce / Remessa Pedidos Pronto Embarcado PO ACS SO ACS Entregue ACS ACK ACK ACS Pedido Aceito Experiência do Web Pedido processado Experiência do Client Cliente HiFi
  47. 47. Padrão: DMZ Externo(qualquer estilo de comunicação, atravessamento NAT para TCP e HTTP/S) Home Datacenter Interno Storage Storage Storage Devices Enterprise Enterprise App Enterprise App Home Automation Instance App Instance Instance or Home Media Server Balanceamento / Filter Reverse Proxy ACS ACS ACS http(s) / net.tcp net.tcp/direto Experiência Web ou Experiência Web ou Hi-Fi Cliente Hi-Fi Cliente
  48. 48. Padrão: Integrar Qualquer Coisa(Sessão limitada, tunelamento de binário bruto para transporte) Windows Azure, Datacenter, Hosting, Amazon EC2 (Windows) Socket Agent NP Agent App ASP.NET J2EE, JDBC, Instance ADO.NET JMS Socket HTTP/HTTPS TDS Passthrough Passthrough Passthrough ACS ACS w/ URI Rewriting Socket Bridge HTTP Bridge NP Bridge Exchange/Mail (SMTP/IMAP) Active Directory (LDAP) ERP, CRM, Custom Apps System Center (SNMP) .NET, J2EE, ROR, PHP SQL … … Server Infraestrutura On-Premise Aplicações & Serviços Dados On-Premise
  49. 49. ObrigadoTradução: Prof. Eng. Sylvio Silveira Santoshttp://soa4you.wordpress.com Direitos e Copyright : David Chou david.chou@microsoft.com blogs.msdn.com/dachou © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

×