Sistema muito lenta na rede (banco paradox)

Delphi

25/08/2005

Uso paradox sei q preciso trocar mas ainda não deu, e estou com problemas de muita lentidão no sistema em rede, já fiz os procedimentos q encontrei no forum tipo no BDE:
Maxbufsize = 16384
Maxfilehandes = 100
Sharedmensize = 4096

Mas não adiantou, e as tabelas não são grandes, e se alguém acessar q seje um sistema somente na rede, o próprio servidor fica lento, alguém tem mais alguma sugestão pra melhorar isso, é q acabei de instalar esse sistema em uma empresa aqui, e posso até perder o cliente por causa disso. Se alguém puder me ajudar agradeço muito.


Janete

Janete

Curtidas 0

Respostas

Fabriciosanas

Fabriciosanas

25/08/2005

Cara Janete,
algumas coisas precisam serem esclarecidas, como rede, placas etc
1 - o paradox trabalha local basicamente, sendo assim a estação não pode ser uma máquina muito lenta.
2 - na sua máquina aplicação fica lenta

Precisamos comecar a conversar


GOSTEI 0
Janete

Janete

25/08/2005

Cara Janete, algumas coisas precisam serem esclarecidas, como rede, placas etc 1 - o paradox trabalha local basicamente, sendo assim a estação não pode ser uma máquina muito lenta. 2 - na sua máquina aplicação fica lenta Precisamos comecar a conversar


Fiz teste na minha empresa em rede tb, e ficou lento tb, conforme vai abrindo estações as mesmas e o servidor vão ficando lentos, mesmo abrindo somente uma estação e o servidor eles vicam lentos não entendo, tenho sistemas em outros lugares e não dá esse problema, mas eu fiz testa aqui e tb ficou assim, então não sei se tem algum problema em rede.


GOSTEI 0
Adriano Santos

Adriano Santos

25/08/2005

[quote:4a9495d1c2=´fabriciosanas´]Cara Janete, algumas coisas precisam serem esclarecidas, como rede, placas etc 1 - o paradox trabalha local basicamente, sendo assim a estação não pode ser uma máquina muito lenta. 2 - na sua máquina aplicação fica lenta Precisamos comecar a conversar


Fiz teste na minha empresa em rede tb, e ficou lento tb, conforme vai abrindo estações as mesmas e o servidor vão ficando lentos, mesmo abrindo somente uma estação e o servidor eles vicam lentos não entendo, tenho sistemas em outros lugares e não dá esse problema, mas eu fiz testa aqui e tb ficou assim, então não sei se tem algum problema em rede.[/quote:4a9495d1c2]

Bom pessoal, trabalhei muitos anos com Paradox e tenho um certo conhecimento, mas se os demais colegas quiserem me ajudar eu agradeço.

O Paradox de fato trabalha local e tem um fator que complica a vida do programador chamada BDE. Ele deixa a aplicação bastante lenta, pois ele é o carro chefe na hora de se conectar ao banco. Outro fator para a lentidão é se estiver usando TTable, aiii, sem chance pq o TTable carrega no cliente toda a tabela de uma vez, além de ficar conectado direto o que podem ocorrer problemas de Index em eventuais quedas de energia.


GOSTEI 0
Janete

Janete

25/08/2005

Tentei criar uma das pesquisas que estava lenta com uma Query e não abrir tenhuma table dessa tabela no siste pra ver se ajudava, mas ficou lento do mesmo jeito. To perdida.


GOSTEI 0
Adriano Santos

Adriano Santos

25/08/2005

Tentei criar uma das pesquisas que estava lenta com uma Query e não abrir tenhuma table dessa tabela no siste pra ver se ajudava, mas ficou lento do mesmo jeito. To perdida.


Entao [b:613d46a238]Janete[/b:613d46a238] você está usando TTable?
No seu teste com TQuery colocou qual Select? Veja, se colocar:

SELECT * FROM TABELA


E sua tabela tiver 300.000 registros, o programa vai trazer 300.000 registros para a máquina cliente, ou seja, a lentidão continua. Faça um teste, jogue uma select filtrando algo por exemplo

SELECT CAMPO1, CAMPO2, CAMPO3 FROM TABELA WHERE CAMPO1 = "QUALQUER_COISA"


Certifique-se de que vai te retornar um número menor de registros. Uns 1000 por exemplo, só pra ter uma idéia.

Vai ficar rapido.

Aproveite e post aqui quais comps está usando, qual Delphi e etc.


GOSTEI 0
Janete

Janete

25/08/2005

[quote:e7a7113743=´Adriano Santos´]
Tentei criar uma das pesquisas que estava lenta com uma Query e não abrir tenhuma table dessa tabela no siste pra ver se ajudava, mas ficou lento do mesmo jeito. To perdida.


Entao [b:e7a7113743]Janete[/b:e7a7113743] você está usando TTable?
No seu teste com TQuery colocou qual Select? Veja, se colocar:

SELECT * FROM TABELA


E sua tabela tiver 300.000 registros, o programa vai trazer 300.000 registros para a máquina cliente, ou seja, a lentidão continua. Faça um teste, jogue uma select filtrando algo por exemplo

SELECT CAMPO1, CAMPO2, CAMPO3 FROM TABELA WHERE CAMPO1 = "QUALQUER_COISA"


Certifique-se de que vai te retornar um número menor de registros. Uns 1000 por exemplo, só pra ter uma idéia.

Vai ficar rapido.

Aproveite e post aqui quais comps está usando, qual Delphi e etc.[/quote:e7a7113743]

Está assim:

Select Produtos.CodProduto,Produtos.Descricao,Produtos.Saldo,Produtos.PrecoVenda
From Produtos
Order by Produtos.Descricao

São apenas 1800 (mil oitocentos) registro, e fica lento do mesmo jeito, igual qdo era table.


GOSTEI 0
Gatoledo

Gatoledo

25/08/2005

Bem Janete, vc não citou o SO utilizado em seu cliente mas de qualquer forma posso te afirmar que há alguma incompatibilidade com o Windows NT 4 + servicepack 6a e BDE + Paradox.

A empresa em que trabalho utiliza um sistema comercial (em fase de troca) que utiliza BDE + Paradox. Eu diria que somando-se pedidos, itens de pedidos, notas e itens de notas são aproximadamente 1.500.000 registros. Qdo atualizamos as máquinas para o servicepack 6a o sistema se tornou uma carroça e tivemos que voltar para o servicepack 5.

Sugiro que verifique as configuraçãos do servidor e estações e tb do BDE.

Boa sorte,

Gabriel


GOSTEI 0
Adriano Santos

Adriano Santos

25/08/2005

Bem Janete, vc não citou o SO utilizado em seu cliente mas de qualquer forma posso te afirmar que há alguma incompatibilidade com o Windows NT 4 + servicepack 6a e BDE + Paradox. A empresa em que trabalho utiliza um sistema comercial (em fase de troca) que utiliza BDE + Paradox. Eu diria que somando-se pedidos, itens de pedidos, notas e itens de notas são aproximadamente 1.500.000 registros. Qdo atualizamos as máquinas para o servicepack 6a o sistema se tornou uma carroça e tivemos que voltar para o servicepack 5. Sugiro que verifique as configuraçãos do servidor e estações e tb do BDE. Boa sorte, Gabriel


Nossa [b:8849f246f1]gatoledo[/b:8849f246f1], só por causa do ServidePack?
Caramba, que nhaca hein?


GOSTEI 0
Janete

Janete

25/08/2005

Eu estava pensando em de repente colocar um servidor separado só pra gravar os dados, e trocar pra Línux mas não sei se é possivel instalar o BDE e o sistema no Linux, e se vai resolver alguma coisa, alguém tem alguma opnião sobre isso?


GOSTEI 0
Adriano Santos

Adriano Santos

25/08/2005

Eu estava pensando em de repente colocar um servidor separado só pra gravar os dados, e trocar pra Línux mas não sei se é possivel instalar o BDE e o sistema no Linux, e se vai resolver alguma coisa, alguém tem alguma opnião sobre isso?


Você está correta [b:7e2bcad756]Janete[/b:7e2bcad756] o BDE não funciona no Linux.


GOSTEI 0
Martins

Martins

25/08/2005

O pessoal já citou muitos motivos e possíveis soluções, como o [b:b216b0abbd]Luciano[/b:b216b0abbd] citou [b:b216b0abbd]Table[/b:b216b0abbd] é o fim em uma plaicação assim, as query quando bem estruturadas podem melhorar a performance, mas tem esse chato do BDE, vc poderia estudar a possibilidade de migrar logo para Interbase, Fire, MySql ou PostgreSQL, acho q para migrar suas tabelas em paradox para um desses SGBD não vai ser tão demorado, só q vc vai ter trabalhar com outros comopentes tb, aí vc vai ter q escolher entre IBX, DbExpress ou componentes de terceiros.

Mas para resolução do seu problema o indicado seria mudar para outra base.

Quanto a incompatibilidade com SP do NT já havia me falado sobre o assunto. E aqui foi bem lembrado quanto a estrutura física de sua rede, PC, Placas, Cabos, e tb a estrutura lógica, como ela está organizada, qual a topologia, coisas assim.

Boa Sorte!!!

Martins


GOSTEI 0
Martins

Martins

25/08/2005

Ops!!!
:oops:

[b:02a322a188]Luciano = Adriano Santos[/b:02a322a188]

Foi malz!!

Até


GOSTEI 0
Martins

Martins

25/08/2005

[b:a83c847e99]Janete[/b:a83c847e99] talvez vc até ja faça assim:

colocar em cada terminal uma cópia do executável, assim acho q ficaria mais rápido, pelo menos é o q eu penso, e nele colocar no atalho assim.
[b:a83c847e99]
LOCAL : LETRA:\PASTA\EXECUTÁVEL // Seu SERVER
INICIAL EM: C:\PASTA // nas maquinas clientes
[/b:a83c847e99]

Aqui teriamos um inconveniente para atualizarmos aplicação, pois teriamos q atualizar todos os exe dos terminais, mas aqui no clube tem um projeto q é o atualizador de aplicações parece. Vale tentar, se é q ainda não foi tentado.


Boa Sorte!!!


GOSTEI 0
POSTAR