php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Scripts > Apps und PHP Script Gesuche
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


Apps und PHP Script Gesuche Hier könnt ihr nach PHP Skripten und Programmen fragen. Postet eure Wünsche

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 29-01-2010, 10:32
Lennynero
 Registrierter Benutzer
Links : Onlinestatus : Lennynero ist offline
Registriert seit: Sep 2007
Beiträge: 121
Blog-Einträge: 1
Lennynero ist zur Zeit noch ein unbeschriebenes Blatt
Standard Windows Tool um Perfomance einer Seite zu messen

Hallo,

ich bin gerade dabei zwei Varianten eines Skriptes zu vergleich. Da ich dabei in der einen Lösung htaccess Funktionalitäten nutze und sie in der anderen Variante nur mit PHP löse, fällt ein einfacher Timestamp mit microtime schonmal aus.

Auch mit wget komme ich nicht ans Ziel, denn der Server, auf dem PHP arbeitet, kann die URL nicht auflösen (wohl kein DNS Anschluss).

Ich suche nun ein kleines Tool, das eigentlich nichts anderes macht als mir eine bestimmt URL mehrmals aufzurufen und mir dann mitteilt, wie lange es gedauert hat bis die Seite da war. Ich weiss sehr wohl, dass die Werte kein Garant sind, da noch andere Faktoren als die beiden Skriptvarianten eine Rolle spielen, jedoch möchte ich zumindest ausschliessen, das es zu massiven Verschlechterungen in der PHP Variante kommt (die, im Falle einer massiven Verschlechterung, keine Option mehr wäre).

Gruss,
Lenny
Mit Zitat antworten
  #2 (permalink)  
Alt 29-01-2010, 10:39
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Dann verschieb ich das mal zu den Skriptgesuchen.

BTW: Kannst du nicht lokal ein kleines PHP-Skript schreiben, welches das mit cURL erledigt?
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #3 (permalink)  
Alt 29-01-2010, 10:45
Lennynero
 Registrierter Benutzer
Links : Onlinestatus : Lennynero ist offline
Registriert seit: Sep 2007
Beiträge: 121
Blog-Einträge: 1
Lennynero ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ohne das jetzt getestet zu haben (werde ich gleich nachholen):

Dürfte da nicht auch die fehlende DNS-Verbindung das Problem sein?

EDIT:
Mea Culpa... lokal... da werde ich mal XAMPP anwerfen, da ich idR direkt in der Testumgebung arbeite habe ich nicht daran gedacht!

Geändert von Lennynero (29-01-2010 um 10:49 Uhr)
Mit Zitat antworten
  #4 (permalink)  
Alt 29-01-2010, 10:49
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Zitat von Lennynero Beitrag anzeigen
Dürfte da nicht auch die fehlende DNS-Verbindung das Problem sein?
Das verstehe ich grad nicht. Wieso hast du kein DNS auf deinem Computer? Wie kommst du dann überhaupt auf Webseiten (z. B. diese hier) drauf?
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #5 (permalink)  
Alt 29-01-2010, 14:07
Lennynero
 Registrierter Benutzer
Links : Onlinestatus : Lennynero ist offline
Registriert seit: Sep 2007
Beiträge: 121
Blog-Einträge: 1
Lennynero ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von AmicaNoctis Beitrag anzeigen
Das verstehe ich grad nicht. Wieso hast du kein DNS auf deinem Computer? Wie kommst du dann überhaupt auf Webseiten (z. B. diese hier) drauf?
Wie im Edit erwähnt: ich war mit dem Kopf auf dem Entwicklungsserver und habe das lokal erst gar nicht beachtet.

Hier das Skript mit dem ich jetzt eine rudimentäre Überprüfung gemacht habe. Es gewinnt sicherlich keinen Schönheitspreis und die Ergebnisse sind sicherlich nicht supergenau, aber zumindest eine Annäherung, bzw. wird zumindest eine Tendenz gezeigt (im meinem Falle den, das es keine signifanten zeitlichen Unterschied zwischen den beiden Varianten gibt).

