Tivemos que criar uma solução no trabalho para fazer lançamentos diurnos de nosso aplicativo de intranet, mantendo 100% de tempo de atividade. Isso ocorre porque fazemos builds durante o dia com correções de bugs de alta prioridade que precisam sair no mesmo dia.
Uma opção sugerida para mim estava usando o balanceamento de carga de rede com dois sites no mesmo servidor, que é realmente uma ótima solução para as nossas necessidades (não podemos pagar por outro servidor com o mesmo hardware, eles são £ 5k + para nossa configuração).
Então, dei uma olhada no artigo onde ele afirma o seguinte :
For session state to be maintained across different web servers in the web farm, the application path of the website (for example. \LM\W3SVC) in the IIS metabase should be identical in all the webservers in the web farm.
Este é um problema, pois os caminhos do aplicativo terão para serem diferentes se o mesmo site tiver NLB no mesmo servidor. Nós precisamos para manter o estado da sessão nos dois sites (ao contrário dos servidores da Web), caso contrário, seremos inundados com chamadas de usuários irritados.
Então, podemos configurar dois sites, em um servidor que usa NLB e pode manter todo o estado? Os sites são idênticos, a propósito, apenas um será mais recente para correções de bugs.
EDIT (RESOLVIDO)
Então, seguindo isso, eu tive uma busca para encontrar este artigo . Ele descreve problemas relacionados ao uso da opção SQLServer
em sessionState
em seu web.config. Funciona muito bem, exceto por uma coisa; os dados da sessão não estão mais sendo armazenados, o que quebra toda a segurança para nós. Em Session_Start
do meu arquivo Global.asax, eu tenho um código de chamada DB que define os dados da sessão que são usados em todo o site da intranet para acesso rápido aos detalhes do usuário.
<sessionState mode="SQLServer" sqlConnectionString="Data Source=localhost;Integrated Security=True" />
É por causa dos problemas de acesso ao banco de dados ou por causa do sessionState
?
EDIT EDIT
Ok, achei que não tinha reiniciado o serviço da web depois de brincar com a autenticação que causou a quebra. Portanto, a última coisa que preciso saber é alternar entre os sites enquanto estou apontando para o mesmo local. Então digamos que temos um URL do link que apontou para o "CompanyIntranet1" e também tivemos um site de "CompanyIntranet2" no IIS, como obteríamos < um link href="http: // minhaempresa /"> para apontar para "CompanyIntranet2"?