Performance na abertura de arquivos

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

Avatar do usuário
JAIR RANGEL
Usuário Nível 3
Usuário Nível 3
Mensagens: 178
Registrado em: 19 Jul 2005 16:01
Localização: RIO DE JANEIRO
Contato:

Performance na abertura de arquivos

Mensagem por JAIR RANGEL »

Olá a todos !

Estou passando pelo seguinte problema:
Em uma arquitetura de Rede Local com aproximadamente 20 computadores on-line o tempo inteiro, com Servidor Linux (256 MB Memória), estações Windows, ao abrir uma aplicação MiniGUI+Harbour, o sistema fica extremamente lento ao exibir, em consulta Browser, o Arquivo de Produtos.
Este arquivo tem aproximadamente 18MB. (Muitos campos no Arquivo).

A princípio, exibia todos os campos no Browse.
Em seguida, fiz um desmembramento no Arquivo. Ou seja, reduzi o seu tamanho, eliminando campos do Arquivo. Gerei outros arquivos para armazenar os campos retirados do Arquivo Principal.
Este procedimento me deu um ganho de performance. Porém, muito baixo.
Ainda assim, fica lento a exibição do Arquivo em formato Browse.

Após vários testes no Cliente, percebi que, quando somente uma única estação de trabalho abre este arquivo, a velocidade é extremamente normal. Ou seja, rápida demais.
Quando duas ou mais máquinas abrem o mesmo arquivo, a performance cai considerávelmente. A ponto de causar angústia nos Operadores.

Se alguém já passou por isto, ou tem uma idéia de como resolver este problema, por favor, responda este tópico.
Desde já, obrigado !

Estou tentando algumas alternativas. Não estou parado. Pois, preciso resolver esta questão.

OBS: O memso arquivo, quando aberto por uma aplicação DOS (Clipper), a velocidade e extremamente boa.

Até.................

Jair Rangel
Legnar Informática
MiniGUI + Harbour
MINIGUI + HARBOUR + BRMAKE + CDX
CLIPPER 5.2E + VISUALLIB 2 + BLINKER
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Re: PERFORMANCE NA ABERTURA DE ARQUIVOS

Mensagem por sygecom »

Buenas,
Esta usando NTX ou CDX ?
Esta usando algum filtro como SET FILTER TO ? Se sim, tente subistituir pelo ORDSCOPE().
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
software_facil
Usuário Nível 3
Usuário Nível 3
Mensagens: 211
Registrado em: 23 Fev 2005 12:19
Localização: Curitiba/PR
Contato:

Re: PERFORMANCE NA ABERTURA DE ARQUIVOS

Mensagem por software_facil »

Para resolver o seu problema é muito simples, pelo que vc disse, a tabela de produtos tem 18mb, não é pequena, se vc ficar abrindo e exibindo todas as informações, não há máquina que aguente, então, a solução é fazer como todo programador acostumado a usar bancos de dados relacionais faz, filtrar o que vai ser exibido, e o resultado desse filtro, ser apresentado ao usuário. Como vc utiliza a MiniGUI, ao invés de utilizar o Browse, que fica apontando diretamente para a tabela, faça o filtro (perguntando o que o usuário deseja ver na tela), e mostre em um GRID, vc verá que tudo vai funcionar normalmente.

Abraços
messenger : software_facil@hotmail.com
Avatar do usuário
JAIR RANGEL
Usuário Nível 3
Usuário Nível 3
Mensagens: 178
Registrado em: 19 Jul 2005 16:01
Localização: RIO DE JANEIRO
Contato:

Re: PERFORMANCE NA ABERTURA DE ARQUIVOS

Mensagem por JAIR RANGEL »

Bom dia, a todos !

Primeiro, obrigado pelas contribuições !!

SYGECOM:
Utilizo NTX.
NÃO utilizo SET FILTER TO...

SOFTWARE_FÁCIL:
Sim, eu não mais estou exibindo todos os campos da Tabela de Produtos.
Apenas, aproximadamente 8 ou 10 campos. Porém, ao exibir os campos, utilizo o Browser da MINIGUI. Como mencionei anteriormente, obtive uma melhora. Mas, muito pouco. O que vc mencionou a respeito que o BROWSER fica apontando para o Banco de Dados, faz sentido. Neste caso, vou mudar para GRID e fazer testes....
Vou postar aqui os resultados.

Obrigadão á voces !!

JAIR RANGEL
MiniGUI + HARBOUR (Roberto Lopez).
MINIGUI + HARBOUR + BRMAKE + CDX
CLIPPER 5.2E + VISUALLIB 2 + BLINKER
Avatar do usuário
JAIR RANGEL
Usuário Nível 3
Usuário Nível 3
Mensagens: 178
Registrado em: 19 Jul 2005 16:01
Localização: RIO DE JANEIRO
Contato:

Re: PERFORMANCE NA ABERTURA DE ARQUIVOS

Mensagem por JAIR RANGEL »

Olá, Sofware_Fácil
Olá, a TODOS................................