Um die Webseite zu lesen habe ich file() genommen (alternativ ging auch fopen()), das Ganze in eine Schleife gesetzt und um den Timeout zu umgehen lasse ich die Seite sich selbst laden (Übergabe der Werte von Seite zu Seite hätte man auch mit einer Session machen können, allerdings hätte man da den Zähler zurücksetzen müssen (Sessioncookie löschen oder ein kleines Skript zum Löschen schreiben), falls das Skript mal nicht bis zum Ende gelaufen wäre (Timeouts und Umleitungsmaximum sind mir beim Testen mehrmals untergekommen ).

PHP-Code:
    if(!isset($_GET['counter']))
    {
        
$int_counter 1;
    }
    else
    {
        
$int_counter = (int) $_GET['counter'];
    }

    if(isset(
$_GET['times']))
    {
        
$arr_time explode(","$_GET['times']);
    }
    
/**
    * Wie oft laden wir die Seiten (20 scheint die Maximale Anzahl
    * an Weiterleitungen zu sein, mehr macht mein Apache nicht)
    */
    
$int_tries 20;

    
//Wie oft versuchen wir pro Seitenaufruf die Seiten zu laden
    
$int_loops 5;

    
//Welche Seiten sollen aufgerufen werden?
    
$arr_pages = array(
                        
'http://www.google.de',
                        
'http://www.spiegel.de',  
                        );


    
$arr_times = array();

    
//Hier geht die Messung los
    
$time_start microtime(true);

    for(
$j 1$j <= $int_loops$j++)
    {
        foreach(
$arr_pages as $url)
        {
            
$handle file ($url);
            
//Alternativ:
            #$handle = fopen ($url, "r");
        
}
    }

    
$arr_time[] = microtime(true) - $time_start;
    
//Hier endet die Messung

    
if($int_counter == $int_tries)
    {
        
$i 0;
        
//Ausgabe der Einzelmessungen und des Gesamtergebnisses
        
foreach($arr_time as $time)
        {
            
$i++;
            echo 
$i " " $time "<br/>";
            
$sum_time += $time;
        }
        echo 
"<br/>Schnitt: " $sum_time $i;
    }
    else
    {
        
$int_counter++;
        
/**
        * Um die Maximum execution Time etwas zu umegehen, laden wir die
        * Seite einfach neu und übergeben die bisherigen Messwerte
        */
        
header('Location: ?counter=' $int_counter "&times="implode(","$arr_time));
    } 
Mit Zitat antworten
  #6 (permalink)  
Alt 29-01-2010, 14:11
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Kleiner Tipp: wenn du ein PHP-Skript auf der Konsole laufen lässt (für sowas wäre das ja ausreichend), gibt es kein Timeout mehr.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #7 (permalink)  
Alt 29-01-2010, 14:12
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

Vergiss nicht, dass das reine Dokument noch gar nichts über die "Performance" aussagt. Jedwede eingebundene Ressource (Script, Stylesheets, Grafiken, Flash, Videos, etc) wird in dieser Berechnung nicht berücksichtig, sind aber nicht selten der Flaschenhals, den du ja aufdecken willst.
Mit Zitat antworten
  #8 (permalink)  
Alt 29-01-2010, 14:25
Lennynero
 Registrierter Benutzer
Links : Onlinestatus : Lennynero ist offline
Registriert seit: Sep 2007
Beiträge: 121
Blog-Einträge: 1
Lennynero ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von AmicaNoctis Beitrag anzeigen
Kleiner Tipp: wenn du ein PHP-Skript auf der Konsole laufen lässt (für sowas wäre das ja ausreichend), gibt es kein Timeout mehr.
Funktionieren da dann auch die Redirects?

Zitat:
Zitat von unset Beitrag anzeigen
Vergiss nicht, dass das reine Dokument noch gar nichts über die "Performance" aussagt. Jedwede eingebundene Ressource (Script, Stylesheets, Grafiken, Flash, Videos, etc) wird in dieser Berechnung nicht berücksichtig, sind aber nicht selten der Flaschenhals, den du ja aufdecken willst.
Wie schon angesprochen: supergenau ist es nicht, im aktuellen Fall vergleiche ich RewriteRule in der htaccess mit einem header Location in einem PHP Skript, und da beide Aktionen aufgerufen werden bevor irgendetwas anderes passiert, wäre selbst die Apachemeldung das ein Dokument verschoben worden ist mir schon aussagekräftig genug.

Will man detaillierteres Wissen, sind file und fopen sicherlich nicht die geeigneten Mittel.

In einer anderen Variante hatte ich mir die Zeit anzeigen lassen, bis eine einzelne URL aufgerufen wurde, und die Daten die ich dort zurück bekommen hatte, enstprachen den Aufrufzeiten in einem normalen Browser (natürlich nicht 100%, aber es waren halt 0,925 statt 0,823 etc., und wenn man das wiederholte konnte es auch durchaus umgekehrt sein). Erst mit steigender Zahl an Messungen dürfte sich ein richtiger Trend offenbaren.
Mit Zitat antworten
  #9 (permalink)  
Alt 29-01-2010, 14:28
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Zitat von Lennynero Beitrag anzeigen
Funktionieren da dann auch die Redirects?
Nein, aber die brauchst du ja dann nicht mehr, weil das Skript sich nicht mehr selbst aufrufen muss, um "durchzuhalten".
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #10 (permalink)  
Alt 29-01-2010, 14:28
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

Und was hat dass dann alles damit zu tun, wie schnell eine Seite ausgeliefert ist?
Mit Zitat antworten
  #11 (permalink)  
Alt 29-01-2010, 14:29
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Gar nichts, es ging grad um sein Skript, welches das messen soll.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #12 (permalink)  
Alt 29-01-2010, 14:34
Lennynero
 Registrierter Benutzer
Links : Onlinestatus : Lennynero ist offline
Registriert seit: Sep 2007
Beiträge: 121
Blog-Einträge: 1
Lennynero ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von AmicaNoctis Beitrag anzeigen
Nein, aber die brauchst du ja dann nicht mehr, weil das Skript sich nicht mehr selbst aufrufen muss, um "durchzuhalten".
:mir fehlt ein Smiley, der sich gerade mit der flachen Hand auf die Stirn schlägt:

Danke
Mit Zitat antworten
  #13 (permalink)  
Alt 29-01-2010, 14:39
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von AmicaNoctis Beitrag anzeigen
Gar nichts, es ging grad um sein Skript, welches das messen soll.
Ich bezog mich schon auf die mir gegebene Antwort, da kam halt nur was zwischen. Beantwortet ist meine Frage jetzt trotzdem nicht.
Mit Zitat antworten
  #14 (permalink)  
Alt 29-01-2010, 14:40
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

OffTopic:
Auch immer gern genommen:
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #15 (permalink)  
Alt 29-01-2010, 14:58
Lennynero
 Registrierter Benutzer
Links : Onlinestatus : Lennynero ist offline
Registriert seit: Sep 2007
Beiträge: 121
Blog-Einträge: 1
Lennynero ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von unset Beitrag anzeigen
Ich bezog mich schon auf die mir gegebene Antwort, da kam halt nur was zwischen. Beantwortet ist meine Frage jetzt trotzdem nicht.
Zitat:
Zitat von unset Beitrag anzeigen
Und was hat dass dann alles damit zu tun, wie schnell eine Seite ausgeliefert ist?
Kannst du bitte konkreter werden?

Ich habe Eingangs erläutert, das ich zwei Varianten vergleichen möchte und das ich dazu ein geeignetes Tool suche. Aufgrund den Tipps von AmicaNoctis habe ich mir dieses kleine Skript zusammengebastelt, was mir immerhin Zahlen liefert, die mir durchaus Sinnvoll erscheinen (wenn ich, wie auch schon erwähnt, sehe das mir mein Skript meldet eine Seite wurde innerhalb von knappen 0,9 Sekunden geladen und mein Browser mir beim Aufruf der gleichen Seite einen ähnlcihen Wert zurückgibt und zwar in mehreren Fällen, dann kann ich annehmen, dass das Skript entweder das misst was ich denke, dass das Skript Mist misst und es nur absoluter Zufall ist das die Werte ähnlich sind oder dass das Skript vielleicht etwas ganz anderes misst (was wieder zufällig ähnlich der anderen Werte ist)).

Ich habe das Skript einige Male mit meinen "Fällen" getestet und habe in der einen Variante einen Durchschnittswert von 39,4242115 Sekunden gegenüber 39,4295916 in der anderen Variante erhalten. Interessanterweise haben die Werte der ersten Variante weiter gestreut, aber auch nicht so, das ich mir da einen großen Kopf machen sollte.

Getestet habe ich allerdings nicht gleichzeitig, sondern abwechseln, und ja, es ist mir bewusst das auch das eine Fehlerquelle für Unterschiedliche Zeiten sein kann, aber deshalb habe ich das Skript ja auch mehrmals (abwechseln mit den beiden Varianten) laufen lassen. Nur um das auf den Punkt zu bringen: mit den beiden Varianten meinte ich die Skripte, die hinter den Seiten liegen die ich aufgerufen habe und das sind nicht die jetzt im Skript stehenden URLs.

So, und jetzt kommst du.

Woraus liest du, das ich einen Flaschenhals suche? Aus welchem meiner Beiträge ist sowas zu erlesen?

Zitat:
Zitat von AmicaNoctis Beitrag anzeigen
OffTopic:
Auch immer gern genommen:
Ja, der trifft es doch ziemlich gut
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Einzelauftrag] kleines Windows-Tool: Reminder Wurzel Jobgesuche 0 20-11-2006 10:18
[SUCHE] Programmierer für ein Upload Tool für Windows viva Jobgesuche 0 16-11-2006 20:29
Tool zum messen/stoppen des Übertragungsvolumens burzum Apps und PHP Script Gesuche 2 31-08-2006 12:31
Windows Upload Tool viva Jobgesuche 0 26-08-2006 16:03
variable von einer php-seite an einen frame auf einer neue seite übergeben monsterag PHP Developer Forum 4 16-04-2005 14:54

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 03:40 Uhr.