Quanto a sua observação de ter muitas requisições de acordo com o número de usuários do sistema, eu também tenho essa interrogação na cabeça
2011/9/1 Leonardo Ribeiro <leojribe...@gmail.com> > Rafael, > > Toda informação é válida. Eu tenho muito mais experiência em Java do que em > Flex e quando surgiu essa necessidade a solução do Rodrigo me pareceu e > parece muito interessante. > Quanto a usar Producer/Consumer e SharedObject eu nunca utilizei então > infelizmente não tenho uma opinião a respeito mas vou atrás de mais > informação eles. > De repente é uma alternativa. > Se puder dar uma breve explanada de como funciona o esquema de > Producer/Consumer e SharedObject pra mim seria de grande valia. > > Att > > > > 2011/9/1 Rafael Bandeira Rodrigues <rafab...@gmail.com> > >> Ok isso seria um ponto, mas a verificação do estado login simultaneo da >> para resolver com o Producer e Consumer e o proprio SharedObject. >> >> Aqui por exemplo tenho na aplicação, a criação do producer e consumer >> mediante o login que é feito por RemoteObject para uma consulta SQL que me >> retorna os dados do login a serem guardados no SharedObject. o Producer e >> Consumer tem esse controle de login para o modelo SaaS. Não cheguei a testar >> se o login feito com um intervalo longo existe esse reconhecimento de >> duplicidade, alias vou testar, mas acredito que isso funcione como o >> controle. >> >> Enfim como falei estou só colocando minhas experiencias e tentando >> descobrir novos caminhos >> >> >> Obrigado, >> >> Rafael Bandeira Rodrigues >> Chief Executive Officer >> FlagNet - Soluções em Tecnologia >> http://www.flagnet.inf.br/ >> >> Adobe ColdFusion 8 Certified Expert >> Adobe ColdFusion MX 7 Certified Developer >> Adobe Certified Professional >> Adobe Certified Instructor >> Adobe Certified Expert >> Fusebox - BRASIL >> http://www.fusebox.com.br/ >> RafaBand - BlogSpot.com >> http://rafaband.blogspot.com/ >> FlagNet - Twiter >> http://twitter.com/flagnet/ >> >> "Pensar apenas ou desejar somente nunca levou ninguém a lugar nenhum. É >> necessário também a ação" - William Shakespeare >> >> >> >> Em 1 de setembro de 2011 14:21, Leonardo Ribeiro >> <leojribe...@gmail.com>escreveu: >> >> Rodrigo, >>> >>> Entendi, mas no caso de eu precisar realmente "dar logout" no usuário >>> depois de certo tempo sem atividade essa abordagem não vai funfar neh? >>> >>> @Rafael >>> >>> Ele mantém o usuário no server para poder verificar no ato de um login se >>> tal usuário já está logado no sistema. >>> >>> >>> >>> >>> 2011/9/1 Rafael Bandeira Rodrigues <rafab...@gmail.com> >>> >>>> Rodrigo a título de curioside, até porque esse assunto me interessa. >>>> >>>> Do ponto de vista "funciona" eu entendi a solução, mas do ponto de vista >>>> "solução" imagino que gere um problema. se você faz uma requisição a cada >>>> 5min para cada usuário para manter ele logado, isso não pode gerar um >>>> problema de acessos? se eu colocar 300 usuários dentro da aplicação isso >>>> gera 1 ping por segundo, e me gera uma necessidade de ter um server com >>>> maior capacidade de processamento. >>>> >>>> Por outro lado, tirando funcionalidades como chat ou living data não >>>> vejo porque manter o user no server, uma vez que é possivel ter esse tipo >>>> de >>>> recurso de login atraves do SharedObject. Exsite algum beneficio nessa >>>> session no server? >>>> >>>> >>>> >>>> Obrigado, >>>> >>>> Rafael Bandeira Rodrigues >>>> Chief Executive Officer >>>> FlagNet - Soluções em Tecnologia >>>> http://www.flagnet.inf.br/ >>>> >>>> Adobe ColdFusion 8 Certified Expert >>>> Adobe ColdFusion MX 7 Certified Developer >>>> Adobe Certified Professional >>>> Adobe Certified Instructor >>>> Adobe Certified Expert >>>> Fusebox - BRASIL >>>> http://www.fusebox.com.br/ >>>> RafaBand - BlogSpot.com >>>> http://rafaband.blogspot.com/ >>>> FlagNet - Twiter >>>> http://twitter.com/flagnet/ >>>> >>>> "Pensar apenas ou desejar somente nunca levou ninguém a lugar nenhum. É >>>> necessário também a ação" - William Shakespeare >>>> >>>> >>>> >>>> Em 1 de setembro de 2011 10:18, Rodrigo Valentim < >>>> rodrigo.valen...@gmail.com> escreveu: >>>> >>>> Sim. O Tomcat remove sua sessão apos o timer.. meu timer aqui é de >>>>> 5minutos... então, dessa forma o usuário pode passar 1 hora olhando pro >>>>> monitor e a sessão não cai devido ao metodo pingSession() que existe no >>>>> java... esse metodo é apenas para manter a comunicação viva... e assim, a >>>>> sessão também (imagine você preenchendo um formulario que só manda pro >>>>> java >>>>> qdo acaba tudo... a sessão vai morrer, então você implementa um timer no >>>>> flex que faz uso do remoteObject chamando esse metodo pingSession() (ou >>>>> qualquer outro nome). >>>>> >>>>> Exatamente desta forma, consegui resolver meu problema para guardar o >>>>> usuário logado... nunca mais tive problemas com isso! >>>>> >>>>> >>>>> >>>>> Em 31 de agosto de 2011 16:11, Leonardo Ribeiro <leojribe...@gmail.com >>>>> > escreveu: >>>>> >>>>> @ Rodrigo >>>>>> >>>>>> Após ler as opiniões e sugestões dos colegas da lista resolvi testar a >>>>>> sua solução e tenho algumas perguntas: >>>>>> >>>>>> Se eu subo o tomcat e faço o login na aplicação, o usuário é colocado >>>>>> na sessão e se fico mais do que o tempo >>>>>> configurado para o timeout o usuário é retirado de (usuariosLogados) e >>>>>> (abaixo o log) >>>>>> >>>>>> FlexClient destruido: 63016449-9108-234B-F067-F4F2C10DD6B8 Wed Aug 31 >>>>>> 15:53:01 BRT 2011 >>>>>> Sessão destruida: Wed Aug 31 15:53:01 BRT 2011 >>>>>> Sessão criada: Wed Aug 31 15:53:01 BRT 2011 >>>>>> FlexCliente criado: 63016449-9108-234B-F067-F4F2C10DD6B8 Wed Aug 31 >>>>>> 15:53:01 BRT 2011 >>>>>> >>>>>> FlexClient e sessao destruida e recriada... >>>>>> >>>>>> Se eu continuo a não utilizar no console eu vejo o mesmo log >>>>>> >>>>>> FlexClient destruido: 63016449-9108-234B-F067-F4F2C10DD6B8 Wed Aug 31 >>>>>> 15:59:15 BRT 2011 >>>>>> Sessão destruida: Wed Aug 31 15:59:15 BRT 2011 >>>>>> Sessão criada: Wed Aug 31 15:59:15 BRT 2011 >>>>>> FlexCliente criado: 63016449-9108-234B-F067-F4F2C10DD6B8 Wed Aug 31 >>>>>> 15:59:15 BRT 2011 >>>>>> >>>>>> É isso mesmo? >>>>>> >>>>>> Outra coisa é que mesmo eu ficando tempo sem usar se eu tentar por >>>>>> exemplo fazer >>>>>> um cadastro eu consigo sem problema... >>>>>> >>>>>> >>>>>> >>>>>> 2011/8/31 Pedro Augusto Clemente de Melo <pedro.p...@gmail.com> >>>>>> >>>>>>> Leonardo, >>>>>>> >>>>>>> Há pouco mais de um mês estava com o mesmo problema. Devo te avisar >>>>>>> que não é algo tão trivial. Trabalho com um projeto com configurações >>>>>>> bem >>>>>>> semelhantes ao seu (uso Flex3 ao invés de 4). >>>>>>> >>>>>>> No BlazeDS existem classes chamadas "FlexSession" e "FlexContext". >>>>>>> Com essas classes, no Java você consegue guardar uma referência para >>>>>>> cada >>>>>>> instância de um cliente Flex que você tiver. >>>>>>> >>>>>>> Esta referência é por instância de browser no cliente (duas abas do >>>>>>> firefox são uma mesma FlexSession e duas janelas são duas FlexSessions, >>>>>>> não >>>>>>> sei como ficaria no caso do Chrome onde você brinca com as abas >>>>>>> jogando-as >>>>>>> de uma janela para outra). >>>>>>> >>>>>>> A partir disso é possível implementar o login, logout e o timeout por >>>>>>> sessão inativa. O problema é que ele só vai identificar uma atividade na >>>>>>> sessão quando houver uma requisição para o servidor. No meu caso, >>>>>>> existem >>>>>>> formulários muito longos a serem preenchidos e a sessão dá timeout >>>>>>> mesmo com >>>>>>> o usuário trabalhando. Não recorri à requisições esporádicas para >>>>>>> manter a >>>>>>> sessão aberta por isto não seria escalável em produção. >>>>>>> >>>>>>> Pelo menos no Flex3 existe um evento chamado "IDLE" que pode ajudar >>>>>>> neste problema. Não estudei mais afundo por que tenho demandas com >>>>>>> prioridade maior no momento. >>>>>>> >>>>>>> Espero ter ajudado e se você achar alguma solução, por favor, >>>>>>> compartilhe! >>>>>>> >>>>>>> Abraço >>>>>>> >>>>>>> Em 31 de agosto de 2011 08:59, Rodrigo Valentim < >>>>>>> rodrigo.valen...@gmail.com> escreveu: >>>>>>> >>>>>>> Leonardo, >>>>>>>> >>>>>>>> Certa vez precisei fazer algo parecido e funcionou.... >>>>>>>> >>>>>>>> A ideia original foi essa http://www.cauirs.com.br/rafael/?p=119 >>>>>>>> >>>>>>>> Porém, se tu pesquisar por controle de usuário flex no google, >>>>>>>> aparece outros exemplos. >>>>>>>> >>>>>>>> a forma que fiz foi mais simples. Todo usuário logado eu guardo em >>>>>>>> um array >>>>>>>> >>>>>>>> Em 31 de agosto de 2011 08:26, Leonardo Ribeiro < >>>>>>>> leojribe...@gmail.com> escreveu: >>>>>>>> >>>>>>>> Ah uma coisa que esqueci de mencionar no e-mail origial é que >>>>>>>>> a app usar Flex 4 + BlazeDS + Java no server (com Spring e >>>>>>>>> Hibernate) >>>>>>>>> >>>>>>>>> >>>>>>>>> 2011/8/31 Leonardo Ribeiro <leojribe...@gmail.com> >>>>>>>>> >>>>>>>>>> Pessoal, >>>>>>>>>> >>>>>>>>>> Preciso implementar em uma app flex4 login e logout. >>>>>>>>>> o login já é feito (com menus sendo criados dinamicamente de >>>>>>>>>> acordo >>>>>>>>>> com os direitos do usuário), mas eu preciso de 2 coisas mais: >>>>>>>>>> >>>>>>>>>> 1 - guardar o usuário logado para que não seja possível logar >>>>>>>>>> com o mesmo usuário duas vezes (mesmo browser outra aba, outra >>>>>>>>>> janela >>>>>>>>>> do mesmo browser ou outro browser - chrome e firefox por exemplo) >>>>>>>>>> >>>>>>>>>> 2 - ter opção de logout nas seguintes situações: >>>>>>>>>> 2.1 - um botão "logout" na app >>>>>>>>>> 2.2 - ao fechar o browser >>>>>>>>>> 2.3 - ficar um determinado tempo sem usar a app >>>>>>>>>> >>>>>>>>>> para todos os casos de logout acima precisaria gravar um log no >>>>>>>>>> BD. >>>>>>>>>> >>>>>>>>>> Inicialmente não queria ter uma tabela para guardar o usuários >>>>>>>>>> logados, >>>>>>>>>> preferiria ter algum controle de sessão mesmo, se possível >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> []'s >>>>>>>>>> Leonardo >>>>>>>>>> >>>>>>>>>> Linux User #488650 >>>>>>>>>> Ubuntu User #27045 >>>>>>>>>> Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> []'s >>>>>>>>> Leonardo >>>>>>>>> >>>>>>>>> Linux User #488650 >>>>>>>>> Ubuntu User #27045 >>>>>>>>> Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece >>>>>>>>> >>>>>>>>> -- >>>>>>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev" >>>>>>>>> Para enviar uma mensagem, envie um e-mail para >>>>>>>>> flexdev@googlegroups.com >>>>>>>>> Para sair da lista, envie um email em branco para >>>>>>>>> flexdev-unsubscr...@googlegroups.com >>>>>>>>> Mais opções estão disponíveis em >>>>>>>>> http://groups.google.com/group/flexdev >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Atenciosamente, >>>>>>>> Rodrigo Valentim >>>>>>>> >>>>>>>> -- >>>>>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev" >>>>>>>> Para enviar uma mensagem, envie um e-mail para >>>>>>>> flexdev@googlegroups.com >>>>>>>> Para sair da lista, envie um email em branco para >>>>>>>> flexdev-unsubscr...@googlegroups.com >>>>>>>> Mais opções estão disponíveis em >>>>>>>> http://groups.google.com/group/flexdev >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Pedro Augusto Clemente de Melo - PACM >>>>>>> Ciência da Computação 2007-2 >>>>>>> (81) 8795-1112 >>>>>>> >>>>>>> -- >>>>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev" >>>>>>> Para enviar uma mensagem, envie um e-mail para >>>>>>> flexdev@googlegroups.com >>>>>>> Para sair da lista, envie um email em branco para >>>>>>> flexdev-unsubscr...@googlegroups.com >>>>>>> Mais opções estão disponíveis em >>>>>>> http://groups.google.com/group/flexdev >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> []'s >>>>>> Leonardo >>>>>> >>>>>> Linux User #488650 >>>>>> Ubuntu User #27045 >>>>>> Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece >>>>>> >>>>>> -- >>>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev" >>>>>> Para enviar uma mensagem, envie um e-mail para >>>>>> flexdev@googlegroups.com >>>>>> Para sair da lista, envie um email em branco para >>>>>> flexdev-unsubscr...@googlegroups.com >>>>>> Mais opções estão disponíveis em >>>>>> http://groups.google.com/group/flexdev >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Atenciosamente, >>>>> Rodrigo Valentim >>>>> >>>>> -- >>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev" >>>>> Para enviar uma mensagem, envie um e-mail para >>>>> flexdev@googlegroups.com >>>>> Para sair da lista, envie um email em branco para >>>>> flexdev-unsubscr...@googlegroups.com >>>>> Mais opções estão disponíveis em >>>>> http://groups.google.com/group/flexdev >>>>> >>>> >>>> -- >>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev" >>>> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com >>>> Para sair da lista, envie um email em branco para >>>> flexdev-unsubscr...@googlegroups.com >>>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev >>>> >>> >>> >>> >>> -- >>> []'s >>> Leonardo >>> >>> Linux User #488650 >>> Ubuntu User #27045 >>> Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece >>> >>> -- >>> Você recebeu esta mensagem porque está inscrito na lista "flexdev" >>> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com >>> Para sair da lista, envie um email em branco para >>> flexdev-unsubscr...@googlegroups.com >>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev >>> >> >> -- >> Você recebeu esta mensagem porque está inscrito na lista "flexdev" >> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com >> Para sair da lista, envie um email em branco para >> flexdev-unsubscr...@googlegroups.com >> Mais opções estão disponíveis em http://groups.google.com/group/flexdev >> > > > > -- > []'s > Leonardo > > Linux User #488650 > Ubuntu User #27045 > Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece > -- []'s Leonardo Linux User #488650 Ubuntu User #27045 Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece -- Você recebeu esta mensagem porque está inscrito na lista "flexdev" Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com Para sair da lista, envie um email em branco para flexdev-unsubscr...@googlegroups.com Mais opções estão disponíveis em http://groups.google.com/group/flexdev