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

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

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


Sujet :

JavaScript

  1. #1
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 912
    Points
    79 912
    Par défaut Basket.js, mise en cache des scripts dans le localStorage pour plus de rapidité
    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.

  2. #2
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Points : 9 944
    Points
    9 944
    Par défaut
    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.
    One Web to rule them all

  3. #3
    Membre émérite
    Avatar de Kaamo
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    1 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 165
    Points : 2 778
    Points
    2 778
    Par défaut
    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

Discussions similaires

  1. mise en cache des result set de grosses requêtes
    Par gaboo_bl dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 16/01/2007, 13h02
  2. [EXCEL] Mise en évidence des doublons dans une colonne
    Par dacid dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 30/10/2006, 19h14
  3. Réponses: 2
    Dernier message: 11/07/2006, 17h08
  4. Empêcher la mise en cache des images
    Par oranoutan dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 15/02/2006, 11h49
  5. [CR9] lenteur mise en forme des couleurs dans expert diagram
    Par cdu dans le forum SAP Crystal Reports
    Réponses: 6
    Dernier message: 20/04/2005, 08h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo