Traffic und PHP/mySQL

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Traffic und PHP/mySQL

    Hallöchen,

    ich habe mal eine Frage... Ich betreibe eine Seite die aus 100% PHP Dateien besteht. Sprich ich habe schon jegliche Bilder und Stylesheets auf andere Server ausgelagert. Alle Dateien greifen auf die DB zu...

    So bei knapp 700 Besuchern, 50.000 Seiten und im Durschnitt 150.000 Zugriffen täglich (laut awStats) generiere ich täglich schlappe 500-700 MB Traffic. (Würde doch mal gerne wissen was eine normale Seite mit ca. diesen Daten an Traffic verbraucht)

    1. Habe gelesen, dass:
    PHP Code:
    $variablen="Guck Guck"
    langsamer ist als
    PHP Code:
    $variablen='Da Guggsu'
    Das merkt man bei mehr als 10.000 durchläufen ja sehr gut, unteres ist knapp 6 mal schneller. Wenn man die per echo ausgibt und die Zeit misst.
    Aber kann das auch den Traffic beeinflussen den PHP damit erzeugt (wenn auch nur minimal). Ich weiss das ist unwensetlich, aber bei meinen o.g. Zugriffszahlen wäre das schon wesentlich. Da sich diese 700 Besucher merhmals täglich Seiten aufrufen.


    2. mYSQL:
    Ich habe wirklich schon die DB Struktur fast perfekt verändert... Ich habe immer noch das Gefühl, das das Auslesen aus der DB den meisten Traffic verbraucht. Ist mySQL wirklich so extrem Trafficlastig... Würde ich jetzt meine Tabellenstrukturen posten, würde das den Rahmen hier sprengen, würde mich aber trotzdem über ein paar allgemeine Tipps freuen (keine Befehle sondern einen guten Aufbau einer Tabelle und die definition der einzelnen Spalten)...

    3. Wie kann man generell den Traffic von PHP vielleicht um wenigsten ein Minimum reduzieren?? Versuchen weniger Zeilen zu schreiben?? Weniger Absätze und Leerzeichen?? Würde das dieses Minimum bringen?? Weniger HTML Ausgabe... Oder gar XHTML/XML nehmen??

    Bin momentan ratlos. 98% des Traffic gehen auf die PHP-Dateien zurück, der Restliche Schmarn geht auf Images und CSS, etc... Ist ja bisher nicht weiter tragisch, jedoch dann schon, wenn ich bedenke das mal mehrere tausend meine Seiten besuchen werden.

    Für jeden Tipp bin ich dankbar...

    MfG
    Maikel

  • #2
    Traffic wird meines Wissens durch PHP absolut nicht produziert sofern du keinen fremden Inhalt ausliest oder von fremden Server die Daten holst. Traffic produziert einzich und allein das Layout der Seite. Der PHPC ode wird ja auf dem Server abgearbeitet und da läuft sofern du obriges nicht machst absolut keine Traffic.

    MfG Markus

    Comment


    • #3
      zu 1.: Ja klar ist die Verarbeitung einer Zeichenkette in einfachen Hochkommas schneller ... allerdings wird diese dann auch nicht nach eventuell vorkommenden Variablen geparsed ... $variablen='Da Guggsu $blah'; funktioniert also nicht ...

      zu 2.: Fast perfekt ist, wenn ich Deine Art zu fragen betrachte, wohl eher 'ne Frage der Analyse-Methode ... allerdings hat der Traffic den PHP/MySQL produzieren wohl eher weniger mit einen awStats Statistiken zu tun ... awStats ist meines Wissens lediglich ein Logfile Analyzer der die Weblogs auswertet ... im übrigen läuft die DB im Zweifel entweder auf den Webserver (Zugriff über UNIX-Socket) der überhaupt nicht gezählt wird ... oder auf 'nem Dedizierten Server im lokalen Netz Deines Providers ... und in dem Falle wäre es extrem unseriös wenn dieser Traffic gezählt würde.

      zu 3.: Probier's mit Datenkompression ... die erste Zeile Deiner PHP Scripte sollte lauten:

      ob_start("ob_gzhandler");

      das erhöht allerdings leicht die Serverlast ...
      carpe noctem

      [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
      [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

      Comment


      • #4
        Kann es sein, dass Du Deine PHP-Seiten suchmaschinenfreundlich gestaltet hast? So etwas kann viel Traffic verursachen.
        (-:
        Bookmarks:·Bilder·Jobs·Recht·
        kostenloser Webkataloge-Assistent

        Comment


        • #5
          Original geschrieben von goth
          zu 1.: Ja klar ist die Verarbeitung einer Zeichenkette in einfachen Hochkommas schneller ... allerdings wird diese dann auch nicht nach eventuell vorkommenden Variablen geparsed ... $variablen='Da Guggsu $blah'; funktioniert also nicht ...
          Ja, das Vars darin nicht geparsed werden weiss ich auch ;-) Aber laut markusschmitt ists ja dann egal wie... daher kein Traffic ensteht??

          Original geschrieben von goth
          zu 2.: Fast perfekt ist, wenn ich Deine Art zu fragen betrachte, wohl eher 'ne Frage der Analyse-Methode ... allerdings hat der Traffic den PHP/MySQL produzieren wohl eher weniger mit einen awStats Statistiken zu tun ... awStats ist meines Wissens lediglich ein Logfile Analyzer der die Weblogs auswertet ... im übrigen läuft die DB im Zweifel entweder auf den Webserver (Zugriff über UNIX-Socket) der überhaupt nicht gezählt wird ... oder auf 'nem Dedizierten Server im lokalen Netz Deines Providers ... und in dem Falle wäre es extrem unseriös wenn dieser Traffic gezählt würde.
          Das müßte ich dann mal in Erfahrung bringen.

          Original geschrieben von goth
          zu 3.: Probier's mit Datenkompression ... die erste Zeile Deiner PHP Scripte sollte lauten:

          ob_start("ob_gzhandler");

          das erhöht allerdings leicht die Serverlast ...
          Das werde ich mal als erstes probieren und mich damit ein wenig weiter beschäftigen...

          Danke schonmal für die bisherigen Antworten... Weitere Tipps sins natürlich willkommen.

          Comment


          • #6
            Original geschrieben von kill_bill
            Kann es sein, dass Du Deine PHP-Seiten suchmaschinenfreundlich gestaltet hast? So etwas kann viel Traffic verursachen.
            Eigentlich gehe mir Suchmaschinen am aller wertesten vorbei, aber was wäre für dich in dem Fall "Suchmaschinenfreundlich"...?

            Comment


            • #7
              unfreundlich: http://www.domain.tld/index.php?acti...uct&product=45

              freundlich: http://www.domain.tld/product_45

              zweck: adresse erweckt den eindruck, dass die seite nicht dynamisch, abhängig von parametern erzeugt wird, sondern statisch ist und daher indiziert werden kann

              erreicht durch: mod_rewrite

              warum das allerdings mehr traffic erzeugen soll verstehe ich nicht
              Last edited by mrhappiness; 04-03-2004, 09:36.
              Ich denke, also bin ich. - Einige sind trotzdem...

              Comment


              • #8
                Also ich habe mal ein paar Stunden diverse Foren und Seiten angeschaut und bin dann auf folgende Funktion gestossen die sehr gut ausssieht und laut Aussagen der Scripter Traffic bis zu 70% sparen kann aber nur in 60% der Fällen auch bei einem User durchgeführt wird?!

                PHP Code:
                # Start gzip
                function checkCanGzip() {
                global 
                $HTTP_ACCEPT_ENCODING;
                if (
                headers_sent()) return 0;
                if (
                strpos($HTTP_ACCEPT_ENCODING'x-gzip') !== false) return "x-gzip";
                if (
                strpos($HTTP_ACCEPT_ENCODING,'gzip') !== false) return "gzip";
                return 
                0;
                }
                function 
                gzDocOut() {
                if (
                $encoding checkCanGzip()) {
                $contents ob_get_contents();
                ob_end_clean();
                header("Content-Encoding: ".$encoding);
                print(
                "\x1f\x8b\x08\x00\x00\x00\x00\x00");
                $size strlen($contents);
                $contents gzcompress($contents9);
                $contents substr($contents0$size);
                print(
                $contents);
                //print(pack('V', crc32($contents)));
                //print(pack('V', $size));
                exit();
                }
                else {
                ob_end_flush();
                exit();
                }
                }
                ob_start();
                ob_implicit_flush(0);
                # Ende Gzip 
                dann den normalen Content, HTML und weiter PHP Code, und ans Ende dann die Function

                PHP Code:
                gzDocOut(); 
                Ich habe einfach mal die (lokal) Function eingebaut, und sie funktioniert auch ganz ordentlich... (Wenn die Seite Gziped wird, kann man ja den Quelltext nicht mehr anzeigen lassen)...

                Ich habe mich mit dem Thema gzip überhaupt nicht auseinander gesetzt und bin noch dabei das ganze 100%ig zu verstehen.

                Ist der Code i.O.? Kann man das vielleicht einfacher schreiben? Ich werde mich erstmal daran machen die Function 100%ig zu verstehen...

                Comment


                • #9
                  Original geschrieben von MaikelCoke
                  Kann man das vielleicht einfacher schreiben?
                  ja, aber den code hatte dir goth doch weiter oben schon gepostet!

                  ob_start("ob_gzhandler");
                  an den start des scriptes, und fertig.

                  die überprüfung, ob der client gzip überhaupt unterstützt, was in deinem code alles ausprogrammiert ist, macht PHP hierbei automatisch selber.


                  (bin mir nicht ganz sicher, ob diese methode auch die unterscheidung zwischen gzip und x-gzip macht, denke aber schon.)
                  I don't believe in rebirth. Actually, I never did in my whole lives.

                  Comment


                  • #10
                    Danke

                    Hi,

                    also mit den o.g. Methoden funkt es prima...

                    Hier mal ein kleiner Logile:

                    02.03.2004 | 673 | 43103 | 211522 | 634.96 MB *ohne gzip*
                    03.03.2004 | 672 | 47217 | 069687 | 655.32 MB *ohne gzip*
                    04.03.2004 | 699 | 51814 | 068823 | 339.93 MB *erst ab 12 Uhr mit gzip*

                    Ist natürlich ein verdammt grosser Unterschied. Vielen Dank für die Anhaltspunkte ;-)

                    MfG
                    Maikel

                    Comment


                    • #11
                      Original geschrieben von mrhappiness
                      unfreundlich: http://www.domain.tld/index.php?acti...uct&product=45
                      freundlich: http://www.domain.tld/product_45
                      warum das allerdings mehr traffic erzeugen soll verstehe ich nicht
                      OffTopic:
                      Durch ein solches Umschreiben würde der Suchmaschine vorgegaukelt werden, es handle sich um verschiedene Seiten (und nicht nur um Werte) und diese könnte (bzw. sollte) sich animiert fühlen, alle (Unter-)Seiten mit aufzunehmen und diese dann auch alle paar Tage aktualisieren ... und das kann nicht unerheblichen Traffic erzeugen - vor allem dann, wenn man einige unwichtige Werte mit umschreiben läßt, die die Suchmaschine dann auch alle verfolgen muß. - Aber das ist hier ja scheinbar nicht der Fall.
                      (-:
                      Bookmarks:·Bilder·Jobs·Recht·
                      kostenloser Webkataloge-Assistent

                      Comment


                      • #12
                        Original geschrieben von kill_bill
                        und das kann nicht unerheblichen Traffic erzeugen - vor allem dann, wenn man einige unwichtige Werte mit umschreiben läßt, die die Suchmaschine dann auch alle verfolgen muß.
                        das verfolgen "unwichtiger" links schliesst man natürlich durch eine geeignete robots.txt von vornherein aus.
                        I don't believe in rebirth. Actually, I never did in my whole lives.

                        Comment


                        • #13
                          Original geschrieben von wahsaga
                          das verfolgen "unwichtiger" links schliesst man natürlich durch eine geeignete robots.txt von vornherein aus.
                          sollte man zumindest - oder es gibt eben mehr traffic
                          (-:
                          Bookmarks:·Bilder·Jobs·Recht·
                          kostenloser Webkataloge-Assistent

                          Comment


                          • #14
                            Der Traffic-Spar-Code funktioniert bei mir nicht.

                            Wieso? Er gibt dann nixmehr aus (Alles weiß).
                            Mit freundlichem Gruß,
                            Deathrow

                            Comment


                            • #15
                              probiers mal damit (als letzte zeile im script):
                              PHP Code:
                              echo ob_get_contents(); 
                              (-:
                              Bookmarks:·Bilder·Jobs·Recht·
                              kostenloser Webkataloge-Assistent

                              Comment

                              Working...
                              X