Compartilhar via


Diagrama de arquitetura

AppFabric é uma evolução do Serviço de Ativação de Processos do Windows (WAS) e da função de Servidor de Aplicativos no Windows Server para hospedar e Gerenciar os Serviços WCF e WF. Dessa forma, o AppFabric está bem alinhado com .NET Framework 4 e utiliza vários recursos que são fornecidos como parte da principal funcionalidade da oferta do Framework, como persistência, monitoramento e hospedagem de serviços do WCF e WF. O AppFabric também é integrado com os Serviços de Informações da Internet (IIS), fornecendo ferramentas de gerenciamento e monitoramento no console de gerenciamento do IIS.

O seguinte diagrama arquitetural mostra as partes do AppFabric, bem como o .NET Framework 4 e os componentes do IIS que são usados pelo AppFabric:

Ilustração da visão geral da arquitetura

Neste tópico, percorreremos a arquitetura do AppFabric, fornecendo mais detalhes sobre cada uma das tecnologias descritas no diagrama de arquitetura.

Aperfeiçoando o Serviço de Ativação de Processos do Windows

Como o diagrama de arquitetura exibe as tecnologias base nas quais o AppFabric é criado, iniciaremos com o IIS e WAS.

IIS e WAS

A base na qual o AppFabric é criado é o ambiente de hospedagem robusto fornecido pelo IIS e pelo WAS. Aplicativos de hospedagem com o WAS fornecem vários recursos que são desejáveis a uma arquitetura orientada a serviços (SOA) como:

  • Ativação de aplicativos baseada em mensagens, que permite que os aplicativos iniciem e parem dinamicamente em resposta a mensagens recebidas.

  • Reciclagem robusta de processos de trabalho e aplicativos para manter a integridade dos aplicativos.

  • Configuração e gerenciamento de aplicativos.

  • Organização de aplicativos em site para endereçamento e gerenciamento. No momento da execução, os aplicativos são associadas a pools de aplicativos que definem os limites do processo de tempo de execução.

Para todos os recursos fornecidos, no entanto, a implantação, o gerenciamento e o monitoramento de serviços do WCF e WF não são fornecidos e a responsabilidade fica com o desenvolvedor de aplicativos, que fornecerá um veículo de implantação, uma orientação de gerenciamento e soluções de monitoramento personalizadas. Além disso, a hospedagem de um processo de execução longa, como um fluxo de trabalho no IIS e WAS, é um desafio devido à ativação sob demanda e a reciclagem de processo. A persistência de estado e ativação de host devem ser explicitamente configuradas pelo desenvolvedor e, se necessário, pelo aplicativo. O AppFabric fornece esses atalhos com ferramentas e serviços que permitem que você implante e monitore aplicativos facilmente, bem como configure recursos do ambiente de hospedagem.

Serviços e componentes de tempo de execução

O AppFabric fornece serviços, como a persistência do estado de um fluxo de trabalho com execução longa para um repositório de persistência, roteamento baseado em conteúdo e ativação baseada em configuração.

ASP.NET

Muitos dos recursos básicos que tornam o ambiente de hospedagem do WAS atraente, como domínios de aplicativos, gerenciamento de ciclos de vida, Monitoramento da Integridade, sistema de configuração comum e compilação dinâmica, são fornecidos pelo ASP.NET. O ASP.NET também fornece ativação baseada em mensagens para serviços do WCF e WF que recebem mensagens usando HTTP.

WCF e WF

Os serviços do WCF e WF fornecem blocos de construção para criar aplicativos SOA e são o foco do AppFabric. O WCF fornece um modelo de programação unificado para desenvolver aplicativos SOA que se comunicam pela Web, incluindo interoperabilidade com aplicativos criados usando outras tecnologias. O WF fornece um mecanismo de fluxo de trabalho que pode ser usado para implementar processos com execução longa.

Para obter mais informações sobre o WCF e o WF, consulte Windows Communication Foundation e Windows Workflow Foundation.

Bancos de dados de tempo de execução

Ao implementar persistência de estado para executar aplicativos, ou capturar informações de monitoramento, uma das primeiras considerações é a mídia de armazenamento de dados. Para aplicativos SOA, é especialmente crítico que esse armazenamento de dados seja robusto, seguro, escalável e altamente disponível. Como seus aplicativos podem consistir de componentes que são executados em vários servidores em um farm, o armazenamento de dados também deve ser facilmente acessível de vários servidores simultaneamente.

Para cumprir esses critérios, o AppFabric armazena todas as informações de persistência e monitoramento em um repositório de dados.

Observação

Por padrão, tanto os dados de persistência quanto os de monitoramento são armazenados no mesmo banco de dados. No entanto, você pode dividir esses dados em bancos de dados separados ou até mesmo criar bancos de dados de persistência e monitoramento adicionais para aplicativos específicos.

Para obter mais informações sobre os bancos de dados usados pelo AppFabric, consulte Administração de banco de dados.

Persistência

Um dos desafios da hospedagem de um aplicativo é garantir que ele possa suportar eventos, tais como falhas ou reinicializações do sistema. O AppFabric faz isso usando um provedor de persistência que permite que serviços do WF salvem seus estados no banco de dados de persistência e depois retomem a execução em um sistema íntegro, no caso de falha ou reinicialização de um sistema.

Além de fornecer durabilidade para falhas ou reinicializações do sistema, os serviços do WF com execução longa podem ser suspensos durante a execução normal para liberar recursos para outros aplicativos e retomarem a operação quando chegar uma mensagem que deve ser processada por uma instância persistida do fluxo de trabalho. Os serviços do WF também podem ser disparados para serem retomados após um intervalo específico, usando um timer durável que monitore o indicador de "execução" nas instâncias WF Persistentes e que retome a instância.

Para obter mais informações sobre persistência, consulte Conceitos de persistência.

Hospedagem

O AppFabric integra o ambiente de hospedagem dos serviços ServiceHost (host WCF) e WorkflowServiceHost (host WF) com o IIS e o WAS. Por exemplo, os dois hosts participam do desligamento e da reciclagem de appDomain, bem como dos processos de início automático do aplicativo. Embora a funcionalidade combinada do IIS e do WAS forneça um ambiente de hospedagem robusto para aplicativos do WCF e do WF, para beneficiar-se desses recursos o desenvolvedor deve dispensar esforço considerável para implantar e configurar um aplicativo. O AppFabric fornece um conjunto abrangente de ferramentas que permite que aplicativos sejam configurados de forma padrão, sem a necessidade de personalizar soluções de implantação ou procedimentos de configuração manual.

Para obter mais informações sobre como o AppFabric aproveita as tecnologias do IIS e do WAs, consulte Conceitos de hospedagem.

Monitoramento

Devido à natureza distribuída e separada de soluções criadas usando os serviços do WCF e WF, o monitoramento e a resolução de problemas geralmente é um processo difícil que requer a exibição de cada serviço específico e a correlação manual de eventos observados para obter uma visão geral do que está ocorrendo no aplicativo. Com o AppFabric, os eventos são coletados e correlacionados de diversas origens para fornecer uma exibição geral da execução de um processo. Esses dados são armazenados em um banco de dados, do qual podem ser recuperados usando ferramentas de monitoramento hospedadas no console de Gerenciamento do IIS ou nos cmdlets de Módulo do ApplicationServer no Windows PowerShell.

Para obter mais informações sobre monitoramento, consulte Conceitos de monitoramento.

APIs de gerenciamento

Para oferecer suporte a uma grande variedade de cenários de gerenciamento, o AppFabric fornece acesso a todas as funções de gerenciamento através do Módulo do ApplicationServer no Windows PowerShell como cmdlets. Essa implementação permite que a funcionalidade de gerenciamento seja usada de várias formas, por exemplo chamando cmdlets de forma interativa através do shell de linha de comandos do Windows PowerShell, criando scripts que chamam cmdlets ou chamando cmdlets de um aplicativo personalizado.

Para obter mais informações, consulte Ferramentas de gerenciamento.

Gerenciador do IIS

Para fornecer configuração e gerenciamento centralizados dos serviços do WF e WCF, o AppFabric fornece um conjunto poderoso de ferramentas de gerenciamento e monitoramento para serviços do WCF e do WF no Gerenciador do ISS. O AppFabric também usa MSDeploy para implantar serviços no ambiente de hospedagem do WAS. Você pode usar MSDeploy para implantar aplicativos que contêm serviços do WCF e do WF.

Observação

Toda a funcionalidade exposta no console de Gerenciamento do IIS baseia-se no Módulo do ApplicationServer no Windows PowerShell e é implementada como cmdlets do Windows PowerShell. Portanto, todas as tarefas executadas na interface do usuário do AppFabric podem ser incluídas em script.

Para obter mais informações sobre as extensões do AppFabric para o Gerenciador do IIS, consulte Ferramentas de gerenciamento.

Visual Studio

O Visual Studio 2010 fornece um ambiente de desenvolvimento poderoso que pode ser usado para criar aplicativos que contêm serviços do WCF e do WF. O Visual Studio 2010 também dá suporte direto a testes de serviços no AppFabric quando se pressiona F5 e permite criar pacotes de implantação para projetos, que podem ser importados diretamente usando-se MSDeploy em um ambiente do AppFabric.

Para obter mais informações sobre o Visual Studio 2010, consulte Visual Studio 2010. Para obter mais informações sobre como usar o Visual Studio 2010 com o AppFabric, consulte os seguintes tópicos:

Consulte também

Conceitos

Visão geral de arquitetura

  2012-03-05