100% Serverlast

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • 100% Serverlast

    Mahlzeit zusammen

    Eines oder mehrere meiner Scripte verursacht stetig eine 100%ige Serverlast.
    Wenn nur schon 50 Leute auf meiner Seite sind, kann man auf dem Prozessor ohne Witz Eier braten.
    Gibt es Möglichkeiten herauszufinden, welches Script eine solche Last mit sich zieht?
    Ich hab jetzt schon gewisse Abfragen zeitgesteuert gemacht um Datenbankabfragen zu sparen.
    Ich hab auch schon die Laufzeit der Scripte gemessen.
    Aber die liegen alle so bei 0.6 - 0.7 sekunden.


    Ist das vielleicht schon zu viel?

    So mess ich die Zeit:
    PHP-Code:
    $startmicrotime(true); 
    //SCRIPT
    $ende microtime(true) - $start
    echo 
    "->: $dauer Sek."
    thx

  • #2
    Zitat von Marcus-24-D Beitrag anzeigen
    ...
    Eines oder mehrere meiner Scripte verursacht stetig eine 100%ige Serverlast.
    ...
    Gibt es Möglichkeiten herauszufinden, welches Script eine solche Last mit sich zieht?
    Ja, ein Profiler oder auch ein Task-Manager kann dir helfen, herauszufinden, welches laufende Script die CPU belastet. Konkrete Empfehlungen sind allerdings abhängig vom verwendeten Betriebssystem.

    Ich hab jetzt schon gewisse Abfragen zeitgesteuert gemacht um Datenbankabfragen zu sparen.
    Ich hab auch schon die Laufzeit der Scripte gemessen.
    Aber die liegen alle so bei 0.6 - 0.7 sekunden.
    ...
    So mess ich die Zeit:
    PHP-Code:
    $startmicrotime(true); 
    //SCRIPT
    $ende microtime(true) - $start
    echo 
    "->: $dauer Sek."
    Die Ausführungszeit eines Scriptes korreliert nicht automatisch mit der CPU-Last.

    Zwei Beispiele:
    1. 100 Prozent CPU-Auslastung, aber kurze Ausführungsdauer:
    PHP-Code:
    for ($i 0$i 10000; ++$) {

    2. Kaum messbare CPU-Auslastung, aber lange Ausführungsdauer:
    PHP-Code:
    sleep(100); 
    Klingon function calls do not have “parameters”‒they have “arguments”‒and they always win them!

    Kommentar


    • #3
      top in Verbindung mit server-status (extended on).
      In top nachgucken, welche PID Last erzeugt und damit im server-status nachschauen, welche URL dahintersteckt.
      Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
      Schön - etwas Geschichte kann ja nicht schaden.
      Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

      Kommentar


      • #4
        nun ja, ich hab nen Windows Server 2003.
        @fireweasel was meinst du mit Profiler? Ein spezielles Tool oder sowas in der Art? Also aus dem Taskmanager werde ich nicht wirklich schlau.
        Dort lässt sich ja nicht nachvollziehen welches Script dort ausgeführt wird/wurde. Das einzige was ich dort angezeigt bekomme ist entsprechend PID, CPU, Speicher für den jeweiligen Prozess php-cgi.exe oder fast-cgi

        jetzt wirds interessant Quetschi, kannst du mir genaueres erzählen?
        Was ist mit top gemeint?

        Danke für eure Hilfe

        Kommentar


        • #5
          Zitat von Marcus-24-D Beitrag anzeigen
          Was ist mit top gemeint?
          Das ist ein Linux-Befehl, mit denen die größten CPU-Prozesse angezeigt werden.
          Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
          Meine Seite

          Kommentar


          • #6
            Achso, verdammt. Na dann trifft das wohl weniger auf mich zu
            Gibt es da für Windows ähnliche Möglichkeiten?

            Kommentar


            • #7
              Webserver ist Apache?
              Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
              Schön - etwas Geschichte kann ja nicht schaden.
              Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

              Kommentar


              • #8
                Der Webserver läuft unter IIS7

                Kommentar


                • #9
                  Der liegt außerhalb meiner Kenntnisse - ich würde mal sagen, du solltest dich mal bei nachfolgendem Link umsehen:
                  Überwachen von Arbeitsprozessen und aktuell ausgeführten Anforderungen in IIS 7
                  Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
                  Schön - etwas Geschichte kann ja nicht schaden.
                  Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

                  Kommentar


                  • #10
                    super, danke..ich werde mich das mal genauer anschauen

                    Kommentar

                    Lädt...
                    X