Pergunta

Hoje eu tenho confundido com 2 questões relacionadas com a HttpApplicationState da ASP.net. Minhas perguntas são as seguintes

  1. Se eu usar um StateServer para o meu gerenciamento de sessão (o material gerenciamento de sessão fora proc que eu quero usar para o meu implantação jardim web), é seguro assumir que o HttpApplicationState (estou acessando via Sistema .Web.UI.Page.Application propriedade) também é armazenado no interior do StateServer , assim como Session? Então, se minha workerprocess A escreve um valor de "10" para o Page.Application, outro pedido em execução no workerprocess B em algum momento posterior deve ver este "10" para a mesma chave-é correto?

  2. Um dos meus companheiros desenvolvedor me disse que ele encontrou em seu teste, em um cenário StateServer, se ele tem 100 entradas de valor-chave inseridos no Page.Session então quando ele tenta ler qualquer um dos a chave de um pedido diferente, o workerprocess traz todo o 100 entradas para o espaço de memória workerprocess ativa e, em seguida, serve a chave que foi realmente convidado pelo pedido. é verdade?

Seria muito aprecio se alguém poderia me ajudar a remover minhas confusões a este respeito.

Obrigado!

Foi útil?

Solução

  1. StateServer suporta estado de sessão única, estado do aplicativo é limitado para o AppDomain.

  2. O StateServer armazena uma serialização de uma Session. Não tem nenhuma maneira de saber como o acesso de um valor de chave específico. Quando o acesso a sessão é re-hidratado para a aplicação que exija que e é usada como dados de sessão normal para o período de duração do pedido.

Outras dicas

  1. Tanto quanto eu sei o fora do servidor estado do processo não armazena HttpApplicationState dados. Você pode testar isso facilmente com certeza, mas eu duvido que ele faz.

  2. Eu não acho que isso é verdade. O armazenamento de sessão é basicamente um hashtable. Olhando-se uma única chave em um hashtable só deve retornar o valor associado. Você não deve ver o comportamento que você descreve. Novamente, você deve ser capaz de testar isso facilmente.

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