Ir para conteúdo

POWERED BY:

Arquivado

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

Siga Fael

Sobrecarga no servidor PHP

Recommended Posts

Bom dia pessoal,

 

meu nome é Fabio Brito e gostaria da ajuda de vocês quanto a um problema que estou enfrentando com uma aplicação hospedada na Locaweb.

 

Meu site é de uma imobiliária, portanto utiliza de PHP e MYSQL para fazer buscas de imóveis no site.

 

O problema é que a Locaweb esta ameaçando tirar meu site do ar pois está causando sobre carga no servidor compartilhado deles e alegam que o problema está em nosso código. Meu site tem em torno de 15Mil acessos mês então este não é o problema.

 

Abaixo segue o código PHP da página mais requisitada do site:

<? include("inc/config.php"); ?>
<?
/* PAGINACAO */

$_SESSION['regs_pp']	= 6; 

!isset($_GET["pg"]) ? $pg=1 : $pg=$_GET["pg"];
$comeca_em = ($pg-1)*$_SESSION['regs_pp'];	

// paramentros para navegacao entre os resultados
$param = '';
if( isset($_GET['favoritos']) ) 									{ $param.="favoritos=true&"; }
if( isset($_GET['lancamentos']) && $_GET['lancamentos']=='true' ) 	{ $param.="lancamentos=true&"; }
if( isset($_GET['estagio']) ) 										{ $param.="estagio=".$_GET['estagio']."&"; }
if( isset($_GET['finalidade']) )							 		{ $param.="finalidade=".$_GET['finalidade']."&"; }
if( isset($_GET['tipo']) ) 											{ $param.="tipo=".$_GET['tipo']."&"; }
if( isset($_GET['busca_cidade']) )									{ $param.="busca_cidade=".urlencode($_GET['busca_cidade'])."&"; }
if( isset($_GET['dormitorio']))								 		{ $param.="dormitorio=".$_GET['dormitorio']."&"; }
if( isset($_GET['garagem']) ) 										{ $param.="garagem=".$_GET['garagem']."&"; }
if( isset($_GET['de1']) )											{ $param.="de1=".$_GET['de1']."&"; }
if( isset($_GET['de2']) )											{ $param.="de2=".$_GET['de2']."&"; }
if( isset($_GET['ate1']) )											{ $param.="ate1=".$_GET['ate1']."&"; }
if( isset($_GET['ate2']) )											{ $param.="ate2=".$_GET['ate2']."&"; }
if( isset($_GET['preco']) )											{ $param.="preco=".$_GET['preco']."&"; }
if( isset($_GET['preco2']) )										{ $param.="preco2=".$_GET['preco2']."&"; }
if( !empty($_GET['area']) ) 										{ $param.="area=".$_GET['area']."&"; }
if( !empty($_GET['o_field']) )							 			{ $param.="o_field=".$_GET['o_field']."&"; }
if( !empty($_GET['o_ad']) ) 										{ $param.="o_ad=".$_GET['o_ad']."&"; }
// o param de pagnacao dos bairros esta no loop do select


/* 
  BUSCA
  ---------------------------------------------------------------------
*/		

$sql_busca="";

// PALAVRA-CHAVE		
if ( !empty($_GET['codigo']) && is_numeric($_GET['codigo']) ) { 
	die("<script>window.location='detalhes.php?codigo=".$_GET['codigo']."'</script>");
}

else if ( !empty($_GET['placa']) && is_numeric($_GET['placa']) ) { 
	die("<script>window.location='detalhes.php?codigo=".$_GET['placa']."'</script>");
}

else
{	

	// CLASSIFICACAO  
		 if (!empty($_GET["finalidade"]) && $_GET["finalidade"]=='venda')			{ $sql_busca .= "  AND INSTR(imo.STATUS,'VENDA')>0 "; }  
	else if (!empty($_GET["finalidade"]) && $_GET["finalidade"]=='locacao')			{ $sql_busca .= " AND INSTR(imo.STATUS,'LOCAÇÃO')>0 "; }  
	//else if (!empty($_GET["finalidade"]) && $_GET["finalidade"]=='vl')			{ $sql_busca .= " "; }  

	// ESTAGIO OBRA
	if(!empty($_GET['estagio'])) { $vfiltros[] = array('estagio',$_GET['estagio']); }
	if ( !empty($_GET['estagio']) && $_GET['estagio']==2 ) 	 { $sql_busca.=" AND imo.ESTAGIO_OBRA='Lançamento' OR imo.ESTAGIO_OBRA='Revenda'";  }
	if ( !empty($_GET['estagio']) && $_GET['estagio']==4 ) 	 { $sql_busca.=" AND imo.ESTAGIO_OBRA='Pronto' OR imo.ESTAGIO_OBRA='Revenda' OR imo.ESTAGIO_OBRA='Lançamento'"; }

	// TIPO DE IMOVEL
	if ( !empty($_GET['tipo']) ) {
		$sql_busca.=" AND imo.CODIGO_CT=".$_GET['tipo'];
		$vfiltros[] = array('tipo',$_GET['tipo']);
	}

	// CIDADE
	if ( !empty($_GET['busca_cidade']) ) {
		$sql_busca.=" AND imo.cidade='".urldecode($_GET['busca_cidade'])."' ";
		$vfiltros[] = array('busca_cidade',$_GET['busca_cidade']);
	}

	// AREA
	if ( !empty($_GET['area']) ) {
		$v_area = split('-',$_GET['area']);
		$sql_busca.=" AND (imo.AREA_PRIVATIVA>=".$v_area[0]." and  imo.AREA_PRIVATIVA<=".$v_area[1].") ";
		$vfiltros[] = array('area',$_GET['area']);
	}

	// PRECO
	if ( !empty($_GET['preco']) ) {
		$v_preco = split('-',$_GET['preco']);
		$sql_busca.=" AND (imo.VLR_VENDA>=".($v_preco[0]*1000)." and  imo.VLR_VENDA<=".($v_preco[1]*1000).") ";
		$vfiltros[] = array('preco',$_GET['preco']);
	}

	// PRECO
	if ( !empty($_GET['preco2']) ) {
		$v_preco = split('-',$_GET['preco2']);
		$sql_busca.=" AND (imo.VALOR_ALUGUEL>=".($v_preco[0])." and  imo.VALOR_ALUGUEL<=".($v_preco[1]).") ";
		$vfiltros[] = array('preco2',$_GET['preco2']);
	}


	// FAVORITOS
	if ( !empty($_GET['favoritos']) ) 
	{
	  $sqlfav = "";
	  if ( isset($_COOKIE['favoritos']) )     
	  { 
		  $cods=split(",",$_COOKIE['favoritos']);
		  //print_r($cods);
		  $sqlfav .=" AND (";
		  for($i=count($cods)-1;$i>=0;$i--){
			  if(trim($cods[$i])!='') {
				  $sqlfav .= " imo.CODIGO=".$cods[$i]; 
				  if(count($cods)>0) { $sqlfav .= " OR "; }
			  }
		  }
		  $sqlfav = rtrim($sqlfav, "OR ");
		  $sqlfav .=" )";
		  //echo $sqlfav;
	  }
	  $sql_busca .= $sqlfav;
	  if (str_replace(" ","",$sqlfav)!="AND()") $sql_busca .= $sqlfav; else $sql_busca = ' AND 1=2 ';
	}						

	// BAIRROS SELECIONADOS
	if ( !empty($_GET['bairros']) ) { 
		$total = count($_GET['bairros']);
		$sql_busca .= " AND ("; 
			foreach ($_GET['bairros'] as $value) 
			{
				$sql_busca .= " imo.BAIRRO IN ('". urldecode($value) ."') ";
				$total--;
				if ($total!=0) { $sql_busca .= " OR "; }

				//PAGINACAO
				$param.="bairros[]=".urlencode($value)."&";

				//filtros
				$vfiltros[] = array('bairros[]',$value);

			}	
		$sql_busca .= " ) "; 
	}

	// DORM
	if( !empty($_GET['dormitorio'] ) )
	{
  		 $dormitorio = (int)$_GET['dormitorio'];
  		 if( $dormitorio==4 ) $dormitorio = '>=4';
  		 else $dormitorio = '='.$dormitorio;
  		 $sql_busca .= ' AND imo.DORMITORIO'.$dormitorio;
	} 	

	// GARAGEM
	if( !empty($_GET['garagem'] ) )
	{
  		 $garagem = (int)$_GET['garagem'];
  		 if( $garagem==4 ) $garagem = '>=4';
  		 else $garagem = '='.$garagem;
  		 $sql_busca .= ' AND imo.QUANTITADE_GAR'.$garagem;
	} 

	// FAIXA DE PREÇO SELECIONADA		
	if( !empty($_GET['finalidade']) && $_GET['finalidade']=='locacao' ) {
		if (!empty($_GET['de2'])) { $sql_busca .= " AND imo.VALOR_ALUGUEL>=".$_GET['de2']." "; } 	
		if (!empty($_GET['ate2'])) { $sql_busca .= " AND imo.VALOR_ALUGUEL<=".$_GET['ate2']." ";  } 	
	}else{
		if (!empty($_GET['de1'])) { $sql_busca .= " AND imo.VLR_VENDA>=".$_GET['de1']." "; } 	
		if (!empty($_GET['ate1'])) { $sql_busca .= " AND imo.VLR_VENDA<=".$_GET['ate1']." ";  } 	
	}

}
/* 
  END BUSCA
  ---------------------------------------------------------------------
*/		



/* 
  ORDENAR OS RESULTADOS
  ---------------------------------------------------------------------
*/
if(isset($_GET["ordem"])) { 
	$_SESSION["ordem"]==$_GET["ordem"] ? $_SESSION["ordem"] = $_SESSION["ordem"] : $_SESSION["ordem"] = $_GET["ordem"]; 
} elseif(!isset($_SESSION["ordem"])) { 
	$_SESSION["ordem"] = "VLR_VENDA DESC, VALOR_ALUGUEL DESC"; 
}

/* 
  ---------------------------------------------------------------------
*/

$sql = "SELECT DISTINCT 
			imo.PLACA, imo.CODIGO, imo.CODIGO_CT, cat.CATEGORIA, cat.GRUPO, imo.STATUS, imo.BAIRRO, imo.CIDADE,
			imo.DORMITORIO AS DORM, imo.ESTAGIO_OBRA,
			imo.SUITE AS SUITE, 
			imo.QUANTITADE_GAR AS VAGA, 
			imo.LANCAMENTO, 
			imo.AREA_PRIVATIVA AS AREA,  
			imo.AREA_TOTAL,  
			imo.VLR_VENDA,
			imo.VALOR_ALUGUEL,
			imo.EMPREENDIMENTO
		FROM CADIMO imo  
			LEFT JOIN CADCAT cat ON cat.CODIGO=imo.CODIGO_CT 
			LEFT JOIN CADCLI cli ON cli.CODIGO_C=imo.CODIGO_C
		WHERE	
			imo.VER_WEB='Sim'
			AND (imo.STATUS='VENDA' OR imo.STATUS='LOCAÇÃO')
			$sql_busca
		ORDER BY ".$_SESSION['ordem']."
		";

//echo $sql;

$sql_limit = " LIMIT ".$comeca_em.",".$_SESSION['regs_pp'];
$rst 	   = mysql_query($sql) or die(mysql_error());
$total_reg = mysql_num_rows($rst);


/* 
  TITULO NAVEGADOR
  ---------------------------------------------------------------------
*/	

$tit_browser  = " ";
$tit_h="";

	 if (!empty($_GET["finalidade"]) && $_GET["finalidade"]=='locacao')		{ $tit_browser .= 'Imóveis para alugar ';}  
else if (!empty($_GET["finalidade"]) && $_GET["finalidade"]=='venda')		{ $tit_browser .= 'Imóveis à venda '; }  
else if (!empty($_GET["favoritos"]) )										{ $tit_browser .= 'Imóveis Favoritos '; }  
else if ( !empty($_GET['estagio']) && $_GET['estagio']==1 ) 	 			{ $tit_browser .=" Entrega Até 1 Ano "; }
else if ( !empty($_GET['estagio']) && $_GET['estagio']==2 ) 	 			{ $tit_browser .=" Lançamentos"; }
else if ( !empty($_GET['estagio']) && $_GET['estagio']==3 ) 	 			{ $tit_browser .=" Pré-Lançamentos"; }
else if ( !empty($_GET['estagio']) && $_GET['estagio']==4 ) 	 			{ $tit_browser .=" Prontos / Usados"; }
else									 									{ $tit_browser .= 'Imóveis '; }

if (!empty($_GET["tipo"])) 
{
	$sqlc = mysql_query("SELECT CATEGORIA FROM CADCAT WHERE CODIGO=".$_GET["tipo"]);
	if(mysql_num_rows($sqlc)>0) 
	{ 
		$st = mysql_fetch_array($sqlc);
		$tit_browser .=' '.Maiusculo($st["CATEGORIA"]); 
	}
}
if (!empty($_GET["busca_cidade"])) 
{
		$tit_browser .=' em '.urldecode(Maiusculo($_GET["busca_cidade"])); 
}
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
   <? include("inc/layout/meta.php"); ?>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
   <meta name="description" content="<?= $tit_browser; ?> - <?= CFG_TITLE ?>" />
   <meta name="keywords" content="imobiliaria porto alegre, imoveis porto alegre, fael imoveis" />      
<meta name="classification" content="imoveis , imobiliaria">  
   <title><?= $tit_browser; ?> - <?= CFG_TITLE; ?></title>
   <link href="inc/css/styles.css" rel="stylesheet" type="text/css" />
   <script type="text/javascript" src="inc/js/jquery.js"></script>
   <script type="text/javascript" src="inc/js/jquery.ui.js"></script>
   <script type="text/javascript" src="inc/js/jquery.cycle.js"></script>
   <script type="text/javascript" src="inc/js/jquery.tooltip.js"></script>
   <script type="text/javascript" src="inc/js/scripts.js"></script>
   <script type="text/javascript" src="inc/js/validaform.js"></script>    
</head>

<body>

<div id="container">

 <? include("inc/layout/header.php"); ?>

 <? include("inc/layout/busca.php"); ?>

 <? include("inc/layout/animacao.php"); ?>



 <div id="mainContent">

   <div id="leftContent">
     <? include("inc/layout/filtro.php"); ?>
     <? include("inc/layout/servicos.php"); ?>
   </div><!-- end #leftContent -->

   <div id="rightContent">

     <h1><?php echo $tit_browser; ?></h1>

     <div class="paginacao">
       <!--<p class="left">Total de imóveis encontrados: <strong><?= $total_reg; ?></strong></p>-->
	<? if($total_reg>0) { ?>
           <select onchange="window.location='<?=current_page()?>?<?=$param?>ordem='+this.value">
           <option value="">Ordenar por:</option>

               <optgroup label="Preço">
               <? if ($_GET['finalidade']=='locacao') { ?>
               <option value="VALOR_ALUGUEL ASC" <?= $_SESSION["ordem"]=="VALOR_ALUGUEL ASC" ? 'selected="selected"' : '' ?> >Menor Preço</option>
               <option value="VALOR_ALUGUEL DESC" <?= $_SESSION["ordem"]=="VALOR_ALUGUEL DESC" ? 'selected="selected"' : ''  ?>>Maior Preço</option>
               <? } else { ?>
               <option value="VLR_VENDA ASC" <?= $_SESSION["ordem"]=="VLR_VENDA ASC" ? 'selected="selected"' : '' ?> >Menor Preço</option>
               <option value="VLR_VENDA DESC" <?= $_SESSION["ordem"]=="VLR_VENDA DESC" ? 'selected="selected"' : ''  ?>>Maior Preço</option>
               <? } ?>
               </optgroup>

               <optgroup label="Área">	
               <option value="imo.AREA_TOTAL ASC" <?= $_SESSION["ordem"]=="imo.AREA_TOTAL ASC" ? 'selected="selected"' : ''  ?>>Menor Área</option>
               <option value="imo.AREA_TOTAL DESC" <?= $_SESSION["ordem"]=="imo.AREA_TOTAL DESC" ? 'selected="selected"' : ''  ?>>Maior Área</option>
               </optgroup>

               <optgroup label="Dormitórios">	
               <option value="imo.DORMITORIO ASC" <?= $_SESSION["ordem"]=="imo.DORMITORIO ASC" ? 'selected="selected"' : ''  ?>>Menos Dormitórios</option>
               <option value="imo.DORMITORIO DESC" <?= $_SESSION["ordem"]=="imo.DORMITORIO DESC" ? 'selected="selected"' : ''  ?>>Mais Dormitórios</option>
               </optgroup>
           </select>
       <? } ?>     
     </div><!-- end .paginacao -->

     <div class="imoveis">
  <?
  if($total_reg>0) {
	  $i=0;
	  $rs = mysql_query($sql." ".$sql_limit) or die(mysql_error());		
	  while($imovel=mysql_fetch_array($rs)) {
		  $i++; $quebra =  ($i%2==0) ? ' quebra' : '' ;
		  include("inc/layout/box.php");
	  }
  }else if( !empty($_GET["favoritos"]) && $total_reg==0 ){ 
	  echo "<br />Você não possui imóveis salvos como favorito. <br />"; 
  }else{ 
	  echo "<br />Não existem imóveis para o filtro selecionado. Refaça seus filtros e tente novamente.<br />"; 
  }	  
     ?>
     </div><!-- end .imoveis -->

     <? if($total_reg>6) { ?>
     <div class="paginacao paginacao-bottom">
       <!--<p class="left">Total de imóveis encontrados: <strong><?= $total_reg; ?></strong></p>-->
       <p class="right"><?= escreve_paginacao($param,$pg,$_SESSION['regs_pp'],$total_reg); ?></p>
     </div><!-- end .paginacao -->
     <? } ?>

   </div><!-- end #rightContent -->

 </div><!-- end #mainContent -->

</div><!-- end #container -->

<? include("inc/layout/footer.php"); ?>
</body>
</html>

 

Se alguém puder me ajudar ficarei muito agradecido.

 

Obrigado a todos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

15mil acessos realmente parece "muito" para um servidor compartilhado.

 

DISTINCT tem a fama de ser LENTO.

rodando esse SQL q você forma ai, direto na base, qnto tempo ele demora para ser processado ?

 

//echo $sql;

rode lá e volte informando.

 

 

 

já ouviu falar de VIEWs

 ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema não é acesso, mais sim seu sql ta consumindo recurso excessivo do servidor.

 

Seu sql ta mau feito, para evitar o site ser retirado, monte este sql de filtro direto no loop

 

LEFT JOIN CADCAT cat ON cat.CODIGO=imo.CODIGO_CT 
                               LEFT JOIN CADCLI cli ON cli.CODIGO_C=imo.CODIGO_C

 

 

temporariamente e posta la no fórum de modelagem que a galera te ajuda melhorar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

WDUarte,

 

outra coisa, o banco mysql esta fora do servidor apache/php e o que está dando pico de uso de CPU é o servidor apache/php. Mesmo assim será que é por causa do mysql?

 

Abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

existem alguns trechos q podem ser melhor escritos, apesar de não aparentemente influencionarem sob a performance.

por exemplo:

                if (!empty($_GET['dormitorio']) && $_GET['dormitorio']==1) { $sql_busca .= " AND imo.DORMITORIO=1"; }   
               if (!empty($_GET['dormitorio']) && $_GET['dormitorio']==2) { $sql_busca .= " AND imo.DORMITORIO=2"; }   
               if (!empty($_GET['dormitorio']) && $_GET['dormitorio']==3) { $sql_busca .= " AND imo.DORMITORIO=3"; }   
               if (!empty($_GET['dormitorio']) && $_GET['dormitorio']==4) { $sql_busca .= " AND imo.DORMITORIO>=4"; } 

é exatamente o mesmo que:

 

if( !empty($_GET['dormitorio'] ) )
{
   $dormitorio = (int)$_GET['dormitorio'];

   if( $dormitorio==4 ) $dormitorio = '>=4';
   else $dormitorio = '='.$dormitorio;

   $sql_busca .= ' AND imo.DORMITORIO'.$dormitorio;
}

 

Nestes trechos do select:

<option value="VALOR_ALUGUEL ASC" <?= $_SESSION["ordem"]=="VALOR_ALUGUEL ASC" ? 'selected="selected"' : '' ?> >Menor Preço</option>
               <option value="VALOR_ALUGUEL DESC" <?= $_SESSION["ordem"]=="VALOR_ALUGUEL DESC" ? 'selected="selected"' : ''  ?>>Maior Preço</option>

eu encapsularia em uma função:

 

 

<?php function selected( $value, $selected ){
   return $value==$selected ? ' selected="selected"' : '';
}
?>
<option value="VALOR_ALUGUEL ASC"<?php echo selected( $_SESSION['ordem'], 'VALOR_ALUGUEL ASC' ); ?>>Menor Preço</option>
<option value="VALOR_ALUGUEL DESC"<?php echo selected( $_SESSION['ordem'], 'VALOR_ALUGUEL DESC' ); ?>>Maior Preço</option>

 

note como o código ficou mais limpo, e como usei aspas simples, visando melhor performance.

 

 

 

Enfim.. pegando trecho por trecho, existem vários detalhes desse tipo que podem ser melhorados.

Sugiro que você vá fazendo, e mostrando como ficou, ai continuamos com a otimização.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Willian,

 

coloquei o primeiro código e já deu erro aqui na aplicação. Vi que o código pode ser melhor escrito, mais "limpo", mas será que isso vai fazer o server apache/php consumir dessa maneira?

 

Every 2.0s: ps u -u fael2                                                            Tue Jan  3 14:37:10 2012

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
fael2     3563  0.0  0.0  85204  1676 ?        S    11:44   0:00 sshd: fael2@pts/1
fael2     3565  0.0  0.0  66296  1764 pts/1    Ss   11:44   0:00 -bash
fael2    23043  0.0  0.0  63408  1012 pts/1    S+   14:37   0:00 watch ps u -u fael2
fael2    23087  4.0  0.0 253364 23244 ?        S    14:37   0:00 /usr/bin/php-cgi
fael2    23089  4.0  0.0 247120 17100 ?        S    14:37   0:00 /usr/bin/php-cgi
fael2    23090  4.0  0.0 247376 17092 ?        S    14:37   0:00 /usr/bin/php-cgi
fael2    23091  4.0  0.0 247376 17088 ?        S    14:37   0:00 /usr/bin/php-cgi
fael2    23092  6.0  0.0 252660 22488 ?        S    14:37   0:00 /usr/bin/php-cgi
fael2    23094  4.0  0.0 246984 16740 ?        S    14:37   0:00 /usr/bin/php-cgi
fael2    23095  3.5  0.0 246984 16764 ?        S    14:37   0:00 /usr/bin/php-cgi
fael2    23096  3.5  0.0 246984 16768 ?        S    14:37   0:00 /usr/bin/php-cgi
fael2    23100  0.0  0.0  65592  1024 pts/1    R+   14:37   0:00 ps u -u fael2

Compartilhar este post


Link para o post
Compartilhar em outros sites

qual foi o erro ?

 

cara... performance é juntar pedaços. Otimizar partes, cada parte otimizada contribui para uma melhor performance.

 

 

 

Voltando ao SQL, se você tirar o DISTINCT, responde em qnto tempo a consulta ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Deu erro aqui:

