Implantações típicas

Os requisitos para a topologia de implantação do servidor do Windows Server AppFabric são altamente dependentes das necessidades comerciais e os requisitos dos aplicativos serão a hospedagem. Embora seja difícil considerar qualquer implantação única como típica e fornecer orientação prescritiva para ela, esta seção fornece orientações e recomendações para a implantação doAppFabric em seu ambiente.

Os seguintes tópicos de implantação serão discutidos:

  • Implantação única de servidor do AppFabric

  • Implantação de farm de servidor do AppFabric

  • Considerações de segurança de implantação para os recursos de caching do AppFabric

  • Cenários de implantação de recursos de caching do AppFabric

Implantação única de servidor do AppFabric

A implantação única de servidor ocorre durante a instalação do AppFabric em um único computador. Normalmente, essa implantação é usada em um ambiente de desenvolvimento onde ocorre todo o desenvolvimento de aplicativos em um único computador.

SQL Server

Como a expansão não é uma preocupação para um ambiente de desenvolvimento, a implantação do AppFabric pode ser configurada para usar uma instalação local do SQL Server Express para banco de dados de monitoramento e persistência.

Implantação de aplicativo

Embora a implantação do aplicativo possa ser realizada por meio do empacotamento de aplicativos e da implantação para o AppFabric, utilizando o MSDeploy, é mais provável que os desenvolvedores configurem seus projetos para utilizar diretamente o servidor local que está executando o IIS como um meio de hospedar aplicativos, pois isso envolve a quantidade mínima de etapas para hospedar um aplicativo em um ambiente de teste. No entanto, é recomendável que os desenvolvedores testem o empacotamento e a aplicação de aplicativos antes de migrarem para o ambiente de preparo ou de produção para garantir que o aplicativo empacotado sejam implantado corretamente.

Para obter mais informações sobre como implantar um aplicativo, consulte Implantando aplicativos.

Implantação de farm de servidor do AppFabric

Embora um computador com o AppFabric e SQL Server instalados seja suficiente para um ambiente de desenvolvimento, um ambiente de produção frequentemente consiste de diversos computadores em um farm de servidor e um ou mais servidores dedicados do SQL Server. Tal ambiente poderá utilizar também balanceadores de carga e consultas para gerenciar as mensagens de entrada, destinadas ao aplicativo, e clustering do SQL Server para alta disponibilidade.

Uma implantação de pequena escala do AppFabric pode ser iniciada com o AppFabric instalado em um único computador, porém pode aumentar para um farm de servidor onde os seus aplicativos são implantados em diversos servidores para criar uma aplicativo altamente distribuído. A expansão permite que você implemente soluções de balanceamento de carga para que o processamento de mensagens de entrada seja difundido em diversos servidores e o fornecimento de tolerância a falhas seja aplicado para fluxos de trabalho que utilizam a persistência.

Clustering do SQL Server

Apesar de não estar descrito com detalhes nesta seção, o clustering em bancos de dados é altamente recomendável para a proteção do failover. Para obter mais informações sobre o clustering de failover do SQL Server, consulte Planejamento para recuperação de desastres (https://go.microsoft.com/fwlink/?LinkId=131016).

Expansão de aplicativo durável

Ao lidar com um processo de longa execução é vital que o seu aplicativo seja capaz de sobreviver às reinicializações do sistema, falhas de hardware ou outra interrupções inesperadas do sistema. O AppFabric fornece um provedor de persistência padrão que pode ser aproveitado pelos aplicativos de fluxo de trabalho para fornecer persistência a aplicativos de longa execução.

Em uma implantação única de servidor, a persistência fornece a capacidade para que a instância de fluxo de trabalho retome a execução quando o servidor hospedado retornar ao estado de integridade. No entanto, em uma implantação de farm de servidor, o aplicativo pode ser retomado em qualquer computador qualificado em um farm de servidor. Além disso, se uma instância de fluxo de trabalho estiver sendo executada em um servidor e uma mensagem destinada para essa instância chegar em outro servidor, a persistência poderá mover a instância em execução para o computador que possui a mensagem pendente, de modo que ela possa ser processada pelo fluxo de trabalho.

Para obter mais informações, consulte Configurando persistência de Fluxo de Trabalho.

Isolamento de dados

A configuração padrão para o AppFabric é armazenar as informações de persistência e monitoramento em um banco de dados. Embora isso seja suficiente para o ambiente de desenvolvimento, um ambiente de produção normalmente exige um conjuntos de recursos mais robusto para o armazenamento de dados. O AppFabric permite que você crie bancos de dados múltiplos, separados, de persistência e monitoramento para suportar o isolamento de dados em diversos computadores que executam o SQL Server.

Como o AppFabric suporta a criação de diversos bancos de dados, você pode separar os dados não só por função (persistência e monitoramento), mas também por aplicativo. Se possuir um aplicativo que tenha requisitos de armazenamento de dados robusto, você poderá criar bancos de dados de persistência e monitoramento, associados especialmente a esse aplicativo ou serviço.

Para obter mais informações sobre a criação de bancos de dados adicionais, consulte Administração de banco de dados.

Implantação de aplicativo

Ao implantar um aplicativos a diversos computadores, é importante que a implantação seja realizada de maneira consistente e repetida. Para atingir essa meta, o AppFabric utiliza o MSDeploy para empacotar e implantar a configuração e o conteúdo de aplicativos da Web, sites ou servidores Web. O MSDeploy também pode ser usado para sincronizar os dados entre o site e o servidor Web para o computador local ou os computadores remotos em seu farm de servidor.

Para obter mais informações sobre como implantar um aplicativo, consulte Implantando aplicativos. Para obter mais informações sobre o MSDeploy, consulte Ferramenta de implantação da Web (https://go.microsoft.com/fwlink/?LinkId=151481).

Considerações de segurança de implantação para os recursos de caching do AppFabric

O sistema de cache distribuído do AppFabric foi desenvolvido para operar em um datacenter no perímetro de um firewall. Os servidores, descritos nesta seção, são o servidor que hospeda o local do armazenamento das configurações de cache, os servidores de cache, os servidores de aplicativo habilitados por cache, os servidores de desenvolvimento e o servidor principal de fonte de dados. Todos os servidores precisam ser organizados no mesmo domínio.

Como os dados de cache e as comunicações de TCP/IP entre os servidores de cache não são criptografados, o sistema de cache distribuído fica vulnerável a ataques mal intencionados que registra ou modifica o tráfego de rede.

Observação

O cliente de cache do AppFabric foi criado para residir na camada do aplicativo do seu ecossistema de aplicativos. Os usuários finais que ficam dentro ou fora do domínio da organização não dever ter acesso direto de rede aos servidores de cache.

Ao encerrar um servidor de cache, o programa de instalação do AppFabric poderá não remover todas as exceções de porta do firewall. Após o AppFabric ser desinstalado, é recomendável reaplicar a configuração padrão de firewall.

Cenários de implantação de recursos de caching do AppFabric

Para simplificar a discussão de opções de implantação, esta seção tem como foco três exemplos distintos:

  • Implantação do desenvolvedor. Implantação em um único computador, usada para desenvolver aplicativos habilitados por cache.

  • Implantação de médio porte. Instalação em vários computadores que não utiliza o SQL Server, com hosts principais que realizam a função de gerenciamento de cluster.

  • Implantação corporativa. Instalação em vários computadores que utiliza o SQL Server para armazenar configurações de cluster e realizar a função de gerenciamento de cluster.

A tabela a seguir resume o local em que os recursos de caching do AppFabric são instalados e como a função de gerenciamento de cluster é realizada.

Recurso de cache do AppFabric Implantação do desenvolvedor Implantação de médio porte Implantação corporativa

Local de armazenamento da configuração de cluster de cache

Pasta localmente compartilhada em uma estação de trabalho do desenvolvedor

Uma pasta de rede compartilhada em um servidor de arquivos

Banco de dados do SQL Server

Instalação do servidor de cache (serviço de armazenamento de cache do Windows e ferramenta de administração do Windows PowerShell)

A estação de trabalho do desenvolvedor

Um ou mais servidores de cache (limitados pelo máximo de conexões simultâneas da pasta)

Um ou mais servidores de cache

Assemblies do cliente de cache

Estação de trabalho do desenvolvedor

Um ou mais servidores de aplicativo

Um ou mais servidores de aplicativo

As configurações do cluster de cache podem ser armazenadas em uma pasta de rede compartilhada ou em um banco de dados do SQL Server. Para obter mais informações sobre cada uma dessa opções, consulte Opções de armazenamento de configuração de cluster (Cache do Windows Server AppFabric).

A função de gerenciamento de cluster pode ser realizada por hosts de lead ou pelo SQL Server. A partir de um ponto de vista de disponibilidade do cluster de cache, a melhor opção é utilizar o SQL Server. Para obter mais informações, consulte Hosts principais e gerenciamento de cluster (cache do Windows Server AppFabric).

Implantação do desenvolvedor

Com a implantação do desenvolvedor, todos os componentes necessários para criar um aplicativo habilitado por cache, inclusive o próprio cluster do cache, estão contidos na estação de trabalho do desenvolvedor. Essa implantação é a opção mais conveniente para a introdução aos recursos de cache do AppFabric.

Implantação de médio porte

Com a implantação de médio porte, o seu aplicativo pode aproveitar os benefícios de um cluster de cache distribuído. Você pode expandir facilmente o aplicativo para atender às demandas em crescimento da sua camada de aplicativos.

Como esse cenário de implantação não utiliza o SQL Server para armazenar as configurações de cluster, há algumas desvantagens. Alguns sistemas operacionais apresentam um número limitado de conexões simultâneas para pastas compartilhadas que eles podem suportar, influenciando diretamente no número máximo de hosts de cache que você pode ter no cluster de cache distribuído. O Windows XP, Windows Server 2003 e a versão de 32 bits do Windows Vista não permitem mais do que dez conexões simultâneas a uma pasta de rede compartilhada. É recomendável que você não utilize esses sistemas operacionais para armazenar as configurações de cache para clusters amplos.

Se você automatizar ou, de outra forma, tentar realizar instalações de servidor de cache paralelas, provavelmente haverá uma contenção em arquivos de configuração de cluster. A estratégia de instalação de servidor de cache mais confiável neste cenário é realizar somente uma instalação de servidor de cache por vez.

Como esse cenário não implanta o SQL Server, a instalação não exige que você adquira e instale o SQL Server, e crie um banco de dados de configuração de cluster para o seu aplicativo. Em termos de tempo e dinheiro, isso pode ou não ser uma economia de custos, dependendo do que você já tem disponível para o seu aplicativo. Ao utilizar a opção de armazenamento da configuração de cluster da pasta compartilhada, todos os servidores de cache no cluster de cache precisam ter uma conectividade de rede continua com a pasta de rede compartilhada.

Sem o SQL Server, somente os hosts principais podem realizar a função de gerenciamento de cluster. Como a maioria dos hosts principais precisam sempre ser executados para que o cluster de cache fique disponível, o cluster de cache nesse cenário é mais vulnerável às falhas de servidor. Esse cenário também complica a manutenção do servidor em relação à disponibilidade do seu aplicativo. Para obter mais informações, consulte Hosts principais e gerenciamento de cluster (cache do Windows Server AppFabric).

Implantação corporativa

Comparada com os outros cenários de implantação, a implantação corporativa oferece a melhor experiência em disponibilidade e compatibilidade. Ela exige um banco de dados do SQL Server, que pode não ser uma opção para alguns aplicativos.

Quando o SQL Server realiza a função de gerenciamento de cluster, o cluster poderá resistir à perda de tudo, com exceção de um servidor de cache, e continuar em execução. Assim como ao utilizar a opção de configuração de cluster da pasta compartilhada, os servidores de cache precisam de uma conectividade de rede contínua com o banco de dados do SQL Server

Observação

Assim que você interromper um servidor de cache, independentemente de ele estar ou não realizando tarefas de gerenciamento de cluster, você perderá os dados armazenados na memória daquele servidor. Para caches nomeados com recursos de alta disponibilidade habilitados, as cópias de dados perdidos permanecem em outros servidores no cluster e são rapidamente copiadas para um servidor secundário. Para obter mais informações, consulte Alta disponibilidade (Cache do Windows Server AppFabric).

Como nenhum dos servidores de cache nesse cenário está realizando a função de gerenciamento de cluster, a manutenção do servidor para aplicativos de alta disponibilidade é amplamente simplificada. Nenhuma reinicialização de servidor com sequência complexa é exigida. Para obter mais informações, consulte Hosts principais e gerenciamento de cluster (cache do Windows Server AppFabric).

A utilização do SQL Server é vantajosa em situações que exigem conexões simultâneas. Isso permite que as instalações paralelas de servidor de cache sejam realizadas continuamente, sem as limitações de tamanho de cluster da implantação de médio porte. Para obter mais informações, consulte Instalação das extensões de servidor de aplicativo para o .NET 4 (https://go.microsoft.com/fwlink/?LinkId=169172).

Consulte também

Conceitos

Visão geral da arquitetura
Opções de armazenamento de configuração de cluster (Cache do Windows Server AppFabric)
Configuração de cluster baseado em pasta compartilhada (Cache do Windows Server AppFabric)
Configuração de cluster baseado em SQL Server (Cache do Windows Server AppFabric)
Usando o Windows PowerShell para gerenciar os recursos de cache do Windows Server AppFabric
Hosts principais e gerenciamento de cluster (cache do Windows Server AppFabric)

  2011-12-05