CONTROLE DE ACESSO
Estou no memomento enfrentando um problema sério: O sistema gráfico, o qual mencionei nos posts anteriores, ele possue 3 formas de saÃda. Embora eu personalizei a minha saÃda, estou tentando cercar as demais desviando-as para a minha janela de saÃda. Pois que, o usuário saindo por minha janela, ele desconectará da base. Já, se ele não passar pela minha janela de saÃda, tenho de arrumar um jeito do sistema verificar se o sistema gráfico está ou não ativado ao mesmo tempo que o meu sistema. Terei de desenvolver uma solução consistente, sem falha.
Vamos pensando...
Citação::
Ok FOXMAN. A sua observação é válida.
Bom, o sistema que desenvolvà dependerá unicamente do banco de dados. Toda a carga será resultante de cáculos, leitura em tela gráfica e importados para a base.
Todas as consultas serão resultantes de alimentação de vários clientes em diferentes localidades. Por exemplo: Um cliente com 5 usuários, ficou responsável por um certo levantamente de dados e esse terá de alimentar a base. Outro cliente com 10 usuários, vai usar esses dados então alimentados na base, e gerará documentos pertinentes ao segmento dele. E assim em diante.
Embora iniciante em mysql server, ele foi muito indicado como um sgbd robusto e parrudo com grande performance de gerenciamento sequencial de dados. Então FOXMAN, acredito que vai atender. Talvez eu tenha de desenvolver uma forma de armazenar os resultados localmente e depois importá-los para o servidor.
O que você me sugere?
Obrigado também pela atenção !
Você pode utilizar um servidor local nos seus clientes e replicar os dados para o servidor central.
Com relação à questão de seus usuários sairem/desconectarem do banco/servidor acredito que um gerenciador de conexões poderia resolver. O que me preocupa são as quedas de internet e energia e o usuário ficar pendurado.
Como já foi dito anteriormente a melhor opção é utilizar o proprio mysql para gerenciar os usuários. Desta forma caso o sistema seja fechado e as conexões destruidas o mysql irá automaticamente encerrar as conexões.
é como expliquei: minha maior preocupação, é se o usuário não sair pela janela do meu sistema. No sistema gráfico, o qual o meu sistema é integrado, possue 3 tipos de saÃdas independente da saÃda do meu sistema. Eu tenho de cercar estas saÃdas de tal forma, que elas invoquem a minha janela de saÃda. Estou aquà escovando bits, pensando numa forma de resolver isso. Mesmo que o usuário saia do sistema sem usar a minha janela de saÃda, tenho de arrumar um jeito de sinalizar a tabela na base, como se a conexão tivesse caÃdo. Vamos pensar...
Valeu FOXMAN.
Citação::
FOXMAN, como que o mysql server poderá gerenciar as quedas de conexão? Como disse, estou começando no mysql server. Antes eu criava as tabelas usando Access, mas pela necessidade de tráfego na web, migrei para o mysql server. Com o mysqlAdmin eu acesso todo o mysql server. Consigo visualizar quem está ou não online, posso derrubar quem eu quiser, principalmente os clientes que não estiverem em dia com o contrato, etc... Agora me explique uma coisa: Há alguma forma de programar o mysql server, para gerenciar as quedas de conexão, de tal forma que o status do usuário fique offline na tabela? Na verdade você quis dizer, que eu preciso desenvolver um módulo que gerencie a referida tabela, não é isso?
é como expliquei: minha maior preocupação, é se o usuário não sair pela janela do meu sistema. No sistema gráfico, o qual o meu sistema é integrado, possue 3 tipos de saÃdas independente da saÃda do meu sistema. Eu tenho de cercar estas saÃdas de tal forma, que elas invoquem a minha janela de saÃda. Estou aquà escovando bits, pensando numa forma de resolver isso. Mesmo que o usuário saia do sistema sem usar a minha janela de saÃda, tenho de arrumar um jeito de sinalizar a tabela na base, como se a conexão tivesse caÃdo. Vamos pensar...
Valeu FOXMAN.
Quais seriam expecificamente as outras formas de saida do seu sistema ???
Bem vamos ao caso....
Digamos que vc tenha uma tabela TBLUsersOnLine que tenha entre tantas outras informações , o status do usuario XXXXX como ON LINE.
Você teria que utilizar o gerenciador de conexões do mysql para verificar se realmente existe um usuário (XXXX) conectado no servidor, caso tenha, poderia então fazer diversas outras coisas como por exemplo matar a conexão através do comando kill.
O gerenciador de conexões do mysql iria simplesmente lhe oferecer a informação se o usuario xxxxxx está ON ou OFF, para que vc possa alterar o status dele na tabela TBLUsersOnLine. E um outro ponto reverso a tabela TBLUsersOnLine lhe forneceria informações suficientes para bloquear ou não o usuario XXXX.
Este processo poderia ficar rodando diretamente no servidor através de Triggers / Stored Procedures.
Citação::
...posso derrubar quem eu quiser, principalmente os clientes que não estiverem em dia com o contrato, etc... .
Valeu FOXMAN.
MACYSZYN, seria realmente válido essa colocação se não houvesse necessidade alguma de controlar outras possibilidades do cliente.Pelo que entendi, se o cliente não pagar, se quer irá logar no servidor, sendo assim SE FAZ NECESSÃRIO a utilização de uma segunda tabela sim...
Sem contar que determinar um prazo X por intatividade de um usuário é algo um tanto vasto, pois cada usuário tem um perfil e se não me falha a memória a configuração que você sugeriu não é individualizada por usuário e sim para o banco num todo.(me corriga se eu estiver errado).
A conexão ou desconexão do servidor nem precisa utilizar esse parâmetro, basta distruir as conexões do mysql ao sair do sistema/janela.
Deve-se levar em conta muitas outras possibilidades e não somente o fato de o usuário estar ativo no servidor.
Com uma segunda tabela ele pode até determinar quanto tempo o usuário irá ficar logado ou não, ou ainda, quais informações poderá visualizar/editar/inserir/exlurir etc....(sem a necessidade de manipular as tableas de usuario do mysql.)
Eu tenho uma boa notÃcia para vocês: Conseguà desenvolver uma função que, de qualquer maneira que um usuário
quiser sair do sistema gráfico, ele invocará a minha janela de saÃda. De tal forma que o usuário não tem como reconfigurar o sistema gráfico, uma vez que essa função está dentro do .exe.
Com isso, só me resta uma preocupação apenas: queda de energia do lado cliente. Creio que essa preocupação é pertinente e válida porque, na minha tabela de usuários no mysql, contêm o status do usuário. Se ele está [Ô]online[Ô] = 1
ou [Ô]offline[Ô] = 0.
Pergunta: Vocês tem uma função que detecta a queda de energia em determinado cliente e muda o status de [Ô]online[Ô] para [Ô]offline[Ô] ? Caso o mysql gerencie isso, como visualisar isso ? ( Lembrem-se, sou iniciante em mysql server).
Desde já agradeço a atenção!!!
Uma vez que o próprio mysql gerencia a queda de conexão. Então ??? Na verdade, eu tenho uma tabela que até então, o mysql não visualiza por si mesma como parte do seu gerenciameno interno. Por isso eu perguntei.
Será que fui infeliz na minha pergunta ou não ?