php.de

Zurück   php.de > Webentwicklung > Software-Design

Software-Design Diskussionen auf Profi-Niveau: PHP Lösungen auf konzeptioneller Ebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 18.10.2010, 02:23  
Erfahrener Benutzer
 
Registriert seit: 26.05.2008
Beiträge: 200
PHP-Kenntnisse:
Fortgeschritten
[-UFO-]Melkor befindet sich auf einem aufstrebenden Ast
Standard

Bestätigen kann ich es, habe es gerade mal getestet.
Wenn ich das richtig sehe, nutzt ExtJs eine anonyme Funktion zum Laden der Klassen/Funktionen, die muss der Browser natürlich erstmal ausführen, das kostet Zeit (wird ohne anonyme Funktion aber wohl genauso viel Zeit kosten).

So oder so analysiert der Browser ja deine Dateien und führt sie aus. Er kann ja schließlich nicht wissen, dass es nicht nur um ein Framework handelt das so selbst noch gar nicht benötigt wird.
Bei einer Datei dieser Größe (immerhin stolze 697 KB) wirst du um eine Verzögerung wohl nicht herumkommen.

Je nachdem, wofür du die Datei brauchst, wäre es noch eine Überlegung die Datei nachträglich zu laden. Steve Souders schreibt in Kapitel 3 "Splitting the Initial Payload" seines Buches "Even Faster Web Sites" etwas darüber.

Geht im Grunde darum, dass du nur das zum Rendern der Seite benötigte JavaScript direkt lädst und den Rest per "post-onload download" nachlädst.
[-UFO-]Melkor ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 18.10.2010, 15:38  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.994
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
Ist für Testing- und Entwicklungszwecke ganz gut, aber für Produktivumgebungen finde ich das ganz schlecht. Dazu muss ein Extra-Request zu einem fremden Server getätigt werden, den man sich evtl. sparen könnte
So doof ist das gar nicht. Stichwort Content Distribution Network. Gerade die JS-Frameworks werden diese Server vermutlich noch schneller ausliefern, weil deren Serverinfrastruktur besser ist. Geschwindigkeitsoptimierung für Websites empfiehlt desweiteren, mehrere Domains zu benutzen, um die Anzahl gleichzeitig ladender Komponenten zu erhöhen.

Datenschutz - klar; wenn allerdings ohnehin Google-Tracking aka Analytics oder Webmastertools verwendet wird, ist das sowieso egal. jQuery findet man sicher auch noch auf anderen großen Seiten.

http://www.drweb.de/magazin/jquery-g...ode-einbinden/
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online   Mit Zitat antworten
Alt 19.10.2010, 15:58  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

@[-UFO-]Melkor hast du es mit oder ohne geöffnetem Firebug (o.ä.) getestet? Siehe http://www.php.de/off-topic-diskussi...alysieren.html (Suche FF Addon um Ladezeit zu analysieren)
cycap ist offline   Mit Zitat antworten
Alt 22.10.2010, 11:50  
Erfahrener Benutzer
 
Registriert seit: 06.11.2008
Beiträge: 212
stayInside befindet sich auf einem aufstrebenden Ast
Standard

Das Problem ist folgendes. Wenn JS Dateien im Head eingebunden werden wird alles was danach geladen wird solange geblockt bis alle JS Dateien fertig sind. Hat man also sehr sehr große JS Dateien und viele Bilder auf der Seite kann es etwas dauern bis er anfängt die Bilder zu laden..

Werden die JS Dateien allerdings im am Ende des Bodys geladen werden erst die Bildern geladen und dann das JS,
stayInside ist offline   Mit Zitat antworten
Alt 22.10.2010, 13:01  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Zitat:
Zitat von stayInside Beitrag anzeigen
Das Problem ist folgendes. Wenn JS Dateien im Head eingebunden werden wird alles was danach geladen wird solange geblockt bis alle JS Dateien fertig sind. Hat man also sehr sehr große JS Dateien und viele Bilder auf der Seite kann es etwas dauern bis er anfängt die Bilder zu laden..

Werden die JS Dateien allerdings im am Ende des Bodys geladen werden erst die Bildern geladen und dann das JS,
Trotz alle dem wird die Seite aber vom Browser erst freigegeben (onLoad-Event) wenn alles geladen UND (der springende Punkt) verarbeitet wurde. Und bei Einbindung des ExtJs-Frameworks verzöger sich dieses (zumindest mit geöffnetem Firebug sehr deutlich).
cycap ist offline   Mit Zitat antworten
Alt 22.10.2010, 13:08  
Supermoderator HD
 
Benutzerbild von Manko10
 
Registriert seit: 16.03.2008
Beiträge: 8.709
PHP-Kenntnisse:
Fortgeschritten
Manko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende Zukunft
Standard

Wobei du noch zwischen onload und Document-Ready unterscheiden musst. Letzteres wird schon geworfen, wenn das DOM fertig aufgebaut ist. Der Ladebalken des Browser verschwindet aber natürlich erst bei onload.
__________________
Refining Linux Advent Calendar series “24 Outstanding ZSH Gems
Manko10 ist offline   Mit Zitat antworten
Alt 22.10.2010, 13:10  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Dateien auf von fremden Servern laden hat sogar noch mehr Vorteile, wird Beispielsweise jQuery von Google geladen, dann ist die Wahrscheinlichkeit das der Benutzer davor auf einer Webseite war und ebenfalls dort von Google jQuery eingebunden war sehr hoch. Heißt, jQuery muss überhaupt nicht mehr geladen werden weil die Google Version schon im Cache des Benutzer ist, obwohl er noch nie auf deiner Webseite war.

Wenn man selbst ein paar Server nutzt bzw. verschiedene Subdomains dann muss man allerdings aufpassen. Die geladene Datei muss nämlich immer vom selben Server/Sudomain geladen werden sonst hat man am Ende das ganze eher verschlimmert weil der User eine Version von jeder Domain in den Cache laden muss.
Flor1an ist offline   Mit Zitat antworten
Alt 26.10.2010, 18:42  
Erfahrener Benutzer
 
Registriert seit: 02.09.2009
Beiträge: 1.020
PHP-Kenntnisse:
Fortgeschritten
mquadrat befindet sich auf einem aufstrebenden Ast
Standard

Die Idee JS und CSS dynamisch je nach angeforderter Funktion zu verarbeiten hatte ich auch mal. Davon bin ich aber wieder abgekommen. Das Caching wird dann viel zu fummelig. Besser ist es IMHO für jedes Projekt zu validieren was benötigt wird und was nicht und dann eben selektiv die JS Dateien erstellen.

Je größer die JS Files werden desto langsamer wird Firefox. Ich hatte auch tatsächlich schon einen Fall, da war der IE schneller im JS verarbeiten als der FF. Wobei ich nicht ausschließen möchte, dass das an der Kombination FF3 und Mootools 1.2 lag.

Mootool Core hole ich aktuell auch von Google. Selber hosten sollte man bei Intranet-Seiten oder wenn man dem Kunden auch mal offline was vorführen möchte
__________________
Wir suchen PHP Entwickler (Vollzeit) im Raum Darmstadt / Rhein-Main. Infos via E-Mail mueller@new-frontiers.de
mquadrat ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
best practice - OOP Kern und Komponenten in Applikation wiederverwenden Murdoc PHP-Fortgeschrittene 22 23.08.2010 10:10
Apache2.2 & PHP5 mit MSSQL Extension Fehler AwaKe Server, Hosting und Workstations 4 14.07.2010 14:36
Gettext (PO Files / MO Files editierung mit php backend) Floid Off-Topic Diskussionen 7 14.06.2010 20:33
Tutorial / Best Practice für kl. Windows Server Cluster Plague Server, Hosting und Workstations 1 01.04.2010 22:49
Umfrage txt files anlegen adipure PHP Tipps 2010 3 12.02.2010 12:54
Einbindung PHP-Include von Hotelbewertungen Ice07 Beitragsarchiv 0 16.12.2009 16:48
Probleme mit Bildgenerierung swsche PHP Tipps 2009 8 31.10.2009 14:49
Welche Methode um Config Files editierbar zu machen? GSJLink PHP-Fortgeschrittene 5 25.07.2008 01:01
files anzeigen die nur .pdf heissen PHP Tipps 2005-2 6 08.08.2005 19:42
[Erledigt] Button an best Tagen zu best. Uhrzeiten wechseln lassen PHP Tipps 2005-2 3 30.07.2005 12:52
Download Files bzw. Upload files !! PHP Tipps 2005 2 29.03.2005 20:20
Files zippen mit ftp_exec()?! - Hilfe PHP-Fortgeschrittene 0 24.01.2005 10:39
[Erledigt] .php5 files Server, Hosting und Workstations 11 31.08.2004 19:29
number of open files to more than 150 Datenbanken 0 22.07.2004 11:41
server variablen und files PHP Tipps 2004 1 04.07.2004 16:16

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
extjs ladebalken, wie ext js grafiken mit javascript rendert, unterschiedliche mootools versionen je nach komponente laden, ext js nachladen vom fremden server, javascript mootools durch apache zippen lassen

Alle Zeitangaben in WEZ +2. Es ist jetzt 00:41 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum