kostenloser Webspace werbefrei: lima-city


Fragen zur PHP Performance

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    ksb

    ksb hat kostenlosen Webspace.

    Ich habe ein paar Fragen zur Performance von HTML, PHP, MySql und Javscript, poste es aber in PHP weil sich die meisten Fragen auf PHP beziehen.

    1. Wenn mehr Text in einer .php steht, wirkt sich das sehr auf Ladezeit aus?
    2. Verlangsamen mehrere includes die Ladezeit der Seite?
    3. Laden längere URLS länger als kürzere?
    4. Ist es besser statt $username immer $un oder so zu benutzen weil es kürzer ist und so weniger Text entsteht?
    5. Ist es nicht besser in eine MySQL-Tabelle einen langen String zu speichern und die Daten mit Slashes zu trennen, weil so die Anfragen verringert werden, statt für jeden einzelnen Wert eine Spalte zu haben?
    6. Ist es besser bei URL die get bzw. post variablen in eine Variable zu packen, damit die URL nicht zu lang ist, z.B: statt ?username=blabla&password=blabla&login=1, ?l=blabla/blabla/1
    7. Verringern viele Funktionen in einer externen js-Datei die Ladezeit sehr?
    8. Bremst eine undendliche Whileschleife mit 100ms Pause in JS bei der z.B. eine Variable hochgezählt wird den PC nach einer Weile aus?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. g****e

    ksb schrieb:
    1. Wenn mehr Text in einer .php steht, wirkt sich das sehr auf Ladezeit aus?

    Nein. An sich nicht.

    2. Verlangsamen mehrere includes die Ladezeit der Seite?

    Ja. Ob du keine Includes, oder 100 hast ist ein Unterschied. Jedesmal muss die Funktion aufgerufen werden und der Code so erweitert werden.

    3. Laden längere URLS länger als kürzere?

    An sich vernachlässigbar. Man muss nur dran denken, dass die URL maximal 255 Zeichen lang sein kann.

    4. Ist es besser statt $username immer $un oder so zu benutzen weil es kürzer ist und so weniger Text entsteht?

    Irrelevant. Das interessiert nachher nichtmehr.

    5. Ist es nicht besser in eine MySQL-Tabelle einen langen String zu speichern und die Daten mit Slashes zu trennen, weil so die Anfragen verringert werden, statt für jeden einzelnen Wert eine Spalte zu haben?

    Nein. Die Daten müsstest du jedesmal erst extrahieren die du suchst (aus dem Array) und das ist nicht gerade performant. MySQL hat, je nach engine, eigene verdammt gute Cachemechanismen.

    6. Ist es besser bei URL die get bzw. post variablen in eine Variable zu packen, damit die URL nicht zu lang ist, z.B: statt ?username=blabla&password=blabla&login=1, ?l=blabla/blabla/1

    Nein, die länge interessiert an sich wenig. Du musst nur an die 255 Zeichen denken. Außerdem ist die GET-Verarbeitung ein wenig schneller, als wenn du es erst selbst verarbeiten musst (durch explode)

    7. Verringern viele Funktionen in einer externen js-Datei die Ladezeit sehr?

    Leider verstehe ich nicht ganz was du meinst. Optimal ist es, eine einzige JS zu haben. Sonst werden mehr HTTP-Requests gesendet und so entstehen neue Latenzzeiten und Verbindungen. Das kann sowohl Server als auch Browser auslahmen.

    8. Bremst eine undendliche Whileschleife mit 100ms Pause in JS bei der z.B. eine Variable hochgezählt wird den PC nach einer Weile aus?

    Ich würd sagen nein. Hier ist es irrelevant. Viel gefährlicher sind Closures, welche den Speicher des Browsers füllen.


    Alle angaben ohne Gewähr und gerne Korrigierbar von meinen Mitpostern^^
    Zu dem vielen Text drin: Ein Kumpel ist Webentwickler von Beruf, und der hat ein PreCompiler für seine PHP-Skripts geschrieben, welcher includes bereits einbindet, kommentare entfernt, usw. Allerdings hat er selbst zugegeben: Es bringt vllt nicht viel, aber es kann in Stresszeiten wie es beim Browsergame mal vorkommt vllt ja doch helfen.

    Liebe Grüße
  4. Autor dieses Themas

    ksb

    ksb hat kostenlosen Webspace.

    Okay danke für die Antworten.
    Ich meinte bei der js-Frage nicht, dass man mehrere js enibindet, sondern, dass in einer js sehr viel Text steht und viele Funktionen definiert sind.
    Oder soll ich dann lieber statt alle Funktionen in einer JS, zu jeder Seite eine kleine js mit den benötigten Funktionen mitladen.
  5. Im Großen und Ganzen decken sich meine Überlegungen mit den Antworten von ggame. Nun zu deinem letzten Post:

    ksb schrieb:
    [...]
    Ich meinte bei der js-Frage nicht, dass man mehrere js enibindet, sondern, dass in einer js sehr viel Text steht und viele Funktionen definiert sind.
    Oder soll ich dann lieber statt alle Funktionen in einer JS, zu jeder Seite eine kleine js mit den benötigten Funktionen mitladen.
    Wenn du nur eine JavaScript-Datei einbindest ist es meiner Meinung nach egal, wie viele Funktionen darin enthalten sind. Würdest du hingegen für jede Funktion eine eigene Datei erstellen und einzeln einbinden, würed die Ladezeit mit Sicherheit verlangsamt werden.

    Es kommt aber wie immer darauf an: Falls du pro Seite jeweils eine Funktion hast, würde es Sinn machen, nicht ein JavaScript-File zu laden, das alle Funktionen enthält, sondern nur ein kleines JavaScript-File, das nur die eine Funktion enthält, die dort gebraucht wird. So würde die Ladezeit gering gehalten werden. Aber dieser Fall ist eher unwahrscheinlich und theoretischer Natur. :wink:

    Beitrag zuletzt geändert: 25.5.2011 7:11:05 von wagnerm
  6. t*****b

    ksb schrieb:
    1. Wenn mehr Text in einer .php steht, wirkt sich das sehr auf Ladezeit aus?


    Trennen wir mal "Abarbeitungszeit" des Scriptes und Ladezeit. Ladezeit ist die Dauer, die die von PHP fertig gescriptete Seite zum Browser braucht. Natürlich hat man eine längere Ladezeit, je größer die Datei ist. Aber bei Text sind das so wenige Bytes, dass es sich nicht bemerkbar machen würde, 10 Wörter oder 1000 Wörter zu aufzurufen.
    Zur Abbearbeitungszeit durch PHP: PHP übergeht natürlich alles, was kein Script ist.

    ksb schrieb:
    2. Verlangsamen mehrere includes die Ladezeit der Seite?


    Wenn du nicht gerade hunderttausende Dateien hast die du includierst, wird man auch das nicht merken. Das sind so geringe Rechenprozesse, dass man es nicht merken wird, dass das Script länger braucht.

    ksb schrieb:
    3. Laden längere URLS länger als kürzere?


    Da handelt es sich nun wirklich um Erbsenzählerei...

    ksb schrieb:
    4. Ist es besser statt $username immer $un oder so zu benutzen weil es kürzer ist und so weniger Text entsteht?


    Nö. PHP geht "intern" sowieso ganz anders mit Variablen um.

    ksb schrieb:
    5. Ist es nicht besser in eine MySQL-Tabelle einen langen String zu speichern und die Daten mit Slashes zu trennen, weil so die Anfragen verringert werden, statt für jeden einzelnen Wert eine Spalte zu haben?


    Immer für jeden Wert eine Spalte! Dafür sind Datenbanken schließlich gemacht, um viele Anfragen zu vielen Daten abzuarbeiten. Wenn du mit Slashes trennst, müsstest du das im Script wieder trennen, dann hat das Script mehr zu arbeiten. Außerdem kannst du dann deine Tabelle nicht einfach so ändern/erweitern, wenn du zig tausend Werte die du mit Backslashes trennst manuell ändern musst.

    ksb schrieb:
    6. Ist es besser bei URL die get bzw. post variablen in eine Variable zu packen, damit die URL nicht zu lang ist, z.B: statt ?username=blabla&password=blabla&login=1, ?l=blabla/blabla/1


    Bei ?l=bla/bla/bla musst du das immernoch im Script trennen. Davon abgesehen: für SEO ist am besten: www.seite.tld/bla/bla/bla

    ksb schrieb:
    7. Verringern viele Funktionen in einer externen js-Datei die Ladezeit sehr?


    Nicht die Anzahl der Funktionen, sondern die Größe deiner JavaScript-Datei.

    ksb schrieb:
    8. Bremst eine undendliche Whileschleife mit 100ms Pause in JS bei der z.B. eine Variable hochgezählt wird den PC nach einer Weile aus?


    Eine unendliche Whileschleife ist immer schlecht und Unsinn.

    Beitrag zuletzt geändert: 25.5.2011 9:38:16 von trueweb
  7. s******i

    Eine unendliche Whileschleife ist immer schlecht und Unsinn.

    Ich hoffe du beziehst das nur auf eine Skriptsprache wie PHP.
  8. spuglisi hat natürlich Recht. Warteschleifen sind zum Beispiel bei GUI-Anwendungen nützlich, die auf Events warten.

    @Threadautor: Du machst dir viel zu viele Gedanken. Wenn du wirklich ernsthafte (!) Geschwindigkeitsprobleme hast und das nicht an deiner miesen Internetanbindung liegt, dann

    - solltest du deine PHP Scripte vernünftig schreiben, so dass sie effizient sind (Bessere Algorithmen, besserer Aufbau des Scripts)
    - gleich auf PHP verzichten und etwas performanteres benutzen

    Also generell gilt eben erstmal: Schau wie weit du kommst und wenn du dann Probleme kriegst, musst du eben sehen, wo du optimierst.

    Wenn du gleich von Anfang etwas wirklich großes und anspruchsvolles planst (wirklich viele Besucher), solltest du dir natürlich vorher überlegen, welche Programmiersprache, etc. du verwenden willst und wie alles zusammenarbeiten soll, damit es effizient genug ist. Aber für die durschnittliche PHP-Webseite sollte man sich nicht zu viele Gedanken machen. Viel wichtiger ist da, dass die Seite sicher programmier ist.

    Beitrag zuletzt geändert: 26.5.2011 20:20:57 von bladehunter
  9. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!