if( !empty($_GET['dormitorio'] )
{ <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
   $dormitorio = (int)$_GET['dormitorio'];

   if( $dormitorio==4 ) $dormitorio = '>=4';
   else $dormitorio = '='.$dormitorio;

   $sql_busca .= ' AND imo.DORMITORIO'.$dormitorio;
}

 

Retirei o DISTINCT e ficou na mesma, agora variando de 0.083s - 0.089s

 

Estou rodando esse teste de performace no mySQL local e não la do site, pode ser assim?

 

Abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, como você bem disse o servidor MySQL na LocaWeb é separado do servidor WEB, e o que está consumindo muitos recursos neste caso é o PHP, então esquece o SQL agora.

 

Eu já vi muitos scripts de imobiliária bem "porcos" por aí, inclusive já tive que refazer vários. Geralmente o pessoal costuma comprar esses scripts no Mercado Livre a preço de banana e dá nisso. hehe

 

Algo muito comum nesses scripts e que consome muitos recursos é gerar os thumbnails (miniaturas) das fotos dos imóveis em tempo de execução, isso é péssimo se tratando de desempenho e consome muito processamento do servidor. Como eu não consegui ver no código que você postou a parte que exibe os thumbnails dos imóveis, sugiro que você dê uma analisada nesta parte.

 

Qualquer coisa posta aí.

Compartilhar este post


Link para o post
Compartilhar em outros sites

faltou um parenteses:

if( !empty($_GET['dormitorio'] ) )

 

 

Estou rodando esse teste de performace no mySQL local e não la do site, pode ser assim?

não.

A menos que o seu local representasse fielmente as condições do site (quantidade de registros, maquinas, acessos...)

 

rode no site, só assim teremos idéias reais do problema.

Informe os valores com e sem DISTINCT rodando remoto.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Willian agora consegui rodar com aquela alteração, já alterei meu código la em cima.

 

Leozitho,

 

abaixo seguem os phps que tratam das fotos:

 

Este é o include box.php

		<?
		//Foto 		
		if($imovel["CODIGO_CT"]==21){
			$foto = "vista.imobi/fotos/no_foto_terrenos.jpg" ;
		}else{
			$foto = "vista.imobi/fotos/no_foto_g.jpg" ;
		}

           $f=mysql_query("SELECT FILE_PATH_P, FILE_PATH, DESTAQUE_WEB, DESCRICAO, CODIGO_I FROM CDIMIM 
                           WHERE VER_WEB='Sim' AND CODIGO=".$imovel['CODIGO']." 
                           ORDER BY DESTAQUE_WEB DESC, DESCRICAO, CODIGO_I LIMIT 1");
           if (mysql_num_rows($f)) {								if ($imovel["CODIGO_CT"]!=21) {
               $fr=mysql_fetch_assoc($f);
               $foto = DIR_FOTOS.$fr['FILE_PATH'];				}
           }

		$valor = '';
		if ($imovel['STATUS']=='ALUGUEL' || $imovel['STATUS']=='LOCAÇÃO') $valor = $imovel['VALOR_ALUGUEL']; else $valor = $imovel['VLR_VENDA'];

		// ---

		//URL amigavel 		
		//$url_amigavel  = "";
		//$url_amigavel .= str_replace(" ","-",$imovel['CATEGORIA'])."-";
		//$url_amigavel .= str_replace(" ","-",$imovel['BAIRRO'])."-";
		//$url_amigavel .= str_replace(" ","-",$imovel['CIDADE'])."__";
		//$url_amigavel .= $imovel['CODIGO'];
		//$url_amigavel = strtolower($url_amigavel);
		//$url_amigavel = str_replace("/","-",$url_amigavel);
		//$url_amigavel = strtolower(remAcentos($url_amigavel));

		$url_amigavel  = "detalhes.php?codigo=".$imovel['CODIGO'];

		?>
<style type="text/css">
.r {
color: #E77817;
}
</style>


       <div class="imovel <?=$quebra?>">
         <div>
           <div class="cat">
		<? 
			if ($imovel['ESTAGIO_OBRA']=='Lançamento') { 
				echo $imovel['EMPREENDIMENTO'];
				} elseif ($imovel['ESTAGIO_OBRA']=='Revenda') {
					echo $imovel['EMPREENDIMENTO'];
					} else {
						echo $imovel['CATEGORIA']; }
		?>
		</div>
           <div class="cod">Código: <?=$imovel["CODIGO"]?></div>
         </div>
         <div class="foto"><a href="<?=$url_amigavel?>"><img src="<?=$foto?>" /></a></div>
         <div>
           <div class="local"><?=Maiusculo($imovel["BAIRRO"])?> <?=Maiusculo($imovel["CIDADE"])?></div>
           <a href="#" class="fav <?=is_favon($imovel["CODIGO"]);?>" rel="<?=$imovel['CODIGO'];?>">Favoritos</a>
         </div>
         <div>
           <ul>
             <? if ($imovel['DORM']>0) { echo '<li>'.$imovel['DORM']." dormitório"; echo $imovel['DORM']>1 ? "s</li>" : "</li>" ;  } ?>
             <? if ($imovel['AREA']>0) { echo '<li>'.$imovel['AREA']."m² privativos</li>"; }  ?>
             <? if ($imovel['VAGA']>0) { echo '<li>'.$imovel['VAGA']." vaga"; echo $imovel['VAGA']>1 ? "s</li>" : "</li>" ;  } ?>
             <? if ($imovel['AREA_TOTAL']>0) { echo '<li>'.$imovel['AREA_TOTAL']."m² total</li>"; } ?>
           </ul>
           <div class="preco">
			<? echo ($imovel["ESTAGIO_OBRA"]!='Pronto') ? '<small>A partir de</small>' : ''; ?>
			<?= ($valor>0) ? fcurrency('R$ ',$valor) : "Consulte" ; ?>
           </div>
         </div>
         <div>
           <a href="<?=$url_amigavel?>" class="link detalhes">Ver Detalhes do Imóvel</a>
           <? if ($aol_online) { ?>
           <a href="<?=$aol_offline;?>" class="link aol">Atendimento Online</a>
           <? } ?>
         </div>
       </div><!-- end .imovel -->

 

E esse é o PHP que mostra as fotos

<?

$sql="SELECT 
	      imo.*, 
			imo.CODIGO, imo.CODIGO_CT, cat.CATEGORIA, cat.GRUPO, imo.STATUS, imo.BAIRRO, imo.CIDADE, 
			imo.DORMITORIO AS DORM, 
			imo.SUITE AS SUITE, 
			imo.DESCRICAO, 
			imo.QUANTITADE_GAR AS VAGA, 
			imo.ZONA as ZONEAMENTO,  
			imo.AREA_PRIVATIVA AS AREAP,  
			imo.AREA_TOTAL AS AREAT,  
			imo.VLR_VENDA,
			imo.VALOR_ALUGUEL,
			imo.ESTAGIO_OBRA,
			loj.NOME as LOJA_NOM, 
			loj.FONE as LOJA_FON,
			emp.NOME,
			emp.EMAIL
	  FROM CADIMO imo
	  	  LEFT JOIN CADCAT cat ON cat.CODIGO=imo.CODIGO_CT 
		  LEFT JOIN CMPN1 loj  ON loj.CODIGO=imo.CODIGO_CS
		  LEFT JOIN CDIMAG ag ON ag.CODIGO_O=imo.CODIGO
		  LEFT JOIN CADEMP emp ON emp.CODIGO_D=ag.CODIGO_D
	  WHERE 
		  imo.VER_WEB='Sim'  
	  AND ( INSTR(imo.STATUS,'VENDA')>0 OR INSTR(imo.STATUS,'LOCAÇÃO')>0 )
	  ";

if( !empty($_GET['codigo']) && is_numeric($_GET['codigo']) ) 
{ 
	$sql.=" AND imo.CODIGO=".$_GET['codigo']; 
}
else if( !empty($_GET['placa']) ) 
{ 
	if(is_numeric($_GET['placa']))	{ $sql.=" AND imo.CODIGO='".$_GET['placa']."'"; }
	else							{ $sql.=" AND imo.PLACA='".$_GET['placa']."'"; }
}	


//echo $sql;
$query = mysql_query($sql) or die(mysql_error());

if(!mysql_num_rows($query)>0){ msg("Imóvel não encontrado.","back"); }

$imovel= mysql_fetch_array($query);

if($imovel["CODIGO_CT"]==21){
	$fotoG = "vista.imobi/fotos/no_foto_terrenos.jpg" ;
}else{
	$fotoG = "vista.imobi/fotos/no_foto_p.jpg" ;
}	
$f=mysql_query("SELECT FILE_PATH_P, FILE_PATH, DESCRICAO 
			    FROM CDIMIM 
			   	WHERE 
					CODIGO=".$imovel['CODIGO']." AND VER_WEB='Sim'
				ORDER BY DESTAQUE_WEB DESC, CODIGO");

if (mysql_num_rows($f)>0) {
	$rf=mysql_fetch_assoc($f);
	$fotoG=DIR_FOTOS.$rf['FILE_PATH'];
}

?>
<?
// titulo dinamico do resultado
$tit  = "";
$tit .= $imovel["CODIGO"].": ";
$tit .= $imovel["CATEGORIA"]." ";
$tit .= $imovel["BAIRRO"]." ";
$tit .= $imovel["CIDADE"]." ";
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
   <? include("inc/layout/meta.php"); ?>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
   <meta name="description" content="<?= $tit; ?> - <?= CFG_TITLE ?>" />
   <meta name="keywords" content="imobiliaria porto alegre, imoveis porto alegre, fael imoveis" />    
   <meta name="classification" content="imoveis , imobiliaria">    
   <title><?= Maiusculo($tit); ?> - <?= CFG_TITLE; ?></title>
   <link href="inc/css/styles.css" rel="stylesheet" type="text/css" />
   <script type="text/javascript" src="inc/js/jquery.js"></script>
   <script type="text/javascript" src="inc/js/jquery.ui.js"></script>
   <script type="text/javascript" src="inc/js/jquery.lightbox.js"></script>
   <script type="text/javascript" src="inc/js/jquery.tools.js"></script>
   <script type="text/javascript" src="inc/js/jquery.tooltip.js"></script>
   <script type="text/javascript" src="inc/js/scripts.js"></script>
   <script type="text/javascript" src="inc/js/validaform.js"></script>

   <script type="text/javascript" src="http://maps.google.com/maps?file=api&v=2&key=<?=CFG_GMAPS?>&oe=iso-8859-1"></script>
   <script type="text/javascript" src="inc/js/eshapes.js"></script>    
   <? if($imovel['GMAPS_LAT']!='') { ?>
   <script type="text/javascript">
   $(document).ready(function(){
	setTimeout("mapa_imovel(<?=$imovel['GMAPS_LAT']?>,<?=$imovel['GMAPS_LNG']?>,'circulo')",2000);
   });
   </script>
<? } ?>
</head>

<body>
<div id="fb-root"></div>
<script>(function(d, s, id) {
 var js, fjs = d.getElementsByTagName(s)[0];
 if (d.getElementById(id)) {return;}
 js = d.createElement(s); js.id = id;
 js.src = "//connect.facebook.net/pt_BR/all.js#xfbml=1";
 fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
<div id="container">

 <? include("inc/layout/header.php"); ?>

 <? include("inc/layout/busca.php"); ?>

 <div id="mainContent">

   <div id="leftContent">
     <? include("inc/layout/simuladores.php"); ?>
     <? include("inc/layout/semelhantes.php"); ?>
     <? include("inc/layout/servicos.php"); ?>
   </div><!-- end #leftContent -->

   <div id="rightContent">

     <h1><?=Maiusculo($imovel['CATEGORIA'].' '.$imovel['BAIRRO'].' '.$imovel['CIDADE']);?></h1>

      <div id="detalhes">

        <div class="ifoto">
		<?
           if(!empty($imovel["CAMPO_12"])) {
           if(strpos($imovel["CAMPO_12"],"=")) {
               $vd    = split("=",$imovel["CAMPO_12"]);
               $idvid = $vd[1];
           }else{
               $idvid="";   
           }	          
           ?>	
           <div id="foto">
               <!-- YOUTUBE: <?=$imovel["CAMPO_12"]?> -->
               <object width="320" height="270" style="z-index:1">
               <param name="movie" value="http://www.youtube.com/v/<?=$idvid?>&hl=pt-br&fs=1&"></param>
                <param name="allowFullScreen" value="true"></param>
                <param name="allowscriptaccess" value="always"></param>
                <param name="wmode" value="transparent"></param>
                <embed src="http://www.youtube.com/v/<?=$idvid?>&hl=pt-br&fs=1&" 
                 type="application/x-shockwave-flash" 
                 allowscriptaccess="always" 
                 wmode="transparent" 
                 allowfullscreen="true" 
                 width="320" 
                 height="220"
                ></embed>
               </object>
           </div>	      
           <?
           }else{
           ?>	
           <a href="#" class="foto-link"><img src="<?=$fotoG?>" alt="<?=$imovel['CATEGORIA'].' '.$imovel['BAIRRO'].' '.$imovel['CIDADE'];?>" /></a>
           <? } ?>    
        </div>

         <div class="info">
           <h2><?=Maiusculo($imovel['BAIRRO']);?> <?=Maiusculo($imovel['CIDADE']);?></h2>
           <div class="left">
           <table>
             <tr>
               <td class="c1">Código:</td>
               <td class="c1"><strong><?= ($imovel['CODIGO']); ?></strong></td>
             </tr>
             <? if ($imovel['DORM']>0) { ?>
             <tr>
               <td class="c1">Dormitórios:</td>
               <td class="c1"><strong><?= ($imovel['DORM']); ?></strong></td>
             </tr>
             <? } ?>
             <? if ($imovel['SUITE']>0) { ?>
             <tr>
               <td class="c1">Suíte:</td>
               <td class="c1"><strong><?= ($imovel['SUITE']); ?></strong></td>
             </tr>
             <? } ?>
             <? if ($imovel['VAGA']>0) { ?>
             <tr>
               <td class="c1">Garagem:</td>
               <td class="c1"><strong><?= ($imovel['VAGA']); ?></strong> vaga(s)</td>
             </tr>
             <? } ?>
             <? if ($imovel['AREAP']>0) { ?>
             <tr>
               <td class="c1">Área Privativa:</td>
               <td class="c1"><strong><?= ($imovel['AREAP']); ?>m²</strong></td>
             </tr>
             <? } ?>
             <? if ($imovel['AREAT']>0) { ?>
             <tr>
               <td class="c1">Área Total:</td>
               <td class="c1"><strong><?= ($imovel['AREAT']); ?>m²</strong></td>
             </tr>
             <? } ?>
             <? if ($imovel['VLR_VENDA']>0) { ?>
             <tr>
               <td class="c1"><? echo ($imovel["ESTAGIO_OBRA"]!='Pronto') ? 'A partir de' : 'Venda'; ?>:</td>
               <td class="c2"><strong><?= ($imovel['VLR_VENDA']>0) ? fcurrency('R$ ',$imovel['VLR_VENDA']) : "Consulte" ; ?></strong></td>
             </tr>
             <? } ?>
             <? if ($imovel['VALOR_ALUGUEL']>0) { ?>
             <tr>
               <td class="c1">Locação:</td>
               <td class="c2"><strong><?= ($imovel['VALOR_ALUGUEL']>0) ? fcurrency('R$ ',$imovel['VALOR_ALUGUEL']) : "Consulte" ; ?></strong></td>
             </tr>
             <? } ?>
             <? if ($imovel['VLR_CONDOMINIO']>0) { ?>
             <tr>
               <td class="c1">Condomínio:</td>
               <td class="c2"><strong><?= ($imovel['VLR_CONDOMINIO']>0) ? fcurrency('R$ ',$imovel['VLR_CONDOMINIO']) : "Consulte" ; ?></strong></td>
             </tr>
             <? } ?>
             <? if ($imovel['VLR_IPTU']>0) { ?>
             <tr>
               <td class="c1">IPTU:</td>
               <td class="c2"><strong><?= ($imovel['VLR_IPTU']>0) ? fcurrency('R$ ',$imovel['VLR_IPTU']) : "Consulte" ; ?></strong></td>
             </tr>
             <? } ?>
		  <? if (($imovel['ESTAGIO_OBRA']=='Lançamento') || ($imovel['ESTAGIO_OBRA']=='Revenda')) { ?>
             <tr>
               <td class="c1">Previsão de Entrega:</td>
               <td class="c2"><strong><?= ($imovel['CAMPO_9']!='') ? date("m/Y", strtotime($imovel['CAMPO_9'])) : "Consulte" ; ?></strong></td>
             </tr>
             <? } ?>

		</table>
           </div>
           <ul class="links">
             <? if ($imovel['LOJA_NOM']!='' && $imovel['LOJA_FON']!='') { ?><li style="text-align:center"><?= $imovel['LOJA_NOM'].'<br /><strong>'.$imovel['LOJA_FON'].'</strong><br />'; ?></li><? } ?>
             <? if ($aol_online) { ?>
             <li><a href="<?=$aol_href;?>" class="aol">Atendimento Online</a></li>
             <? } ?>
             <li><a href="#" class="fav <?=is_favon($imovel["CODIGO"]);?>" rel="<?php echo $imovel['CODIGO']; ?>">Adicionar aos favoritos</a></li>
             <li><a href="#" class="email">Enviar por email</a></li>
             <li><a href="print.php?codigo=<?php echo $imovel['CODIGO']; ?>" class="print">Imprimir este Imóvel</a></li>
           </ul>
		<div class="fb-like" data-href="http://www.fael.com.br/detalhes.php?codigo=<?= ($imovel['CODIGO']); ?>" data-send="true" data-layout="box_count" data-width="450" data-show-faces="true"></div>
         </div>
       </div><!-- end #detalhes -->

	<?php
       $f=mysql_query("SELECT FILE_PATH, FILE_PATH_P, DESCRICAO, CODIGO_I, DESTAQUE_WEB, IF(DESCRICAO='' OR DESCRICAO IS NULL,0,1) AS TEM_DESC FROM CDIMIM 
                     WHERE 
                     VER_WEB='Sim' AND CODIGO=".$imovel['CODIGO']." 
                     ORDER BY DESTAQUE_WEB DESC, DESCRICAO, CODIGO_I");
       if(mysql_num_rows($f)>0) {
       ?>
       <div id="fotos" class="detalhesbox">
           <h3 class="topo">Fotos do Imóvel</h3>
           <div class="wrapper">
             <div class="btn btnLeft prevPage"></div>
             <div class="scrollArea">
               <div class="scrollable" style="">
                 <div class="items">
                   <? while($foto=mysql_fetch_array($f)) { ?>
                   <div><a class="tooltip" href="<?=DIR_FOTOS.$foto['FILE_PATH'];?>" title="<?=$foto['DESCRICAO'];?>"><img src="<?=DIR_FOTOS.$foto['FILE_PATH_P']?>" /></a></div>
                   <? } ?>                 
                 </div>
               </div>
             </div>
             <div class="btn btnRight nextPage"></div>
           </div>
       </div><!-- end #fotos -->
       <? } ?>                 

       <? if (trim($imovel['DESCRICAO'])!='' && (trim($imovel['ESTAGIO_OBRA'])=='Lançamento' || trim($imovel['ESTAGIO_OBRA'])=='Lançamento')) { ?>
       <div id="descricao" class="detalhesbox">
         <h3 class="topo">Descrição</h3>
         <p><?=nl2br($imovel['DESCRICAO'])?></p>
       </div>
       <? } ?>

	<? 
       //condominio
	//Agua quente, Ar central, Area Servico, Banho Auxiliar, Churrasq, Copa, Cozinha, Cozinha Montada, Deck, Dep Empr, Despensa, Estar Intimo, Gabinete, Gradeado, Hall, Home Theater, Lareira, Lavabo, Mobiliado, Patio, Piscina, Reformado, Sacada, Sala Jantar, Sauna, Semi Mobiliado, Split, Suite Master, Terraco, Vista Panor
	$listadecampos = "Ar Condicionado, Armario Cozinha, Armarios Embutidos, Casa Fundo, Caseiro, Tem Closet, Copa Cozinha, Cozinha com Azulejos, Deposito, Despensa, Entrada Lateral, Escritório, Esquina, Geminada, Entrada Servico Independente, Infra Internet, Isolada, Jardim, Lareira, Living tabuas, Mezanino, Quintal, Rua Asfaltada, Sala Almoco, Sala Jantar, Sala Intima, Salao de Festas, Seguranca Rua, Semi Geminada, Telefone, Varanda, WC Empregada, Agua quente, Ar central, Area Servico, Banho Auxiliar, Churrasq, Copa, Cozinha, Cozinha Montada, Deck, Dep Empr, Despensa, Estar Intimo, Gabinete, Gradeado, Hall, Home Theater, Lareira, Lavabo, Mobiliado, Patio, Piscina, Reformado, Sacada, Sala Jantar, Sauna, Semi Mobiliado, Split, Suite Master, Terraco, Vista Panor, Sala Estar, Lavanderia, Mobilia Quartos, Mobilia Cozinha, Mobilia Banheiros";
       $var = get_carac($imovel['CODIGO'],$listadecampos);
       if(count($var)>0) { 
       ?> 		
       <div class="detalhesbox">
         <h3 class="topo">Características do Imóvel</h3>
         <ul class="checks">
           <? for($i=0;$i<count($var);$i++){ echo '<li>'.$var[$i].'</li>'; } ?>
         </ul>
       </div>
       <?php
       }
       ?>

       <!-- end #localizacao 
	<? //if ($imovel['GMAPS_LAT']!="" && (trim($imovel['ESTAGIO_OBRA'])=='Lançamento' || trim($imovel['ESTAGIO_OBRA'])=='Lançamento')) { ?>   
       <div id="localizacao" class="detalhesbox">
         <h3 class="topo">Localização do Imóvel</h3>
         <div id="map"></div>
       </div> 
       <? //} ?> -->                

       <div id="imovel-form" class="detalhesbox">

           <h3 class="topo">Fale com nossos Corretores</h3>
           <p>Para aproveitar esta oportunidade, por favor, envie o formulário abaixoque um dos nossos Corretores entrará em contato.</p>
           <form action="detalhes.php?act=send&codigo=<?=$imovel['CODIGO'];?>" method="post" name="maisinfo" id="maisinfo" class="validaform">
           <input name="codigo" type="hidden" value="<?=$imovel['CODIGO'];?>" />
           <input name="status" type="hidden" value="<?= ($imovel['STATUS']=='LOCAÇÃO') ? 'LOC' : 'VEN';?>" />
		<input name="corretor" type="hidden" value="<?=$imovel['NOME'];?>" />
		<input name="emailagenciador" type="hidden" value="<?=$imovel['EMAIL'];?>" />
		<input name="estagio_obra" type="hidden" value="<?=$imovel['ESTAGIO_OBRA'];?>" />
           <div>

           <fieldset class="linha">
               <label>Nome:*</label>
               <input type="text" class="text" name="nome" />
           </fieldset>

           <fieldset  class="linha">
               <label>E-mail:*</label>
               <input type="text" class="text" name="email" />
           </fieldset>

           <fieldset class="linha">
               <label>Telefone:*</label>
               <input type="text" class="text" name="telefone" />
           </fieldset  class="linha">

           <fieldset class="quebra linha">
               <label>Como nos conheceu?</label>
               <select name="onde" class="text">
                 <option value="">Selecione</option>
                 <option>Classificados jornal</option>
                 <option>Corretor</option>
                 <option>Evento</option>
                 <option>Folder</option> 
                 <option>Google</option>
                 <option>Indicação de amigo</option>
                 <option>Internet</option>
                 <option>Já conheço a imobiliária</option>
                 <option>Lista telefônica</option>
                 <option>Outdoor</option>
                 <option>Placa</option>
                 <option>Outros</option>                          
               </select>                    
           </fieldset>

           <fieldset class="big linha">
               <label>Sua mensagem:*</label>
               <textarea name="texto" class="text"></textarea>
               <div>
                 <label class="nws"><input name="nws" type="checkbox" value="ok" checked="checked"> Quero receber informativos e oportunidades da Fael por e-mail.</label>
                 <input type="image" src="img/design/btn_enviar.png" class="submit" />
               </div>
           </fieldset>

		<fieldset class="linha">
             <label>Validação Anti-Spam: *</label>
             <input type="text" name="digcod" class="text"  value="" style="width:70px" />                  
             <?
             /* CAPTCHA X */
             $captcha = array('eww4','eww8','ukg4','dxq1','nsq7','fvh8','xah3','fws5','usz6','ewu6','yku9');
             $mostrar1 = array_rand($captcha);
             $_SESSION["digcod1"]=$captcha[$mostrar1]; 
             echo ('<img src="img/captcha/'.$mostrar1.'.gif" height="23" style="padding: 0 0 0 10px; float: right" />');
             ?>                   
           </fieldset>                    

           </div>
         </form>
       </div><!-- end #imovel-form -->
   <div>
         <p>* Os preços, valores e informações acima exibidos, poderão sofrer mudanças sem prévio aviso. Por este motivo todos os preços e informações deverão ser confirmados pelo departamento comercial da Fael Imóveis.</p>
       </div>  
   </div><!-- end #rightContent -->

 </div><!-- end #mainContent -->

</div><!-- end #container -->

 

Obrigado a todos!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pelo visto os seus thumbnails são criados na hora do envio e não em tempo de execução, então não é esse o problema.

 

Talvez o problema seja a quantidade de acessos mesmo, eu já tive sérios problemas com relação a isso na Locaweb. Eu tinha um site que começou a aumentar o número de visitas e eles tiraram do ar (isso é super comum lá), queriam me empurrar pra um dedicado ou Cloud Server. Daí na época migrei pro UOL HOST e o site ficou mais dois anos lá crescendo sem parar em servidor compartilhado e com o desempenho muito superior. Até que eu contratei um servidor dedicado porque precisava de mais espaço em disco, se não ele tava até hoje lá rodando sem nenhum problema e bem mais rápido que na LocaWeb. Eu não sei o que acontece com a LocaWeb, se os servidores que eles usam são meia boca, se entopem de clientes no mesmo servidor até não aguentar mais, ou se as duas coisas.

 

Dê mais uma revisada nos códigos do seu sistema aí pra ver se encontra gargalos de programação, se não encontrar sugiro que migre de empresa de hospedagem. 15 mil acessos por mês não é muito não, são apenas 500 acessos por dia e 20 acessos por hora. Pagar um servidor dedicado só pra atender 20 acessos por hora é que é um exagero. natal_tongue.gif

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, não é a minha intenção falar mal da Locaweb, mas 15 mil acessos por mês é algo infímo perto do que uma hospedagem compartilhada pode te oferecer. Eu tenho um site com 16 mil acessos por dia, aproximadamente 380.000 mil por mês e nunca ficou fora do ar. (hospedagem compartilhada nos EUA -> http://www.hostgator.com/)

 

Sobre o seu projeto, como dito pelos colegas acima, tente fazer cache de arquivo, de consultas MySQL repetidas ou procurar um servidor que libere hardware pra você.

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.