Pergunta

Cenário:

O site está hospedado em três servidores usando Iis em cada.

Todos os três servidores são agrupados usando o software de balanceamento de carga de rede que vem com o Windows Server 2003.

Todos os três sites estão configurados para armazenar o estado da sessão em um servidor separado que foi designado como um "servidor estadual".

Foi -me pedido para ampliar o "servidor estadual". Existe uma maneira de eu ter mais de um servidor estadual e sincronizar o estado entre eles; portanto, se um dos servidores estaduais descer, os outros poderão servir as informações do estado?

Foi útil?

Solução

Eu iria para Memcached. Você pode configurá -lo em cada um dos servidores da Web e, em seguida, pode escalá -lo com cada novo servidor da Web que adicionar. Já encontrei alguns clientes no CodePlex antes.

Outras dicas

Nós usamos Escala do servidor estadual Para isso, onde eu trabalho, e faz o trabalho maravilhosamente e é morto simples de configurar. Eu entendo que a Microsoft também está trabalhando em um produto semelhante chamado Velocidade, mas não tenho nenhuma experiência com isso.

A única desvantagem de Soss é que você precisa pagar por isso - mas não tive nada além de ótimas experiências interagindo com sua equipe de vendas e suporte. Se você acabar licenciamento, faça -me um favor e deixe -os saber que Daniel de Gratis enviou você;)

Você está procurando uma tecnologia de cache distribuída. A Microsoft Velocity é aquela que possui exemplos publicados pela Microsoft para substituir o estado de sessão ASP.NET padrão por velocidade que pode ser distribuída. Existem outros provedores de cache, como o Memcache.

Editar: Atualizando esta resposta para obter informações mais relevantes para o horário atual, esse tipo de funcionalidade é incorporado ao Windows Azure com o produto Appfabric. Algumas informações breves sobre isso podem ser vistas aqui: Lançamento virtual do Windows Server e Azure Appfabric

O banco de dados da sessão em um servidor SQL pode ser facilmente dimensionado com pequenas alterações de código e configuração. Você pode colar as sessões do ASP.NET em um banco de dados de sessão e independentemente de qual servidor da Web em sua fazenda serve a solicitação, o seu mapeamento de servidor SQL State baseado em ID de sessão funciona impecável. Esta é provavelmente uma das melhores maneiras de ampliar o estado da sessão do ASP.NET usando o SQL Server. Para mais informações, leia o link

True Scaleout Model for Session State

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top