Κινητό Όρια cache του browser, Revisited
12 του Ιούλη 2010 στις 8:45 πμ από τον Ryan Grove | Σε Ανάπτυξης , Performance | 7 ΣχόλιαΤο Mobile Όρια cache του browser: Android, Ίο, και webOS , μοιράστηκα τα αποτελέσματα των προσπαθειών μου να προσδιοριστούν τα όρια cache του browser στο Android, την Ίο, και webOS συσκευές. Στο τέλος του άρθρου, έγραψα:
Χρησιμοποιήστε αυτά τα αποτελέσματα ως σημείο εκκίνησης, αλλά ελέγχει τον εαυτό τους πριν κάνετε σημαντικές αποφάσεις που βασίζονται σε υποθέσεις σχετικά με το κινητό τους περιορισμούς cache. Το κινητό αλλάζει ο κόσμος browser με ρυθμό αστραπής, έτσι αυτή η έρευνα θα έχει πολύ μικρή διάρκεια ζωής.
Όπως αποδεικνύεται, ότι ήταν μια καλή συμβουλή: την ημέρα μετά το άρθρο αυτό δημοσιεύτηκε, Steve Souders σχολίασε ότι είχε κάνει δοκιμές, χρησιμοποιώντας μια διαφορετική μεθοδολογία που ήταν πιο αντιπροσωπευτικό ενός πραγματικού κόσμου ροή εργασίας web και είχε πάρει διαφορετικά αποτελέσματα.
Νέα Μεθοδολογία
Πρωτότυπη μεθοδολογία μου που εμπλέκονται άμεσα την πλοήγηση σε μια τυχαία σελίδα από ένα ορισμένο μέγεθος, που σερβίρεται με ένα text/html τύπο περιεχομένου. Τα αποτελέσματα χρησιμοποιώντας τη μεθοδολογία αυτή ήταν αξιόπιστα αναπαραχθούν (εκτός από webOS), αλλά όπως επεσήμανε ο Steve, οι χρήστες δεν πλοηγηθείτε άμεσα σε CSS και JavaScript αρχεία. Η υπόθεσή μου ότι τα όρια για την άμεση πλοήγηση σε έναν πόρο HTML ήταν τα ίδια με τα όρια για το εξωτερικό CSS και JavaScript ήταν λανθασμένη, έτσι ακόμα κι αν τα αποτελέσματα των δοκιμών μου ήταν έγκυρη, δεν ήταν ευρέως εφαρμόσιμη.
Κατά τη διάρκεια πολλών συνόδων IM, πολλά ηλεκτρονικά μηνύματα, και μια-δυο τηλεφωνήματα, Steve και δούλεψα μια νέα μεθοδολογία δοκιμών. I εφαρμοστεί μια έκδοση του στην κορυφή της μου -πλαισίου δοκιμών cache , τότε ο Steve εφαρμοστεί μια έκδοση μπορεί να δημοσιεύει αποτελέσματα σε Browserscope .
Στο νέο τεστ, θα φορτώσει μια σελίδα HTML που αναφέρεται σε μια τυχαία που δημιουργείται CSS ή JavaScript συστατικό ενός ορισμένου μεγέθους. Στη συνέχεια περιηγηθείτε σε μια δεύτερη σελίδα HTML η οποία φορτώνει την ίδια συνιστώσα και ελέγχει αν ήταν ή όχι φορτωθεί από τη μνήμη cache. Για να διαπιστωθεί εάν ένα στοιχείο έχει φορτωθεί από τη μνήμη cache, αποθηκεύουμε μια χρονική σήμανση σε ένα cookie στον κάθε αίτηση? Εάν το timestamp ενημερώνεται η δεύτερη φορά που θα φορτώσει το στοιχείο, γνωρίζουμε το αίτημα χτυπήσει το διακομιστή, που σημαίνει ότι το στοιχείο δεν ήταν φορτωμένο από τη μνήμη cache.
Νέα Αποτελέσματα
Διαπιστώσαμε ότι όλα τα προγράμματα περιήγησης για κινητά που δοκιμάσαμε είχαν σημαντικά υψηλότερα όρια cache για εξωτερικούς πόρους που φορτώνονται από μια σελίδα από ό, τι έκαναν για μια σελίδα HTML η ίδια. Αυτό είναι εξαιρετική είδηση για το κινητό web developers.
Ο παρακάτω πίνακας παρουσιάζει τα ευρήματά μας:
| Browser / OS / Device | Ενιαία Όριο Component | Επιζεί Κύκλος Power |
|---|---|---|
| Android 2.2 (Nexus One) | 2MB | Ναί |
| Mobile Safari, iOS 3.1.3 (1ος-gen iPhone) | 4MB + | Όχι |
| Mobile Safari, iOS 3.2 (iPad) | 4MB + | Όχι |
| Mobile Safari, iOS 4.0 (iPhone 3GS) | 4MB + | Όχι |
| Mobile Safari, iOS 4.0 (iPhone 4) | 4MB + | Όχι |
| webOS 1.4.1 (Palm Pre Plus) | ~ 0.99MB (1023 KB) | Ναί |
Σημειώστε ότι 4MB ήταν το μεγαλύτερο μέγεθος που δοκιμάσαμε, καθώς και όλες τις iOS συσκευές αποθηκεύονται προσωρινά στοιχεία 4MB. Το πραγματικό όριο cache για αυτές τις συσκευές μπορεί να είναι μεγαλύτερο από 4 MB. Επίσης, webOS στο Palm Pre Plus έδωσε σταθερά αποτελέσματα σε αυτό το τεστ, ενώ είχε κάποια προβλήματα στην προηγούμενη δοκιμή.
Είναι πιθανό ότι το πολύ χαμηλότερα όρια προηγούμενα τεστ μου έδειξε για HTML συστατικά στην Ίο μπορεί να υποδεικνύει τη χρήση της cache μνήμης RAM για τα στοιχεία αυτά, ενώ τα πολύ υψηλότερα όρια για τα CSS / JS συστατικά σε αυτό το τεστ μπορεί να δείξει τη χρήση cache στο δίσκο, αλλά αυτό είναι απλά εικασίες. Android, τουλάχιστον, φαίνεται να χρησιμοποιήσετε μια μνήμη cache του δίσκου και στις δύο περιπτώσεις, από την προσωρινή μνήμη του επιβιώνει κύκλους εξουσίας.
Νέες συστάσεις
Με βάση αυτά τα νέα αποτελέσματα, σε συνδυασμό με τα αποτελέσματα από προηγούμενες εξετάσεις μου, προσφέρω τα ακόλουθα επικαιροποιημένο σύνολο συστάσεων:
- Χρησιμοποιήστε πολύ-μέλλον κεφαλίδες λήξης cache. Αυτό θα αποτρέψει το πρόγραμμα περιήγησης από την υποχρέωση να στείλει ένα υπό όρους αίτηση GET.
- Προσπαθήστε να περιορίσετε σελίδες HTML για να 25.6KB ή λιγότερο αν θέλετε να γίνεται προσωρινή αποθήκευση, από την προηγούμενη δοκιμές έδειξαν ότι το όριο που επιβάλλεται από τους iOS 3.2 το iPad-ήταν η χαμηλότερη HTML όριο των πόρων της υπό δοκιμή συσκευές.
- Κρατήστε CSS και JS συστατικά κάτω από 1MB. Φυσικά, 1MB είναι τεράστια και τα υλικά μας πρέπει να είναι πολύ μικρότερο από αυτό, αλλά μην κάνετε τον κόπο διάσπαση ενός στοιχείου σε ξεχωριστές αιτήσεις για το καλό των Δυνατότητα cache, εκτός αν το μέγεθός του προσεγγίσεις 1MB.
- Σκεφτείτε να χρησιμοποιήσετε τη μνήμη cache εφαρμογή HTML5 αν είναι σημαντικό ότι τα στοιχεία σας παραμένουν στη μνήμη cache για μεγάλο χρονικό διάστημα, ή σε κύκλους εξουσίας.
- Κάντε τη δική σας δοκιμή. Τόνισα τη σημασία που έχει αυτό στο προηγούμενο άρθρο μου και θα το τονίσω και πάλι εδώ. Χρησιμοποιήστε αυτά τα αποτελέσματα ως σημείο εκκίνησης, αλλά ελέγχει τον εαυτό τους πριν κάνετε σημαντικές αποφάσεις που βασίζονται σε αυτά.
Μοιραστείτε και να επεκτείνει: Σελιδοδείκτης με Del.icio.us | Digg it! | reddit!
7 Σχόλια »
RSS feed για σχόλια σχετικά με τη θέση αυτή. TrackBack URI
Αφήστε ένα σχόλιο

