php ausbremsen durch zuviele und zu große includes ?

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

  • php ausbremsen durch zuviele und zu große includes ?

    Morgen.

    Ich hab mir gerade mal ausgerechnet dass um eine einzige Seite Anzuzeigen PHP bei mir ca 12.000 Zeilen parsen muss. ( Mann muss dazu sagen dass ich noch kein Templatesystem habe und Daten und Design noch nicht getrennt sind . Von daher die wohl etwas große? Zahl )

    Dass kommt daher dass zB grundsätzlich immer die Benutzerverwaltung includiert wird , die Datenbankzugriffklasse , das Logsystem und das Statisktiksystem und noch ein paar andere Kleine Funktiondateien die Prüffunktionen für Strings usw bereistellen.

    Mir würde mal interessieren ob ich da etwas aufpassen muss mit der Größe der Includes .

    Ich vermute jetzt einfach mal das 12000 Zeilen im Vergleich zum Durschnitt schon irgendwo obere Mittelklasse sind , aber genau weiß ich das nicht.

    Gibt es da so eine Grenze die man nicht überschreiten sollte von wegen Performace ?

    Gruß Sono

  • #2
    Gibt es da so eine Grenze die man nicht überschreiten sollte von wegen Performace ?
    ja wenns zu langsam läuft ;-)

    das hängt erst mal vom server ab, wieviele domains drauf liegen, wie stark der server frequentiert wird. möglicherweise können die includes über bedingungen laufen, aber eine generelle antwort gibst da wohl kaum. hängt mit sicherheit auch von der art und weise deiner programmierung zusammen (z.b. db-zugriffe, etc).

    gruß
    peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      Die "Hauptbremse" dürfte wohl das Sicherheistsystem sein dass so ziemlich alles überwacht und bei bedarf mitloggt.

      Ich hab wenn ich das Sicherheitsystem Abschalte eine normale Seite ohne Datenbabnkzugriffe in ca 40 ms stehen.

      Mit Sicherheitssystem sinds auf der Selben Seite schon mindestens 200 ms. Jetzt auf dem Testrechner zumindest aber dass ist nur ein Laptop.

      Die 12.000 Zeilen sind da was wirklich immer drin ist ohne das zusätzlich bei bedarf Dateien includiert werden.

      Der größte Teil des Codes wir nur dann geladen wenn ich ihn benötige .

      Das System selbst wird vermutlich nur auf ziemlich starken Kisten laufen, allerdings auch mit einer gewissen Anzahl von Usern.

      Ich vermute mal dass dynamische Einbinden vieler Kleiner Dateien mit Hielfe von if Bedingungen dürfte wohl fast mehr Perfomace kosten als konstante einbinden einiger großer Brocken.

      Aber dank mangelnder Erfahrung in der Größenordnung frag ich lieber mal ob jemand da schon Erfahrungen hat .

      Gruß Sono

      Kommentar


      • #4
        installier auf dem webserver mal typo3, wenn das sauber läuft, dann deine anwendung allemal ;-)

        gruß
        peter
        Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
        Meine Seite

        Kommentar


        • #5
          Ok dann muss ich mir vermutlich noch keine Gedanken machen.

          Thx .

          Gruß Sono

          Kommentar


          • #6
            oder mach es wie ich, teste auf einem amd k6 200 mit 64 ram von 1998.

            gruß
            peter
            Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
            Meine Seite

            Kommentar


            • #7
              Hm ich vermute mal aleine die Systemanforderungen von dem Tool :
              Postgres 8.0
              Apache2 und mindestens PHP 5.0
              sowie Postfix / Courier Mailserver mit Postgresanbindung ( Mails in der Datenbank )

              dürften einen 200 Mhz Rechner etwas in die Knie zwingen.

              Aber ich kanns ja mal testen wenn ich einen in die Hände bekomme.

              Momentan ist der kleinster Rechner allerdings ein 500 MHz AMD und der ist das Gateway.

              Da würde ich etwas Ärger bekommen wenn ich da noch eben mal nen Apache mit PHP draufhaue.

              Ich befürchte stark unter 3 Stunden Standpauke über Sicherheitsrichtlinien usw komm ich da nicht wieder raus :-)) .

              Kommentar


              • #8
                also bei mir läuft eine suse 10 mit mysql 4.1 apache 2, php 4.irgendwas, postfix, sowie diverse völlig unnötige programme, um das system ein wenig zu kitzeln ( z.b. cups). allerdings nur blackbox und nicht kde als oberfläche, weil das definitv nicht mehr funktioniert. braucht zum hochfahren eine ewigkeit, ist aber ein hervorragendes testsystem.

                Momentan ist der kleinster Rechner allerdings ein 500 MHz AMD und der ist das Gateway.
                schau mal bei ebay.

                gruss
                peter
                Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                Meine Seite

                Kommentar


                • #9
                  Krass. So täuscht man sich.
                  Dass das auf so ner alten Kiste noch läuft hätte ich nicht gedacht , aber naja . Auf 200 Mhz hab ich noch Age of Empires gespielt und die war damals absolut die Rennmaschine.

                  Das mit dem Testen werde ich aber doch etwas anderst machen.

                  Da ich wissen will wie das System bei hohen Lasten reagiert und nicht ob es auf kleinen Maschinen läuft schreibe ich gerade an einem Schript dass den Zugriff von 100 + X Usern auf die Maschine simuliert . Dann Schraub ich X Nach oben und schau wo Schluss ist .

                  Dank integrierten Statistik und Auswertungsystem sowie den Debuglog usw kann ich dann ganz bequem auswerten wie das System reagiert hat , wo Engpässe sind , wo das alles gut geht , und wo mir der User beim arbeiten einschläft.

                  Das ist für meine Zwecke vermutlich sinnvoller als einen kleinen Rechner zu besorgen.

                  Aber trotzdem danke für deine Hielfe.

                  MFG Dominik

                  Kommentar


                  • #10
                    mal so generell... gibt es ein tool mit welchem man sein skript so richtig unter stress stellen kann?!? (also ohne das man sich selbst eins proggt...)
                    2 meiner pages:

                    Kommentar


                    • #11
                      gibt es ein tool mit welchem man sein skript so richtig unter stress stellen kann
                      OffTopic:

                      PHP-Code:
                      for($i=0;$i<10000;$i+=1){
                          
                      //Request nach der Datei absezten



                      Wenn du das jetzt noch gaaaaaanz krass machen willst, dann verteilst du das Script auf mehrere Server mit PHP (dann hast du sogar gleichzeitige Zugriffe-->mehrere User).
                      Google und finde --> DoS

                      Gruss

                      tobi
                      Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                      [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                      Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                      Kommentar


                      • #12
                        OffTopic:
                        irgendwo muss ich hier noch n alten 300MHz Server haben der immer rumgebockt hat.. wenn ich demnächst mal zeit hab wird der richtig schön gequält (folter für Pcs ist doch in Deutschland nicht verboten oder (so KI mäßig ;-)) aber is ja wurscht... bin ja in Ecuador lol
                        2 meiner pages:

                        Kommentar


                        • #13
                          Ich hab das so gelöst dass ein Script in kurzen zufälligen Abständen eine bestimmte Reihenfolge von Aktionen auf dem Server aufruft , und das Script lasse starte ich dann ein paar mal auf dem Clienten.

                          Verbindung Client - Server ist eine Gigabitleitung also Bandbreite kann ich schön auslasten.

                          Jenachdem wie kurz ich die Abstände setze und wie oft ich das ding parallel laufen lasse desto mehr last hab ich dann auf dem Server.

                          Ist relativ simpel , aber mehr Arbeit beim realisieren als ich gedacht hatte.

                          Wenn ich Zeit hab und das Script fertig ist veröffentliche ich mal ne Version die man über ne XML Datei auch auf andere Seiten loslassen kann.

                          Wird aber noch ein Weilchen dauern bis ich da ne Version habe die auch Leute bedienen können die nicht in der Lage sind alle infos die sie Benötigen aus dem Quellcode zu holen, ich bin etwas im Stress.

                          Kommentar

                          Lädt...
                          X