Next-Gen YSlow Powered by Yui
18.července 2011 v 9:17 hod. od Marcela Duran | V rozvoji a výkonu záložky | 4 KomentářePřed několika týdny, Yahoo! oznámil YSlow pro mobilní telefony na Velocity 2011 , přinášet sílu analýzy výkonnosti YSlow do mobilního světa.
YSlow pro mobilní pracuje jako bookmarklet , takže je možné spustit na jiných prohlížečů než Firefox (jako doplněk) nebo chrom (jako rozšíření) .
Architektura YSlow byl částečně přepracován pro práci na platformě a YUI je základním faktorem, aby tzv. sandboxu, cross-browser abstrakce a jednoduché YQL přístup možný.
Sandboxu
Aby mohla být vložená na stránce, aniž by zasahoval analýzu výkonnosti a bez probírat s vlastní stránku, YSlow je bookmarklet, který vstřikuje JavaScript a CSS do libovolné stránky s využitím síly Yui sandboxu:
Bookmarklet URL:
javascript: (function (y, p, o) { p = y.body.appendChild (y.createElement ("iframe")); p.id = 'YSlow-bookmarklet "; p.style.cssText = "display: none"; o = p.contentWindow.document; o.open (). write (' <head> <Tělo onload = " YUI_config = { výhra: window.parent, doc: window.parent.document }; var d = doklad; d.getElementsByTagName (\ "vedoucí \") [0] . AppendChild ( d.createElement (\ 'skript \ ") ). Src = \ 'http://d.yimg.com/jc/yslow-bookmarklet.js \' " > '); o.close () } (Dokument))
Výše uvedený kód:
- vytvoří prázdný iframe;
- připojí jej na stránky orgánu;
- skrývá soubor * iframe;
- dostane jeho okna ovladače;
- zapíše do jeho obsahu do těla iframe;
- tento orgán je prázdný, ale má
onloadudálost -
onloadudálost definuje, jak aplikovat YSlow JS:- stanoví
YUI_config, takžewinadocpoukazuje na stránce v současné době analyzujíwindowadocument, respektive - dynamicky se vstřikuje YSlow URL vytvořením
scriptprvek do iframe nahead
- stanoví
* Iframe se zobrazí v době, kdy všechny YSlow prezentace aktiva jsou nahrány
To bude klást iframe do stránky se analyzují. Tento iframe bude působit jako sandboxed prostředí a YSlow bude bydlet v něm. Vzhledem k tomu, iframe je dynamicky vytvořen bez src atributu, bude mít přístup ke své mateřské společnosti (str. analyzován), protože není stejného původu politika porušení tam děje.
YUI_config Objekt je po ruce, protože to určuje win a doc s rodiči IFRAME strany (str. analyzované), a tak každá nová instance YUI bude vázán na mateřské dokumentu ve výchozím nastavení, kabeláže žádné volání Y.all a Y.one přes Y.config.win nebo Y.config.doc z Yui use zpětného volání.
YSlow prezentace je zpracována iframe window a document odkazy, což YSlow hlavní skript k tomu, aby se značky, stejně jako načítat externí CSS v této iframe, aniž by v rozporu s nadřazenou stránku v stylů. YSlow naskenuje nadřízenou stránku, aby si všechny součásti (obrázky, skripty, odkazy, obrázky na pozadí,, flash apod.) potřebné pro pozdější analýzu výkonnosti. To se provádí pomocí přístupu Y.config.win a Y.config.doc , protože oni se odkazují na mateřské straně.
Cross-browser abstrakce
Být bookmarklet, je YSlow pro mobilní zařízení mělo fungovat na všech prohlížeč *. YUI abstrahuje cross-browser problémy tím, že normalizace prohlížeče rozdíly, což v čistém a snadno číst a udržovatelné codebase.
YSlow nebyla plně portován na YUI 3 - pouze regulátor vrstva (z připravované App složku) pro tuto chvíli - ale přesto jsou všechny manipulace DOM a zpracování událostí provádí pomocí node a event modulů. V budoucích verzích plánujeme do přístavu více YSlow funkcí Yui 3.
* Ne všechny prohlížeče jsou podporovány
YQL
YSlow analyzuje stránek kontrolou HTTP hlaviček pro součásti nalezených na stránce. HTTP hlavičky odpovědi nejsou k dispozici na stránce, tudíž tyto komponenty je třeba požádat znovu, aby pro YSlow dostanete odpověď informace v hlavičce. To by mohlo být dosaženo, a vyžádat si seznam komponent URL pomocí XMLHttpRequest (AJAX), ale bohužel z důvodu téhož původu politiky omezení , to není možné, pokud všechny komponenty jsou ve stejné doméně jako stránka, která je velmi nepravděpodobné.
Společná řešení pro omezení stejného původu politiky, pomocí JSONP, kde pracuje jako externí server proxy požaduje seznam součástí URL a jejich načítání HTTP hlavičky odpovědi na účet YSlow. Vzhledem k popularitě a jeho YSlow posledních mobilních úsilí analòz, čekáme velmi silný provoz na YSlow pro mobilní bookmarklet. S cílem podpořit pravidelnou leteckou dopravu, YQL bylo škálovatelné řešení přijaté YSlow prostřednictvím otevřené datové tabulky s názvem data.headers , který načte hlavičky odpovědi a obsah na základě seznamu adres URL, zatímco se vydávat za user-agenta, aby očekávaný obsah je získat.
YQL Dotaz složka dělá všechnu práci pro správu YQL dotazy při řízení JSONP žádostí pod kapotou, takže řadiče YSlow kód mnohem jednodušší a snadno udržovat.
Budoucí vylepšení: Nová YSlow pro mobilní přívětivého rozhraní
V současné době YSlow pro mobilní uživatele zkušenost je stejná jako práce s počítačem. Jednání s dlouhým seznamem dat pro analýzu výkonnosti není nejlepší zážitek na malé chytré telefonů obrazovek. Vzhledem k tomu, YUI také abstrahuje křížové zařízení gesta , bude YSlow pro mobilní dostat zbrusu nový mobilní přívětivé rozhraní v budoucích verzích.
Výkon výkonný nástroj
YSlow nasazení mobilní byla provedena pečlivě s ohledem na její vliv na výkon na doby načítání stránky se analyzují. V Yui 3 moduly používané na YSlow byly přezkoumány, aby obsahovala pouze moduly potřebné pro načtení YSlow tak rychle, jak je to možné. Osivo YUI soubor a nakladače nebyly zahrnuty , protože všechny potřebné moduly a submodulů byly spojeny dohromady po výkonu Ryana Grove Zen hroty, které umožnily zavést všechno do jednoho malého jediné přání: YSlow-bookmarklet.js: 204 KB, 66 kb ( gzip), pokud:
- YUI: 75 KB, 27 kb (gzip)
- YSlow: 129 KB, 39 kb (gzip)
Více o YSlow
Mějte up-to-data s nejnovějšími YSlow oznámení podle:
- Návštěva přepracované YSlow stránku na getyslow.com
- Líbí YSlow na Facebooku: facebook.com / getyslow
- Po YSlow na Twitteru: twitter.com / getyslow
Sdílet a rozšiřovat: Záložka se Del.icio.us | Digg to! | reddit!
4 Komentáře »
RSS komentářů k tomuto příspěvku. TrackBack URI
Zanechat komentář

Copyright © 2006-2012 Yahoo! Inc Všechna práva vyhrazena. Ochrana osobních údajů - Podmínky služby
Powered by WordPress na Yahoo! Web Hosting .

Mohlo by to určitě používat mobilní stylů nyní
Komentář od Juan - 19. července 2011 #
Dobrá zpráva Marcel. Udržet v dobré práci!
Komentář od Eduardo Lundgren - červenec 21, 2011 #
[...] Next-Gen YSlow poháněných Yui [...]
Pingback podle osvědčených postupů pro Urychlení webu «Chandara - 25.července 2011 #
Nejsem vývojář, ale zajímá výkon App ove WAN a Internetu. Zkusila jsem to poprvé a vyšlo to i pro mě. Díky za uvedení úsilí ...
Komentář od Cliff Chapman - 27. července 2011 #