Foros del Web » Programando para Internet » PHP »

Servidor saturado

Estas en el tema de Servidor saturado en el foro de PHP en Foros del Web. Buenas noches colegas: Tengo un par de consultas que hacerles en base a un problema grave que estoy teniendo con mi servidor, y es que ...
  #1 (permalink)  
Antiguo 17/11/2009, 17:32
 
Fecha de Ingreso: julio-2008
Ubicación: Neuquen
Mensajes: 143
Antigüedad: 15 años, 9 meses
Puntos: 1
Exclamación Servidor saturado

Buenas noches colegas:

Tengo un par de consultas que hacerles en base a un problema grave que estoy teniendo con mi servidor, y es que estoy consumiendo demasiados recursos al nivel de colapsar el sitio. He creado un sitio de videos, y hay dos archivos php que me comenmuchisimos recursos, al pricipio supe que el problema en si era que le habia colocado al codigo pconnect(); lo cual insistentemente llamaba a la base y probocaba el problema por ende lo cambie a connect(), si bien alivió un poco la demanda del servidor sigo con el problema y me han suspendido el sitio por este motivo hasta que arregle el sitio. Tengo dos archivos php que estan llamando constantemente

el primero es este

Código PHP:
<?php
include("include/config.php");
include(
"include/functions/import.php");

header("Content-Type: text/xml"); 
header("Expires: 0"); 
print 
"<?xml version=\"1.0\" encoding=\"utf-8\" ?>\n";

$VIDEOID intval($_REQUEST['videoid']);
print 
"<xml>\n";

if(
$config['evads'] == "1")
{
    if(
$config['evadspr'] == "1")
    {
        
$query3="SELECT categories FROM videos WHERE VIDEOID='".mysql_real_escape_string($VIDEOID)."'";
        
$executequery3=$conn->execute($query3);
        
$categories $executequery3->fields[categories];
            
        
$query4 "SELECT AID,url,image FROM vads WHERE active='1' AND (display='0' OR display='1') AND (category='0' OR category='".mysql_real_escape_string($categories)."') ORDER BY rand() LIMIT 1"
        
$executequery4 mysql_query($query4);
        while (
$results4 mysql_fetch_array($executequery4)) 
        { 
            
$AID intval($results4['AID']);
            
$aflv $config['baseurl']."/vads/".$AID.".flv";
            
$aurl $results4['url'];
            
$ai $results4['image'];
            if(
$ai != "")
            {
                
$aimage $config['baseurl']."/vads/".$AID.".".$ai;
                print 
"<preroll>\n";
                print 
"<image active=\"true\"  path=\"$aimage \" link=\"$aurl\" time=\"$config[vadimgtime]\"/>";
                print 
"</preroll>\n";
            }
            else
            {
                print 
"<preroll>\n";
                print 
"<video active=\"true\" path=\"$aflv\"  link=\"$aurl\" />\n";
                print 
"</preroll>\n";
            }
            
$query2="UPDATE vads SET views=views+1 WHERE AID='".mysql_real_escape_string($AID)."'";
            
$executequery2=$conn->execute($query2);
        }
    }
    if(
$config['evadspo'] == "1")
    {
        
$query3="SELECT categories FROM videos WHERE VIDEOID='".mysql_real_escape_string($VIDEOID)."'";
        
$executequery3=$conn->execute($query3);
        
$categories $executequery3->fields[categories];
            
        
$query4 "SELECT AID,url,image FROM vads WHERE active='1' AND (display='0' OR display='2') AND (category='0' OR category='".mysql_real_escape_string($categories)."') ORDER BY rand() LIMIT 1"
        
$executequery4 mysql_query($query4);
        while (
$results4 mysql_fetch_array($executequery4)) 
        { 
            
$AID intval($results4['AID']);
            
$aflv $config['baseurl']."/vads/".$AID.".flv";
            
$aurl $results4['url'];
            
$ai $results4['image'];
            if(
$ai != "")
            {
                
$aimage $config['baseurl']."/vads/".$AID.".".$ai;
                print 
"<postroll>\n";
                print 
"<image active=\"true\"  path=\"$aimage \" link=\"$aurl\" time=\"$config[vadimgtime]\"/>";
                print 
"</postroll>\n";
            }
            else
            {
                print 
"<postroll>\n";
                print 
"<video active=\"true\" path=\"$aflv\" link=\"$aurl\" />\n";
                print 
"</postroll>\n";
            }
            
$query2="UPDATE vads SET views=views+1 WHERE AID='".mysql_real_escape_string($AID)."'";
            
$executequery2=$conn->execute($query2);
        }
    }
}

$query "SELECT VIDEOID,title,tags FROM videos WHERE active='1' AND VIDEOID='".mysql_real_escape_string($VIDEOID)."' ORDER BY VIDEOID desc LIMIT 1";
$executequery mysql_query($query);

while (
$results mysql_fetch_array($executequery)) 

    
$baseurl $config['baseurl'];
    
$flvurl $baseurl."/vdata/".$VIDEOID.".flv";
    
$thumburl $config['imageurl']."/videothumbs/".$VIDEOID."-1.jpg";
    print 
"<file path=\"$flvurl\" image=\"$thumburl\" />\n";
    
    
$playerurl $baseurl."/mm_player.swf";
    
    print 
"<embed><![CDATA[<object><embed src=\"$baseurl/mm_player.swf?http_base_url=$baseurl/&videoid=$VIDEOID\" FlashVars=\"http_base_url=$baseurl/&videoid=$VIDEOID\" quality=\"high\" bgcolor=\"#000000\"  width=\"395\" height=\"370\" loop=\"false\" align=\"middle\" allowFullScreen=\"true\" allowScriptAccess=\"always\"  type=\"application/x-shockwave-flash\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\"  scale=\"exactfit\" > </embed></object>]]>\n";
     print 
"</embed>\n";
    
    
$mailurl $baseurl."/mm_mail.php?videoid=$VIDEOID";
    print 
"<php_path value=\"$mailurl\" />\n";
    
    print 
"<link value=\"$baseurl/videos/$VIDEOID/";
    print 
seo_clean_titles($results['title']);
    print 
"\" />\n";
    
    
$vtags $results['tags'];
}

print 
"<related_videos>\n";

$videotags[] = $vtags;
$videotags[0] = str_replace("'""''"$videotags[0]);
$videotags[0] = str_replace("  """$videotags[0]);
$videotags[0] = str_replace("-"""$videotags[0]);
$videotagssplit explode(" ",$videotags[0]);
$stripapos str_replace("'""''"$vtags);
$videotagsstr "%".$stripapos."%' ";

if (
count($videotagssplit)>=1)
{
    for(
$i=0;$i<count($videotagssplit);$i++)
    {
        if (
$videotagssplit[$i] != "" && $videotagssplit[$i] != "-" && $videotagssplit[$i] != " ")
        {
            
$videotagsstr.="or tags like '%$videotagssplit[$i]%' ";
            
$videotagsstr.="or title like '%$videotagssplit[$i]%' ";
        }
    }
}
$videotagsstr .= "' ";
        
$query "SELECT VIDEOID,title FROM videos WHERE (tags like '$videotagsstr') AND public='1' AND active='1' AND VIDEOID!='".mysql_real_escape_string($VIDEOID)."' ORDER BY VIDEOID desc LIMIT 20"
$executequery mysql_query($query);
while (
$results mysql_fetch_array($executequery)) 

    
$rthumburl $config['imageurl']."/videothumbs/".$results['VIDEOID']."-1.jpg";
    
$rtitle $results['title']; 
    
$rtitle utf8_encode($rtitle);
    
$rvideourl $baseurl."/videos/".$results['VIDEOID']."/".seo_clean_titles_regular($results['VIDEOID']).$config['seo_title_include'];
    print 
"<video thumb=\"$rthumburl\" title=\"$rtitle\" link=\"";
    
    print 
"$baseurl/videos/".$results['VIDEOID']."/";
    print 
seo_clean_titles($results['title']);
    print 
"\" />\n";
}

mysql_close(); 
print 
"</related_videos>\n";
print 
"<button_sharing value=\"1\"/>\n";
print 
"<buttonsname>\n";
print 
"<replay value=\"$langb[40]\"/>\n";
print 
"<play_btn value=\"$langb[41]\"/>\n";
print 
"<seeking value=\"$langb[42]...\"/>\n";
print 
"<ready value=\"$langb[43]\"/>\n";
print 
"<loading value=\"$langb[44]\"/>\n";
print 
"<paused value=\"$langb[45]\"/>\n";
print 
"<ready value=\"$langb[46]\"/>\n";
print 
"<embed_box_text value=\"$langb[47]\"/>\n";
print 
"<embed value=\"$langb[48]\"/>\n";
print 
"<get_link value=\"$langb[49]\"/>\n";
print 
"<copy_link_btn value=\"$langb[50]\"/>\n";
print 
"<copy_code_btn value=\"$langb[51]\"/>\n";
print 
"<send_message_btn value=\"$langb[52]\"/>\n";
print 
"<email  value=\"$langb[53]\"/>\n";
print 
"<your_name value=\"$langb[54]\"/>\n";
print 
"<your_email value=\"$langb[55]\"/>\n";
print 
"<friends_email_adresses value=\"$langb[56]\"/>\n";
print 
"<message value=\"$langb[57]\"/>\n";
print 
"</buttonsname>\n";
print 
"</xml>"
?>
y el segundo este:

Código PHP:
<?php

include("include/config.php");
include(
"include/functions/import.php");

header("Content-Type: text/xml"); 
header("Expires: 0"); 
print 
"<?xml version=\"1.0\" encoding=\"utf-8\" ?>\n";
$VIDEOID intval($_REQUEST['videoid']);
print 
"<xml>\n";
if(
$config['ta_enable'] == "1")
{
    print 
"<advertisment time=\"$config[ta_sec]\" title=\"$config[ta_name]\">\n";
    
$query3="SELECT categories FROM videos WHERE VIDEOID='".mysql_real_escape_string($VIDEOID)."'";
    
$executequery3=$conn->execute($query3);
    
$categories intval($executequery3->fields[categories]);
    if(
$categories 0)
    {
        
$max $config['ta_max'];
        
$query4 "SELECT AID,name,details,url,url2 FROM tads WHERE active='1' AND (category='0' OR category='".mysql_real_escape_string($categories)."') ORDER BY rand() LIMIT $max"
        
$executequery4 mysql_query($query4);
        while (
$results4 mysql_fetch_array($executequery4)) 
        { 
            
$AID intval($results4['AID']);
            
$tname $results4['name'];
            
$tdetails $results4['details'];
            
$turl $results4['url'];
            
$turl2 $results4['url2'];
            print 
"<text_ads>\n";
            print 
"<title>$tname</title>";
            print 
"<description>$tdetails</description>";
            print 
"<text_link>$turl</text_link>";
            print 
"<go_link>$turl2</go_link>";
            print 
"</text_ads>\n";
            
$query2="UPDATE tads SET views=views+1 WHERE AID='".mysql_real_escape_string($AID)."'";
            
$executequery2=$conn->execute($query2);
        }
    }
    
mysql_close(); 
    print 
"</advertisment>\n";
}
print 
"</xml>"
?>
lo he revisado y no doy con el problema, creo, aunque no estoy seguro que pueden ser las reiteradas llamadas de execute.

A ver si algun profesional me puede ayuda, gracias sinceramente.

Saludos!
__________________
Si vas a hacer una pregunta y nosotros nos apuramos en ayudarte, ayudanos al responder rapido. Y si encontraste la solución, posteala para que puedas ayudar a muchas otras personas.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:19.