Php fuite de mémoire?

Fermé
lipdjo Messages postés 21 Date d'inscription lundi 9 juin 2014 Statut Membre Dernière intervention 29 janvier 2015 - Modifié par lipdjo le 22/09/2014 à 11:22
lipdjo Messages postés 21 Date d'inscription lundi 9 juin 2014 Statut Membre Dernière intervention 29 janvier 2015 - 22 sept. 2014 à 14:47
Bonjour,

Plus ou moins mon code est structurée de la façon suivante.Quand je le lance , il marche bien et s'arrête après quelque temps(environ 1 jour et demi).Selon vous,serait ce un problème de fuite de mémoire?


<?php

$url='******';

$bdd= '' ;
$user = 'root';
$password = '*******';
$server = '127.0.0.1';
$db = 'log_database';
$db2 = 'log_stockage';


try
{
$bdd = new PDO("mysql:host=$server;dbname=$db",$user,$password,array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
$bdd2 = new PDO("mysql:host=$server;dbname=$db2",$user,$password,array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
}
catch (Exception $e)
{
die('Erreur : ' . $e->getMessage());
}


while(true)
{

$options=array(
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HEADER => true
);

$curl = curl_init();

curl_setopt_array($curl,$options);

try
{
$content = curl_exec($curl);
}
catch (Exception $e)
{
die('Erreur : ' . $e->getMessage());
}

curl_close($curl);


// i use the variable $content to load some tables in my database

$bdd->exec ("INSERT INTO ***** (****) VALUES ('*****')");
$bdd2->exec("INSERT INTO ***** (****) VALUES ('*****')");

sleep(6);

}

?>


A voir également:

1 réponse

Meoran Messages postés 1562 Date d'inscription vendredi 28 août 2009 Statut Membre Dernière intervention 8 avril 2015 206
22 sept. 2014 à 13:24
Tu m'étonnes que ça plante au bout d'un moment...

La solution : fait une boucle qui dure une heure, qui lance un script php indépendant (avec exec), puis qui s'arrête.
0
lipdjo Messages postés 21 Date d'inscription lundi 9 juin 2014 Statut Membre Dernière intervention 29 janvier 2015
Modifié par lipdjo le 22/09/2014 à 14:49
Excuse moi je n'ai pas bien compris.Déjà il est ou exactement le problème? je dois charger mes tables chaque 6 secondes.Comment devrais je faire?

faire un script avec juste la boucle infinie dans laquelle je mettrais exec pour lancer un autre script dans lequel il y' aurait la connexion à la base et le chargement de cette dernière? faire une connexion chaque 6 secondes ne ferait pas exploser la cpu?
0