MySQL

Osaako joku sanoa miten tuota bencmark -funktiota käytetään? Eli funktiota mikä kertoo palvelimen nopeuden...
Olen itse kokeillut mutta en saa tulostumaan mitään järkevää..
4282
Äänestä

Muut lukivat myös

Vastaukset 4

Vanhimmat

Nyt sain tulostumaan seuraavaa:
-0.787616Array ( [0] => 0 [BENCHMARK(1000000,10 10)] => 0 )

Mutta miksi tuo luku on miinusmerkkinen? Käsittääkseni se kuuluisi olla positiivinen?

Äänestä
  • Niin käsittääkseni tuo BENCHMARK suorittaa halutun toiminnon x kertaa. Jotta pystyisit aikaa mitata niin sulla täytyy olla PHP:ssä ajanmittaus juttu.

    Katsos http://fi2.php.net/manual/fi/function.microtime.php

    Tuo - viittaisi siihen että vähennät alotusajasta nykyisen ajan, tuo pitäisi tehdä juurikin toisinpäin.

    Äänestä

  • Jejej kirjoitti:

    Niin käsittääkseni tuo BENCHMARK suorittaa halutun toiminnon x kertaa. Jotta pystyisit aikaa mitata niin sulla täytyy olla PHP:ssä ajanmittaus juttu.

    Katsos http://fi2.php.net/manual/fi/function.microtime.php

    Tuo - viittaisi siihen että vähennät alotusajasta nykyisen ajan, tuo pitäisi tehdä juurikin toisinpäin.

    kiitos vaan edellisestä, nyt siis näkyy aika oikein.

    se kuitenkin vaihtelee todella suuresti, välilät 0.02.. - 0.97.. miksi noin?

    ajanmittausta suoritan seuraavasti:
    $sql = mysql_query("SELECT BENCHMARK(1000000,10 10)");
    $time = microtime();
    echo ($time-microtime);

    Äänestä

  • juttu... kirjoitti:

    kiitos vaan edellisestä, nyt siis näkyy aika oikein.

    se kuitenkin vaihtelee todella suuresti, välilät 0.02.. - 0.97.. miksi noin?

    ajanmittausta suoritan seuraavasti:
    $sql = mysql_query("SELECT BENCHMARK(1000000,10 10)");
    $time = microtime();
    echo ($time-microtime);

    Ilmeisesti tuo on webhotellilla siellä vaihtelee suuresti käyttäjämäärät. Jotenka tuommonen heittely on mahdollista joskin vaikuttaa silti aika suurelta. Yleensä nopeusmittauksia tehdään x määrä ja sit katsotaan keskiarvo, mitä enemmän mittauksia sen luotettavampa.

    Sekä kannattaa miettiä pystyisikö tuon saman tekemään kotikoneella näin pärjäisi muutamalla mittauksella.


    "ajanmittausta suoritan seuraavasti:"

    Oletan että tuossa on hupsis. Sillä tuo ei toimisi.

    // Suoritat kyselyn
    $sql = mysql_query("SELECT BENCHMARK(1000000,10 10)");

    // Ajanmittaus alkaa
    $time = microtime();

    // Näytetään paljonko aikaa meni
    echo ($time-microtime);

    Kuten huomaat ajanmittaus alkaa vasta kun kysely on suoritettu, joten sen aikaa et mittaakkaan.




    Tuollee se pitää olla. Yleensä kannattaa myös kantaan yhdistämis jututkin laittaa tuohon ajanmittauksen sisään.

    Äänestä

Kommentoi aloitusta


benchmark() kirjoitti:

Osaako joku sanoa miten tuota bencmark -funktiota käytetään? Eli funktiota mikä kertoo palvelimen nopeuden...
Olen itse kokeillut mutta en saa tulostumaan mitään järkevää..

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu