Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Teacher Nick

Pagina Lennta...

Recommended Posts

Olá caros amigos tenho uma pagina que realiza busca em duas tabelas do mysql.....

 

ex:

1consulta : tenho um Dropdownlist que é carregado com a tabela clientes (preenchido com os nomes dos clientes

 

2consulta : ao eu trocar o nome do cliente no dropdown... exibe um grid mostrando entradas e saidas do cliente escolhido....(que está na tabela entrda_saida)

 

 

detalhe: (a tabela entrada_saida tem uns 200 mega)

 

quando me logo já mostra o primeiro cliente é selecionado e listado suas entradas e saidas....

 

 

 

e esse sistema ta muito lento ... alguem tem uma dica ?? agradeço....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se executar somente o select no seu banco de dados o retorno é rapido?

 

Abraços...

 

 

sim uso o banco de dados mysql....

 

se eu fizer direto no banco é rapidão ....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quando você seleciona uma que demora? Você preenche uma grid?

Quantas linhas tem o resultado?

 

Na primeira linha da sua página, dentro da tag <%@ Page %>, coloque o atributo trace="true".

<%@ Page Trace="True" restante da configuração %>

E executa a página denovo, dai ele mostra um passo-a-passo do que foi feito e quanto tempo levou cada evento. Assim da para saber qual o evento que demorou mais.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenha em mente o seguinte....

 

quando você faz um select * from Ent_Sai where Cliente = 123, vai pegar tudo que for do cliente....

se você faz... um top 10, vai trazer somente 10 registros, vai ser mais rápido...

 

Tenho algumas dicas...

 

Coloca um Timespan antes do seu select com a hora atual, e depois que você der um meuDataAdapter.Fill(meuDT) coloca um reponse.write (horaFinal.subtract(horaInicial))

 

( fiz o codigo meio por cima )......... dai você vai saber quantos segundos levou a cosulta e o preenchimento do grid (claro o timespan tem as propriedades de subtract e para você pegar os segundos ou minutos que quer),

 

se você não faz assim....

pode ser tbm no seu Web.config...

lá tem uma linha..... assim.....

 

Debug="true" ao invés de debugar, coloque "false" o valor... isso melhora muito a performance.... teste isto, qqr coisa me envia um e-mail riicardo_[arroba]hotmail.com

 

verifica tbm se no seu PostBack ao passar pelo evento load... não está fazendo uma rotina muito longa tbm

 

caso você não saiba vai a dica...

 

ao executar um comando ele vai sempre passar no load da pagina de novo antes de executar o comando... ( acredito que você já saiba )...

dai você testa... if not page.ispostback then "faz o load da pagina" else 'não faz nada... pq a pagina já tá lida' end if

 

capitche ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia Galera, isso é muito interessante mesmo!

 

Tá ai uma coisa legal de se discutir: Como melhorar o desempenho dos sites...tanto no banco de dados quando no código...

 

Rapidex x Segurança....

Quantidade de código...etc...

 

Uma dica para nosso amigo!

 

Já tentou utilizar Stored Procedure para esse procedimento...dizem que melhora bem o desepenho do banco...e provávelmente vai ajudar no tempo de resposta...

 

Abraços!

 

brissolare

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você está utilizando DataReader ou DataSet?

 

Utiliza paginação? Já tentou utilizar Cache?

 

Qual provider de conexão você está utilizando?

 

estou usando DataReader

e o provider é o ODBC

 

não uso paginação ...

 

cache ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você precisa mesmo usar ODBC? Se for para permitir multi-plataforma, existem outras maneiras. O ideal seria usar o client próprio do banco.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desculpe me intrometer, mas estou tendo o mesmo problema com uma página. Estou utilizando MySQL com provider proprio da MySQL. É um projeto feito em VB.NET, não possui SQL no Load da página.

 

Fiz um teste no MySQL Query Browser, e tbm tem uma demora enorme (cerca de 5-10 minutos) para gerar um simples SELECT, onde pesquiso um dado especifico (Select Nome From Usuário Where CPF = 999999999)

 

Meu BD tem mais de 230 mil registros!! As confs. do servidor onde está hospedada a página tem 261 MB de RAM, Pentium 3 e Windows 2000 Server.

 

Por favor me ajudem!

 

Para ver a demora acesse: Visite meu site

 

Ps.: testei em uma conexão de 2Mb e a demora é a mesma.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faccruz,

 

Primeiramente o servidor já não te atende muito bem, pois 261MB de RAM é pior que máquina de usuário hoje em dia (desculpe falar isso, só estou querendo dizer que dependendo da sua necessidade, ela vai ter que fazer alguns "milagres" ^_^ ).

 

E já que até no MySQL Query Browser ela está lenta, sugiro que inclua um índice nesta tabela, para o campo CPF. Assim a performance já deve melhorar um pouco.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Estou ciente que não é das melhores configurações, antes só havia uma página html (com alguns efeitos flash), nesse tempo lançaram uma promoção e pediram para fazer uma página para os clientes buscarem os números do sorteio.

 

A respeito do indice, não posso usar no CPF pq um cliente pode ter vários números para o sorteio, tbm não posso usar o numero do sorteio como indice, pq eles compraram 3 séries e os numeros se repetem.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quais campos fazem parte da chave primária desta tabela?

Então... aí que tá não posso fazer um campo para a chave primária... pois os números (CPF, Sorteio, NF, Contrato (pode ser nulo)) podem se repetir.

 

Mas o que é interessante não é o SQL que está lento, e sim a abertura da página, e não possui nenhum SELECT no page.load da Default.aspx

Compartilhar este post


Link para o post
Compartilhar em outros sites

Voce esta rodando em localhost?

Veja se isso ocorre no IE e no FF.

 

Esses dias eu percebi que rodandno em localhost e acessando com o FF a pagina ficava lenta e descobri que era uma configuracao do FF.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Voce esta rodando em localhost?

Veja se isso ocorre no IE e no FF.

 

Esses dias eu percebi que rodandno em localhost e acessando com o FF a pagina ficava lenta e descobri que era uma configuracao do FF.

 

Não é localhost. Testei no IE7 e IE8 e tbm no FF3 e nos 3 demoraram o mesmo tempo (+ de 5 minutos com uma conexão de 2 MB)

 

 

Site que apresenta a demora e clique no icone Cartelinha Clique aqui e veja seu número da sorte

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.