Performance problem

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

  • Performance problem

    Hallo zusammen,

    über unser BackEnd fürt der User ein SELECT aus.
    Bis das ergebnis beim User ist kann es bis zu 30 sek dauern.

    Wenn ich das gleiche SELECT über unser BackEnd mache,
    dauert die lieferung des Ergebnis nicht mal 1 sek.

    Dabei spielt es keine Rolle, welch ein SELECT durchgefürhrt wird.
    Es ist bei jeder Datenbankabfrage das gleiche schlechte ergebnis.


    Webserver:
    OS Windows 2000 SP 4
    Apache 2.0.54
    PHP 4.3.11

    Mysql
    OS Windows 2000 SP 4
    MySql 4.1

    Hat jemand eine Idee?

    Grüße
    rk

  • #2
    Hallo,

    erinnere mich an einen Thread hier, bei dem in einem ähnlich konfigurierten System PHP furchtbar langsam gelaufen ist, mit irgendeinem ServicePack ging's dann.

    Evtl. find ich ihn wieder, dann poste ich den Link.

    Gruss
    Quetschi
    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


    • #3
      Hab den Link:

      http://www.php-resource.de/forum/sho...5&pagenumber=1

      Hier war allerdings win2003 und IIS am werkeln. Vielleicht bringts dich trotzdem in ne Richtung
      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
        Es gab mal ein Sicherheits-Update 893066 von Microsoft

        http://www.heise.de/newsticker/meldung/58720

        Das hat was mit der TCP Verbindung zutun.

        Habes deinstalliert.
        Leider tritt der Fehler immer noch auf!

        Kommentar


        • #5
          Schau mal in deine DNS-Konfiguration, bzw in dein "hosts" Datei. Für mich hört sich das so an, als ob der Server versucht die IP des Clients aufzulösen und dann mit einen timeout scheitert.

          Lösung:
          Die IP des Clients in die Hosttabele des Servers eintragen.
          (C:\WINDOWS\system32\drivers\etc\hosts)

          Aber ist nur ne Idee.

          Kommentar


          • #6
            sorry, aber welcher Client???
            Meinst Du den SQL server?

            Kommentar


            • #7
              hosts-Dateien soll man nur verwenden, wenn man kein DNS-Server im Netzwerk hat. Hast du ein DNS-Server im Netzwerk? Wenn ja. prüfe die Eintragungen, ob sie mit den Daten der Server übereinstimmen.
              Original geschrieben von rkaiser
              sorry, aber welcher Client???
              Meinst Du den SQL server?
              aus der Sicht des SQL-Servers ist der WebServer sein Client

              Kommentar


              • #8
                Habe das in unserem DNS-Server mal nachgeschaut
                die Ip und der name sind richtig.

                Kommentar


                • #9
                  Original geschrieben von rkaiser
                  Habe das in unserem DNS-Server mal nachgeschaut
                  die Ip und der name sind richtig.
                  öffne auf dem Webserver das Console-Fenster und tipp mal:

                  ping <name_des_sql_Servers>

                  und

                  tracert <name_des_sql_Servers>

                  ein. was erhälst du?

                  Kommentar


                  • #10
                    [PING]
                    Antwort von 192.168.1.11: Bytes=32 Zeit<10ms TTL=127
                    Antwort von 192.168.1.11: Bytes=32 Zeit<10ms TTL=127
                    Antwort von 192.168.1.11: Bytes=32 Zeit<10ms TTL=127
                    Antwort von 192.168.1.11: Bytes=32 Zeit<10ms TTL=127

                    Das soll auch so sein!

                    [TRACERT]
                    1 <10 ms <10 ms <10 ms 192.168.2.1
                    2 <10 ms <10 ms <10 ms mysql02 [192.168.1.11]

                    Ablaufverfolgung beendet.

                    Das soll auch so sein......

                    Die Server können untereinander Kommunizieren!

                    Kommentar


                    • #11
                      vielleicht dreht das backand irgendwie an den daten herum, so dass die ausgabe einfach länger dauert?!
                      MfG
                      aim
                      Lies mich jetzt!
                      - OT-Tags-Liebhaber und BB-Code-Einrücker -

                      Kommentar


                      • #12
                        Und wenn doch PHP selber lahmt?

                        Versuch mal ein Testscript mit ein paar tausend Schleifendurchläufen oder so, also völlig ohne DB-Nutzung und schau, wie lang es zum durchlaufen braucht.
                        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


                        • #13
                          Habe mal folgendes Skript probiert:

                          PHP-Code:
                          <?php
                          $i
                          =1;
                          while(
                          $i<=1000000){
                              echo 
                          "Hallo Welt!";
                              
                          $i++;
                          }
                          ?>
                          Es lief alles super.

                          Dann habe ich folgendes Skript probiert
                          PHP-Code:
                          <?php
                          $i
                          =1;
                          while(
                          $i<=1000000){
                              echo 
                          "Hallo Welt!<br>";
                              
                          $i++;
                          }
                          ?>
                          Dabei hängt sich mein Explorer auf!

                          Kommentar


                          • #14
                            Original geschrieben von rkaiser
                            [PING]
                            Antwort von 192.168.1.11: Bytes=32 Zeit<10ms TTL=127
                            Antwort von 192.168.1.11: Bytes=32 Zeit<10ms TTL=127
                            Antwort von 192.168.1.11: Bytes=32 Zeit<10ms TTL=127
                            Antwort von 192.168.1.11: Bytes=32 Zeit<10ms TTL=127

                            Das soll auch so sein!

                            [TRACERT]
                            1 <10 ms <10 ms <10 ms 192.168.2.1
                            2 <10 ms <10 ms <10 ms mysql02 [192.168.1.11]

                            Ablaufverfolgung beendet.

                            Das soll auch so sein......

                            Die Server können untereinander Kommunizieren!
                            hm ... die beiden Subnetze sind lokal vorort und sind nur über einen Router verbunden? 100MBit Netz oder doch 10 MBit? Denn 10 ms Bereich ist in meinen Augen doch etwas zu lahm; normalerweise <1ms

                            Kommentar


                            • #15
                              Ja,
                              die Subnezte sind lokal über die Firewall (Router) mit einander per 100MBit verbunden...

                              Was ich eben noch mal versucht habe:
                              Ich habe den Apache durch einen IIS 5.0 ersetzt, aber ist genau das gleiche!!
                              Zuletzt geändert von rkaiser; 26.07.2005, 13:32.

                              Kommentar

                              Lädt...
                              X