Fiz o combinado. Passei a utilizar o GRID da MiniGUI.
A LENTIDÃO É MUITO GRANDE !
Ao exibir o Grid, estou inserindo os 50 primeiros registros no Grid.
Isto, para não ficar com a tela do Grid vazia....
É ai que ele DEMORA UMA IMENSIDÃO DE TEMPO.
OBS: se estiver sozinho em uma estação e o Servidor apenas, ele fica rápido.
Ao carregar o programa em uma outra estação, A LENTIDÃO VOLTA !

No momento NÃO SEI MAIS O QUE FAZER........
:%


Jair Rangel
MINIGUI + HARBOUR
MINIGUI + HARBOUR + BRMAKE + CDX
CLIPPER 5.2E + VISUALLIB 2 + BLINKER
MARCELOG
Usuário Nível 4
Usuário Nível 4
Mensagens: 546
Registrado em: 15 Mar 2005 16:54
Localização: Divinópolis/MG

Re: PERFORMANCE NA ABERTURA DE ARQUIVOS

Mensagem por MARCELOG »

Olá,
antes de inserir os registros no grid, esconda e depois reexiba o mesmo.

...
form.grid.hide

processa e insere os registros aqui.

form.hrid.show // reexibe o gird

MarceloG
Água mole em pedra dura tanto bate que até espirra!
Avatar do usuário
software_facil
Usuário Nível 3
Usuário Nível 3
Mensagens: 211
Registrado em: 23 Fev 2005 12:19
Localização: Curitiba/PR
Contato:

Re: PERFORMANCE NA ABERTURA DE ARQUIVOS

Mensagem por software_facil »

Só tem uma maneira de te ajudar, vc postando o código fonte completo aqui.

Abraços
messenger : software_facil@hotmail.com
leandrolinauer
Usuário Nível 3
Usuário Nível 3
Mensagens: 413
Registrado em: 16 Out 2006 10:59
Localização: Paranaíba-MS

Re: PERFORMANCE NA ABERTURA DE ARQUIVOS

Mensagem por leandrolinauer »

Bom dia JAIR RANGEL.

Eu tive um problema talvez semelhante do seu uma lentidão enorme ao exibir dados em browse, eu utilizo atualmente xHarbour com GtWVW e DBFCDX, e visualizo com o DBEDIT, no entando este DBEDIT ocazionou este problema de lentidão de browse e para minha sorte um código fonte do DBEDIT que peguei no fórum funcinou perfeitamente para quebrar meu galho visto que o sistema já estava em uso, ou seja, substitui o DBEDIT por outro de melhor performance e funcionou perfeitamente, ficando igual ao modelo do DOS, ou seja, bem rápido.
Ainda não mudei para TBROWSE por falta de tempo de alterar tudo, ficou mais rápido utilizar o DBEDIT novo, se este for o seu caso, te mando o código.

Um Harbraço.
:)Pos
Harbour 3.2 + GtWVW + QT + SQLite3 + DBF + SQL (Firebird)
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Re: PERFORMANCE NA ABERTURA DE ARQUIVOS

Mensagem por sygecom »

Olá Leandro,
Acho que o caso do Jair não seria sobre DBEDIT() pelo fato dele esta passando pelo problema no uso em MINIGUI e não se usa DBEDIT em Minigui, mas sobre essa sua função que transforma o DBEDIT em TBROWSE se vc estiver afim de compartilhar com os demais colegas acho que seria uma boa postar esse codigo na sessão CODIGO FONTE do forum.
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
JAIR RANGEL
Usuário Nível 3
Usuário Nível 3
Mensagens: 178
Registrado em: 19 Jul 2005 16:01
Localização: RIO DE JANEIRO
Contato:

Re: PERFORMANCE NA ABERTURA DE ARQUIVOS

Mensagem por JAIR RANGEL »

Olá, Pessoal !
Estou de volta...

Nas últimas duas semanas, passei trocando de NTX para CDX.
Nos módulos do Programa ADM SMART que já funcionam em Harbour+MiniGUI, ficou OK.
Porém, no módulo de Frente de Loja, que ainda roda em DOS, aconteceu que, ao passar para CDX, visualizo várias mensagens de MEMORY LOW, UNRECOVEREBLE EXAUSTED.....
Esquisito, por que deveria acontecer o contrário. Como os CDX reduzem o número de arquivos de índices circulando na memória, não deveria acontecer isto.

Nos módulos já migrados para Harbour+MiniGUI, após inserir os CDXs, a performance na abertura dos Arquivos, TEVE UMA LEVE MELHORA.
Não foi significativo !!
Em função dos ERROS que estão acontecendo nos módulos em DOS, após migração para CDX, estou pensando em voltar todo o meu Backup para a versão com tudo em NTX (DOS/CLIPPER e WINDOWS/MINIGUI).

Pois, acredito que o meu problema não seja os índices NTX.
E sim, a MiniGUI. Acho que ela não trabalha perfeitamente com arquivos muito grandes. Principalmente quando este mesmo arquivo, está aberto por outra aplicação,
em outra estação de trabalho.
Pois, percebi que, a lentidão começa, exatamente quando o programa abre o arquivo.
Nem preciso carregá-lo no Browser. Basta abrir o programa......
Se esta aplicação estiver sozinha, Ok. Fica rápido. Se outra estação entrar e abrir o arquivo, mata o peão. Fica muito lento.....

Obrigado a todos pelas contribuições.............

Jair Rangel
Harbour+MiniGUI / CLIPPER 502E+VisualLIB
MINIGUI + HARBOUR + BRMAKE + CDX
CLIPPER 5.2E + VISUALLIB 2 + BLINKER
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Re: PERFORMANCE NA ABERTURA DE ARQUIVOS

Mensagem por sygecom »

Olá Jair, o problema não deve ser a Minigui, sua app em clipper esta compilada com FreeTSlice() ? se não tiver baixa ela do site do Maligno e compila junto.

Junto com sua app clipper link o "CDXLOCK.OBJ"(Se não tiver o CDXLOCK.OBJ me fala que te envio) e na aplicação Minigui coloque a seguinte linha no inicio do sistema:
set(_SET_DBFLOCKSCHEME,2)
Uso até hoje aplicativos clipper 5.3 e xharbour usando os mesmo DBF e CDX sem problemas.
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
JAIR RANGEL
Usuário Nível 3
Usuário Nível 3
Mensagens: 178
Registrado em: 19 Jul 2005 16:01
Localização: RIO DE JANEIRO
Contato:

Re: PERFORMANCE NA ABERTURA DE ARQUIVOS

Mensagem por JAIR RANGEL »

Bom dia, Leonardo !

FreeTSlice() -->
Baixei do site do Maligno e inseri no Programa, como recomendado.
Foi implementada.

CDXLOCK.OBJ -->
No Clipper 5.02e, não tem.
Achei no Clipper 5.03. Porém, minha aplicação em Clipper/DOS, está sendo compilada com Clipper 502e. Copiei o CDXLOCK.OBJ do Clp503 para dentro do Clp502e. Durante a LinkEdição apresentou vários erros. Acredito que seja por ser de versão diferente !!
Então retirei a CDXLOCK.OBJ.

Set(_SETDBFLOCKSCHEME,2) -->
Implementei está função no início do Sistema.
Função implementada, Ok.

No módulo em DOS/CLIPPER que é o Frente de Loja, ainda continuo com o problema de FALTA DE MEMÓRIA (exausted memory / memory low).
Isto, após migrar para CDX.

Não posso compilar com Clipper 5.03, pois utilizo a VisualLIB para Clp502 !!

Obrigado pela atenção....
Um Abraço !

Jair Rangel
Harbour+MiniGUI / Clipper 502e+VisualLIB
:-o
MINIGUI + HARBOUR + BRMAKE + CDX
CLIPPER 5.2E + VISUALLIB 2 + BLINKER
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Re: PERFORMANCE NA ABERTURA DE ARQUIVOS

Mensagem por sygecom »

Eu tenho a VISUAL LIB para varias versões, me manda seu e-mail que te envio elas, e tente cmpilar usando o CDXLOCK.OBJ
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
JAIR RANGEL
Usuário Nível 3
Usuário Nível 3
Mensagens: 178
Registrado em: 19 Jul 2005 16:01
Localização: RIO DE JANEIRO
Contato:

Re: PERFORMANCE NA ABERTURA DE ARQUIVOS

Mensagem por JAIR RANGEL »

Olá, Leonardo !

Obrigado. Pois achei a Visual LIB para Clipper 5.03.
Vou inserir a CDXLOCK.OBJ.
Vou linkar, também, com Blinker 7.

Obrigado. Falo depois.........................

Jair Rangel
:xau
jairrangel@uol.com.br
legnarinfo@hotmail.com
MINIGUI + HARBOUR + BRMAKE + CDX
CLIPPER 5.2E + VISUALLIB 2 + BLINKER
Avatar do usuário
JAIR RANGEL
Usuário Nível 3
Usuário Nível 3
Mensagens: 178
Registrado em: 19 Jul 2005 16:01
Localização: RIO DE JANEIRO
Contato:

Re: PERFORMANCE NA ABERTURA DE ARQUIVOS

Mensagem por JAIR RANGEL »

Olá, Leonardo !

Compilei o Frente de Loja em Clipper 5.03/Blinker Modo Protegido.
Inseri a CDXLOCK.OBJ.
Resolvido o Problema de Falta de Memória !
O programa ficou bastante rápido. Ainda estou testando fora da Rede (Stand-Alone).

Porém, a Visual LIB não está funcionando bem. O acabamento das telas estão borrados.
Acho que vou aceitar a sua cópia da Visual LIB para Clipper 5.03.
A que tenho pode estar com problemas !

Abaixo o e-mail:
jairrangel@uol.com.br
legnarinfo@hotmail.com

Desde já, obrigado.

Jair Rangel
Harbour+MiniGUI / Clipper+Visual LIB
:)Pos
MINIGUI + HARBOUR + BRMAKE + CDX
CLIPPER 5.2E + VISUALLIB 2 + BLINKER
Responder