Ticket #1007 (closed defeito: fixed)
Método list_sessions() sobrecarrega sessão de usuário.
Reported by: | niltonneto | Owned by: | niltonneto |
---|---|---|---|
Priority: | grave | Milestone: | Expresso 2.0.5 |
Component: | API | Version: | branch 2.0 |
Severity: | Keywords: | ||
Cc: | WorkGroup: |
Description
Quando um usuário admin clica em "Administrador-> Exibir sessões", o método list_sessions() salva em sua sessão, informações (usuario, ip, url, etc..) de todas as sessões ativas do Expresso. Aqui na Celepar, por exemplo, se um administrador entra nesse link, e no momento houver 5.000 sessões ativas, seu arquivo de sessão (/php_sessions/sess_...) poderá chegar a 2Mbytes.
Além disso, esse mesmo método sempre é executado ao expirar a sessão de qualquer usuário (Vide configurações do Servidor -> Tempo para expiração da sessões em segundos). Como resultado, exemplificando novamente, aqui na Celepar chegou a ter em /php_sessions mais 100 arquivos de sessão com 2.1Mb (210Mb), já que tais sessões, quando expiradas por tempo, aguardam o "cron" do servidor para que seus arquivos sejam deletados do /php_sessions.
É importante dizer que todos os arquivos de sessão que contém essas informações são arquivos velhos (sessões expiradas), exceto se for de um admin, e que tenha clicado no link Administrador -> Exibir sessões.