Provedor de estado de sessão ASP.NET multirregional para NCache

Muitos aplicativos ASP.NET hoje são implantados em configurações de várias regiões (multi datacenter) na nuvem ou no local. E, com esses aplicativos, muitas vezes você precisa redirecionar os usuários de uma região (datacenter) para outra. Mas você não pode perder nenhum estado de sessão ASP.NET no processo.

As implantações multirregionais geralmente preferem manter as sessões do usuário na mesma região em que foram criadas. Essencialmente, eles não se envolvem em balanceamento de carga entre regiões no nível de solicitação do usuário. Mas, com bastante frequência, você precisa enviar usuários para outras regiões pelos seguintes motivos:

- Equilibre a carga entre as regiões se uma região estiver sobrecarregada
- Derrubar uma região para manutenção

No entanto, você não pode fazer nada disso de uma maneira em que o estado de sessão do ASP.NET seja perdido. Uma maneira de resolver esse problema é replicar todas as suas sessões ASP.NET para várias regiões. NCache fornece o recurso de Replicação WAN para isso.

Mas, em muitos casos, você pode não querer replicar todas as sessões ASP.NET apenas para aumentar 10-20% dos usuários. Em vez disso, você só quer que o estado de sessão ASP.NET "se mova" quando o usuário for movido de uma região para outra.

Provedor de estado de sessão ASP.NET multirregional para NCache tem a inteligência para lidar com todos esses casos. Ele permite que você especifique todas as regiões em seu arquivo web.config e, quando um usuário é redirecionado para outra região, sua sessão ASP.NET é movida do cache distribuído da região de origem para o cache distribuído da região de destino.

NCache é um cache distribuído de código aberto extremamente rápido e escalável para .NET. Ele lida com cargas de transações extremas, permitindo que você adicione mais servidores de cache em tempo de execução e dimensione linearmente. NCache também fornece replicação de cache inteligente para que você não perca nenhum estado de sessão ASP.NET se um servidor web ou um servidor de cache ficar inativo.

doc: Provedor de estado de sessão ASP.NET multirregional para NCache


Cache espelhado

NCache permite que você defina um cache de estado de sessão ASP.NET primário e vários secundários em seu ASP.NET web.config como a seguir. Observe que para cada região, o "primaryCache" é diferente.

<ncache>
  <sessionLocation>
    <primaryCache id="LondonCache" sid-prefix ="LDC"/>
    <secondaryCache id="NewYorkCache" sid-prefix="NYC"/>
    <secondaryCache id="TokyoCache" sid-prefix="TKC"/>
  </sessionLocation>
</ncache>

Todas as sessões ASP.NET são originalmente armazenadas em seu "primaryCache". Em seguida, quando o usuário é transferido para outra região, o provedor de estado de sessão ASP.NET multirregional para NCache nessa região percebe que esta sessão ASP.NET é de outra região. E, ele se conecta ao "secondaryCache" correspondente e move a sessão ASP.NET para seu "primaryCache" para que esteja disponível a partir daqui.

Benefícios do provedor de estado de sessão ASP.NET multirregional para NCache

Em primeiro lugar, não há necessidade de programação para usar NCache como seu provedor de estado de sessão ASP.NET multirregional. Você simplesmente modifica seu web.config e especifica NCache como seu Provedor de Estado de Sessão (SSP). Veja detalhes em Configurando o provedor de estado de sessão ASP.NET multirregional para NCache. A seguir estão alguns dos benefícios de usar NCache como seu provedor de estado de sessão ASP.NET multirregional:

  1. Replicação de WAN não necessária: Como a maioria das sessões ASP.NET não será referenciada em mais de uma região, geralmente não há necessidade de replicá-las na WAN apenas porque você pode transferir 10 a 20% delas para outras regiões. Replicação de WAN tem um custo de consumo de largura de banda associado a ele. A Replicação WAN é mais apropriada para o cache de dados do aplicativo.

  2. Alta disponibilidade entre regiões: Agora você pode derrubar uma região (datacenter) sem afetar negativamente nenhum de seus usuários. Basta redirecioná-los para outras regiões e NCache move suas sessões ASP.NET sem problemas.

  3. Escalabilidade entre regiões: Se alguma região (datacenter) estiver sobrecarregada, você poderá redirecionar não apenas novos usuários, mas também os existentes para outras regiões sem perder suas sessões ASP.NET. NCache move suas sessões ASP.NET sem problemas.


O que fazer a seguir

© Copyright Alachisoft 2002 - . Todos os direitos reservados. NCache é uma marca registrada da Diyatech Corp.