Likes Likes:  0
Resultaten 1 tot 3 van de 3
  1. #1
    Cronjob loopt te lang door
    geregistreerd gebruiker
    1 Berichten
    Ingeschreven
    04/09/09

    Locatie
    Alkmaar

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: nee
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    Thread Starter

    Cronjob loopt te lang door

    Goedendag,

    ik heb een probleem en ik hoop dat iemand me daarmee kan helpen.

    Kort samengevat:

    Een file genaamd 'fill_zm' maakt gebruik van een for-loop function. In de functie worden in totaal 7x3=21 variabelen opgevraagt uit andere functies. De functie zet deze variabelen automatisch in een database.

    Bij Cpanel laat ik deze command elke minuut lopen. Maar ik krijg bericht dat de cronjob veel te lang duurt. In extreme gevallen nam de cronjob tussen de 70 en 100 seconden in beslag. Terwijl doorgaans deze loop 4 tot 7 seconden duurt.

    Ik heb geprobeerd om het probleem op te lossen door een if-statement te plaatsen. Hiermee wil ik bereiken dat als de loop meer dan 15seconden draait , de loop '0' returend, zodat hij stopt. Alleen het probleem treedt nog steeds op..

    Hieronder de code:

    [PHP]<?php

    date_default_timezone_set('Europe/Amsterdam');
    set_time_limit(40);
    $time_start_total = microtime(true);
    $time_inside = microtime(true);

    include('decibel_zm.php');
    include('skyradio_zm.php');
    include('veronica_zm.php');
    include('wildfm_zm.php');
    include('tmfhitradio_zm.php');
    include('skylove_zm.php');
    include('classicfm_zm.php');
    include('../connectdb.php');
    include('../find.php');

    $time_inside_end = microtime(true);
    $time = $time_inside_end - $time_inside;
    echo $time . ' ' . 'begin' . '<br><br>';





    for($i = 0; $i < 1; $i++) {
    $time_inside = microtime(true);


    $song = wildfm_zm();
    $title = addslashes($song[1]);
    $artist = addslashes($song[0]);
    mysql_query("REPLACE zometeen (radio, lyric, title, artist) values('$song[2]', 'None', '$title', '$artist')");


    $time_inside_end = microtime(true);
    $time = $time_inside_end - $time_inside;
    echo '<strong>----- Time for wildfm is: ';
    echo $time_inside_end - $time_inside . '<br /><br /></strong>';
    echo $time;
    if ($time > 10) {
    return 0;
    }

    $song = veronica_zm();
    $title = addslashes($song[1]);
    $artist = addslashes($song[0]);
    mysql_query("REPLACE zometeen (radio, lyric, title, artist) values('$song[2]', 'None', '$title', '$artist')");

    $time_inside_end = microtime(true);
    $time = $time_inside_end - $time_inside;
    echo '<strong>----- Time for +veronica is: ';
    echo $time_inside_end - $time_inside . '<br /><br /></strong>';
    echo $time;
    if ($time > 10) {
    return 0;
    }

    $song = skyradio_zm();
    $title = addslashes($song[1]);
    $artist = addslashes($song[0]);
    mysql_query("REPLACE zometeen (radio, lyric, title, artist) values('$song[2]', 'None', '$title', '$artist')");

    $time_inside_end = microtime(true);
    $time = $time_inside_end - $time_inside;
    echo '<strong>----- Time for +skyradio is: ';
    echo $time_inside_end - $time_inside . '<br /><br /></strong>';
    echo $time;
    if ($time > 10) {
    return 0;
    }

    $song = decibel_zm();
    $title = addslashes($song[1]);
    $artist = addslashes($song[0]);
    mysql_query("REPLACE zometeen (radio, lyric, title, artist) values('$song[2]', 'None', '$title', '$artist')");

    $time_inside_end = microtime(true);
    $time = $time_inside_end - $time_inside;
    echo '<strong>----- Time for +decibel is: ';
    echo $time_inside_end - $time_inside . '<br /><br /></strong>';
    echo $time;
    if ($time > 11) {
    return 0;
    }

    $song = classicfm_zm();
    $title = addslashes($song[1]);
    $artist = addslashes($song[0]);
    mysql_query("REPLACE zometeen (radio, lyric, title, artist) values('$song[2]', 'None', '$title', '$artist')");

    $time_inside_end = microtime(true);
    $time = $time_inside_end - $time_inside;
    echo '<strong>----- Time for +classicfm is: ';
    echo $time_inside_end - $time_inside . '<br /><br /></strong>';
    echo $time;
    if ($time > 11) {
    return 0;
    }

    $song = skylove_zm();
    $title = addslashes($song[1]);
    $artist = addslashes($song[0]);
    mysql_query("REPLACE zometeen (radio, lyric, title, artist) values('$song[2]', 'None', '$title', '$artist')");

    $time_inside_end = microtime(true);
    $time = $time_inside_end - $time_inside;
    echo '<strong>----- Time for +skylove is: ';
    echo $time_inside_end - $time_inside . '<br /><br /></strong>';
    echo $time;
    if ($time > 11) {
    return 0;
    }

    $song = tmfhitradio_zm();
    $title = addslashes($song[1]);
    $artist = addslashes($song[0]);
    mysql_query("REPLACE zometeen (radio, lyric, title, artist) values('$song[2]', 'None', '$title', '$artist')");

    $time_inside_end = microtime(true);
    $time = $time_inside_end - $time_inside;
    echo '<strong>----- Time for one loop is: ';
    echo $time_inside_end - $time_inside . '<br /><br /></strong>';
    echo $time;
    if ($time > 13) {
    return 0;
    }
    }
    $time_end_total = microtime(true);
    echo 'Total time elapsed running this script: <strong>';
    echo $time_end_total - $time_start_total . '</strong>';[/PHP]


    Ik hoop dat iemand een idee heeft wat de oorzaak is.

    Bedankt voor het lezen.

    Vdieduksman

  2. #2
    Cronjob loopt te lang door
    geregistreerd gebruiker
    73 Berichten
    Ingeschreven
    27/07/09

    Locatie
    Delft

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: nee
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    Dag Vdieduk,

    Waar blijft de tijd? In PHP of in MySQL? Heb je de slow query logger van MySQL aan staan?

    Kees Jan

  3. #3
    Cronjob loopt te lang door
    moderator
    7.022 Berichten
    Ingeschreven
    29/07/03

    Locatie
    Nijmegen

    Post Thanks / Like
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)
    175 Berichten zijn liked


    Naam: Mike
    Bedrijf: admin.nu
    URL: www.admin.nu
    Registrar SIDN: Ja
    KvK nummer: 09139651

    Weet niet wat er in de functies gebeurd maar vermoed dat je een socket opent en bepaalde content van een zender ophaald ? Je kan met php en behulp van pcntl processen forken binnen je eerste proces. Op deze manier kun je dus meerdere gegevens tegelijk op te halen.

    Ben alleen bang dat dit niet geactiveerd is op je cpanel server, en een beetje reeele sysadmin zal dit ook niet activeren op een shared machine
    "Zo zijn ook wij één leverancier. Dé leverancier in gedegen Linux kennis, wanneer jij dat nodig hebt."
    Boek je admin vandaag nog via : www.admin.nu
    Gevestigd in Nederland en Moldavië

    Lees hier de webhostingtalk.nl forum regels en voorwaarden!



Labels voor dit Bericht

Webhostingtalk.nl

Contact

  • Rokin 113-115
  • 1012 KP, Amsterdam
  • Nederland
  • Contact
© Copyright 2001-2021 Webhostingtalk.nl.
Web Statistics