Copyright © 2006-2011 Yahoo! επιφύλαξη παντός δικαιώματος. Πολιτική Προστασίας Προσωπικών Δεδομένων - Όροι Υπηρεσίας
Powered by WordPress σε Yahoo! Web Hosting .


[...] Update (12 Ιουλίου 2010): Αν και τα αποτελέσματα που περιγράφονται σε αυτό το άρθρο είναι ακριβείς για σελίδες HTML, νέες δοκιμές έχουν δείξει πολύ διαφορετικά όρια cache για CSS και JS πόρους. Τα επικαιροποιημένα αποτελέσματα που περιγράφονται στο Mobile Όρια Revisited cache του browser,. [...]
Pingback από Mobile Όρια cache του browser: Android, Ίο, και webOS »Blog Yahoo! User Interface (YUIBlog) - 12 Ιούλη του 2010 #
[...] Πολλές ευχαριστίες σε Ryan Grove για εργασία σε αυτό το caching δοκιμή - Αναχώρηση ενημερώθηκε από τη θέση του: Κινητό Όρια cache του browser, Revisited. Και χάρη στην Lindsey Simon για την κατασκευή Browserscope μια τέτοια μεγάλη πλαίσιο για crowdsourcing [...]
Pingback από Υψηλή Ιστοσελίδες Performance:: Κινητή μεγέθη των αρχείων cache - 12 Ιουλ 2010 #
[...] Mobile Όρια cache του browser, Revisited - Ryan Grove δίνει μια ενημέρωση σχετικά με την προηγούμενη εργασία τους σχετικά με την κινητή μνήμη cache του προγράμματος περιήγησης με μια ενημερωμένη μεθοδολογία, η οποία παράγει διαφορετικά αποτελέσματα. [...]
Pingback από το ρόφημα πρωί - Chris Alcock »Η Brew Morning # 641 - 12 Ιουλίου 2010 #
[...] Περισσότερα Opera Mobile 10.1 S60: W3C gelocation, σύνορα-ακτίνα & 2D μετατρέπεται σε πλατφόρμα S60 Mobile Όρια Browser Cache, Revisited από τον Ryan Grove Mobile μεγέθη cache αρχείων (και άλλες δοκιμές επιδόσεων σε κινητές συσκευές) από τον Steve [. ..]
Pingback από την Παρασκευή συνδέσεις: κινητό μελέτες απόδοση, την επερχόμενη στοιχείο, και (Ιούλιος 15) | David B. Calhoun - Προγραμματιστής Blog - 16 Ιουλίου, 2010 #
Μπορείτε να μας εξηγήσετε περισσότερο στο "Σκεφτείτε να χρησιμοποιήσετε το HTML5
cache εφαρμογή ";
Σχόλιο από Jitendra Vyas - 29η Δεκεμβρίου 2010 #
[...] Επόμενη φορά που το βίντεο παίζει, το ίδιο μοτίβο επαναλαμβάνεται. Τίποτα δεν φαίνεται να είναι cached. Με βάση την προηγούμενη έρευνα σχετικά με το iPhone 4 cache μεγέθους, θα είχα περιμένουν ακόμη την 3.8MB βίντεο για να μπαίνουν στην cache. Αυτό που περίμενα να [...]
Pingback από Όταν είναι Mobile Safari δεν Mobile Safari; «Cloud Τέσσερα - 12 του Ιαν 2011 #
[...] 2010, ο Χρήστης Yahoo ομάδα Interface έτρεξε εξονυχιστικούς ελέγχους σχετικά με τα όρια cache από τα πιο δημοφιλή-φορητές συσκευές. Διαπίστωσαν ότι η iPad λειτουργία iOS 3.2 είχε το χαμηλότερο όριο, μόνο προσωρινή αποθήκευση στοιχείων που ήταν [...]
Pingback από το Mobile Web πρακτικές ανάπτυξης Best - Ξεκινώντας Συμβουλές - HTML5, CSS3, jQuery, AJAX και περισσότερο συζητείται από kaidez - 8 Ιούν 2011 #