Pergunta

Eu adicionei a ServidherSessionTimeout= 3 no arquivo de propriedades de trabalho, eu editei isso no servidor foi e reiniciei o aplicativo, mas quando eu testar o aplicativo e mantê-lo ocioso por 3 minutos, eu não consigo ver o tempo de sessão do servidorOut automaticamente, há algo que precisamos chamar o cliente móvel para verificar se o tempo de sessão do servidor é feito ou não.Por favor, ajude

obrigado djrecker

Foi útil?

Solução

Você poderia tentar desativar o batimento cardíaco usando

wl.client.setheartbeatinterval (-1)

Talvez durante a inicialização do seu aplicativo

Documentação em:

http://pic.dhe.ibm.com/infocenter/wrklight/v6r0m0/index.jsp?topic=%2fcom.ibm.worklight.help.doc%2fapiref%2fr_wl_client_setheartbeatinterval.html .

com que o tempo limite da sessão pode funcionar com o aplicativo em primeiro plano.

Outras dicas

Por favor, olhe para a seguinte documentação para obter uma melhor compreensão de como o ServidSessionTimeout e a propriedade Heartbeat se afetaram, bem como outros mecanismos de ajuste:

http://pic.dhe.ibm.com/infocenter/wrklight/v6r0m0/index.jsp?topic=%2fcom.ibm.worklight.help.doc%2fadmin%2fc_optimizing_and_tuning_of_ibm_wl_server.html < / p >.

Especificamente a seção "Configuração interna do servidor de trabalho":

"Considere os seguintes fatores:

  • Uma sessão é um objeto armazenado na memória do servidor para cada dispositivo de conexão. Entre outras coisas, ele armazena informações de autenticação. O número de sessões ativas é a diferença entre o número de sessões abertas e o número de sessões que estão perdendo por causa da inatividade. A propriedade ServidherSessionTimeout configura o tempo limite da sessão e afeta o consumo de memória do servidor. O tempo limite da sessão padrão é de 10 minutos.
  • A propriedade Mobile Client "Heartbeat" faz com que o cliente móvel ping o servidor enquanto o aplicativo estiver em primeiro plano. Esse recurso impede que a sessão do servidor expire. Quando um aplicativo móvel é executado em segundo plano, ele não interage mais com o servidor ou envia um "batimento cardíaco". A sessão do servidor cai após o período de tempo limite da sessão do servidor especificado.
  • Por exemplo, suponha que cada minuto 1.000 usuários iniciam uma sessão contra o servidor. Mesmo que saiam do aplicativo após 3 minutos, suas sessões permanecerem ativas no servidor por 10 minutos, deixando 10 x 1.000= 10.000 sessões ativas. "

Se o aplicativo estiver em primeiro plano, uma mensagem de pulsação será enviada para o servidor e a sessão não será expulsar. Assim, o aplicativo deve ser colocado em segundo plano para o tempo limite para ocorrer. Se isso não ajudar, por favor, tente o teste por um período de 10 minutos, Como este é o valor de tempo limite da sessão padrão.

Normalmente, o valor do servidsessiontimeout é maior que o intervalo de pulsação para que a sessão seja mantida viva quando ociosa e contanto que o aplicativo esteja em primeiro plano. Então, desde que o aplicativo esteja no Foregraound, Por design, nunca invalidará a sessão. Mas, por outro lado, se for baseado, então não há batimentos cardíacos e depois após o padrão 10 min no estado de fundo, a sessão é invalidado.Esta é a intenção aqui.

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