IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Basket.js
Mise en cache des scripts dans le localStorage pour plus de rapidité

Le , par vermine

0PARTAGES

3  0 
Basket.js, mise en cache des scripts dans le localStorage pour plus de rapidité


Basket.js est un projet intéressant qui met en cache les fichiers JavaScript dans le localStorage pour les demandes futures plutôt que de compter sur les fonctionnalités de mise en cache intégrées des navigateurs. C'est une bonne idée car localStorage est pris en charge partout (même par IE8).

Selon les tests effectués par Google et Bing qui emploient cette technique, il s'avère que c'est assez rapide. Basket.js vous permet de profiter de la même technique dans vos sites et vos applications.

Il fonctionne en chargeant d'abord un petit fichier (Basket.js lui-même) et ensuite vérifie si vos autres scripts sont déjà mis en cache dans localStorage, sinon, ils les charge via XHR et les met en cache pour les appels suivants. Basket.js a une belle API qui vous permet de requérir des scripts et de les injecter dans la page à exécuter.

Site officiel.

Source : D'après un article sur BadAssJS.

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de SylvainPV
Rédacteur/Modérateur https://www.developpez.com
Le 23/01/2013 à 19:14
Je ne vois pas l'intérêt de réinventer la roue et de sortir le localStorage de son rôle initial, alors que les mécanismes de cache existent depuis bien plus longtemps et que plein d'autres outils côté serveur comme côté client sont greffés dessus.

Il n'y a aucun chiffre sur le réel gain de performances par rapport au cache classique, mais comme les ressources sont de toute façon déjà chargées localement, c'est probablement un gain ridicule en millisecondes.

Par ailleurs j'ai voulu utiliser le localStorage à plusieurs reprises dans des projets Web mobile, et dans tous les cas j'ai été confronté au problème de taille maximale (qui dépend des browsers, parfois à peine 2.5 MB...). Alors gâcher le peu qu'on a pour mettre en cache mes scripts, non merci.
1  0 
Avatar de Kaamo
Membre émérite https://www.developpez.com
Le 22/02/2013 à 9:46
Qui plus est, les perfs sont désastreuses avec localStorage quand il s'agit de stocker un nombre très importants de données. Plus la base est grosse, et plus c'est long à charger. Tout est chargé au du disque à la mémoire au chargement de la page, ce qui bloque le reste tant que ce n'est pas entièrement chargé.
Bref, c'est bien pour des scripts pas très volumineux à mettre en cache, à oublier quand il y en a beaucoup.

Source, William Chan qui travaille chez Google pour Chrome, Les créateurs de basket.js en parlent ici
1  0