Navigation
 Startseite
 Fachbücher
 Forum
 Webmaster News
 Script Newsletter
 Kontakt
 Script Installation
 Php
 Php Tutorials
 Impressum

Community-Bereich
 kostenlos Registrieren
 Anmelden
 Benutzerliste

Script Datenbank
 Script Archiv
 Script Top 20
 Screenshots
 Testberichte

Suche
 
Script Seite

Unsere Php Scripts
 Counter Script
 Umfrage Script
 Bilder Upload Script
 Terminverwaltung
 Simple PHP Forum
 RSS Grabber

Script Mods
 phpBB Adsense Mode

Tools und Generatoren
 .htpasswd Generator
 md5 Generator
 base64 Generator
 ICQ Generator
 Colorpicker
 Unix timestamp Tool
 TLD Liste
 Webkatalog Verzeichnis

Partner
Sprüche Treff

Artfiles.de
Bietet Serviceorientierte Internetdienstleistungen...
http://www.Artfiles.de
Goneo.de
Bei diesen Anbieter bekommt man Webspace, Domains,...
http://www.Goneo.de
 
 
 

Scriptlaufzeit messen mit register_tick_functions

Sie befinden sich: Home > Php Tutorial > Scriptlaufzeit messen mit r...

Scriptlaufzeit messen mit register_tick_functions



Eintrag am:  01.09.2010
Hits / Besucher:  6466
Sprache: Deutsch
Kategorie:  Einsteiger Tutorials...
Tutorial Art:  eigenes
 

Beschreibung


Die Benutzung der Funktion „register_tick_functions()“ ermöglicht es, die Scriptlaufzeit oder Funktionsausführungen zu messen, das heisst die CPU Rechenzeit die für ein Script oder Teile eines Scripts verwendet wird messbar zu machen und darzustellen.

Dadurch können nicht nur Fehler und unnötige Programmierschleifen erkannt werden, sondern auch die Perfomance und Schnelligkeit der eingesetzten Scripte verbessert werden, wenn dadurch die insgesamte Scriptlaufzeit minimiert werden kann. Dadurch eignet sich register_tick_functions() zur Fehlersuche sowie auch zur Perfomancesteigerung vor allem dann wenn Funktionen oder Scripte von vielen Clients gleichzeitig aufgerufen werden.

Der Syntax:

register_tick_function('funktionsname');

Grundsätzlich können als Parameter Funktionsnamen, Objekte und Arrays übergeben werden die mit dieser Methode gemessen werden sollen.

Beispiel:

<?php
    
function laufzeit_messen() {
        list(
$sec$timestamp) = explode(" ",
            
microtime());
        
$debug debug_backtrace();
        echo 
' --->Zeile:
            '
.$debug[0]['line'].'->'.$sec.' msec<br>';
    }
    
register_tick_function('laufzeit_messen');
    declare(
ticks 1) {
        for (
$index 0$index 5$index++) {
            echo 
'Test: '.$index;
        }
    }
?>

Ausgabe:

Test: 0 ---> Zeile: 10 -> 0.82346200 msec
---> Zeile: 11 -> 0.82348300 msec
Test: 1 ---> Zeile: 10 -> 0.82349000 msec
---> Zeile: 11 -> 0.82349600 msec
Test: 2 ---> Zeile: 10 -> 0.82350200 msec
---> Zeile: 11 -> 0.82351500 msec
Test: 3 ---> Zeile: 10 -> 0.82352200 msec
---> Zeile: 11 -> 0.82352700 msec
Test: 4 ---> Zeile: 10 -> 0.82353300 msec
---> Zeile: 11 -> 0.20571500 msec
---> Zeile: 11 -> 0.20572900 msec
---> Zeile: 12 -> 0.20574300 msec

Erklärung:

Die komplette Durchlaufzeit eines Scriptes oder einer Funktion nennt man Scriptlaufzeit. Sie hat einen wesentlichen Einfluss auf die Effektivität und die Leistung von Scripten und Webservern. Die Funktion register_tick_function() überwacht und misst die Scriptlaufzeit, das heisst den Zeitverbrauch für jede Zeile ausgeführten Code. Bei jeder Ausführung eines Befehls wird diese Funktion im angegebenen Bereich aufgerufen. Dabei werden die Ticks gezählt und anschliessend umgerechnet. Unter einem Tick kann man sich eine Bewegung des Parsers innerhalb des Scriptes vorstellen.

Jeder Aufruf, jede Umrechnung, Aufname oder Ausgabe einer Information kann als Tick bezeichnet werden. Davon ausgenommen sind Strukturelemente wie Entscheidungen und oder Schleifenkonstrukte. Vereinfacht ausgedrückt wird jeder Sprung von Zeile zu Zeile innerhalb einer Funktion zeitlich gemessen und anschliessend in Zeiteinheiten umgerechnet. Als Ausgabe dient eine Zuordnung aus Zeilennummer und den gemessenen Millisekunden. Diese wird als Debugging Information ausgegeben.

Mit unregister_tick_functions() kann dieser Prozess wieder für eine Funktion, Objekt oder Array abgeschaltet werden. Die Messung der Scriptlaufzeit ist vor allem dann sinnvoll wenn es zu Laufzeitproblemen oder Perfomanceengpässen kommt oder wenn grössere Webapplikationen von Anfang an auf grösstmögliche Schnelligkeit getrimmt werden sollen.

 

Tags


 

Verlink uns, wenn Dir das Tutorial gefallen hat:
Artikel hinzufügen bei: