Lorsque j'utilise Google Page Speed ou YSlow, bon nombre des optimisations suggérées découlent de mon utilisation de Google Adsense et de Google Analytics.
Par exemple, YSlow indique qu'il existe "9 scripts Javascript externes" - je n'en ai qu'un sur mon site, le reste provient donc évidemment d'Adsense ou de Google Analytics. Également sous "Réduire les recherches DNS", ces domaines sont répertoriés:
pagead2.googlesyndication.com
googleads.g.doubleclick.net
www.google-analytics.com
altfarm.mediaplex.com
img-cdn.mediaplex.com
eu.bid.invitemedia.com
ad.doubleclick.net s0.2mdn.net
pixel.invitemedia.com adadvisor.net
Est-ce que je peux faire quelque chose pour les réduire ou apporter d'autres améliorations à la vitesse?
Google Analytics peut être configuré de manière à charger de manière asynchrone , ce qui contribuera à améliorer la situation. Il ne semble pas qu'ils aient actuellement un script similaire pour AdSense.
Le chargement de Google Analytics de manière asynchrone est un bon début. Au-delà, combien de temps faut-il au chargement de votre page? Si cela vous prend moins de 2 secondes pour la page, vous ne voudrez peut-être pas passer plus de temps à l’optimiser.
Si vous craignez que le chargement ne soit plus lent en provenance d’autres sources, utilisez la commande http://www.webpagetest.org/ pour tester votre page par rapport à d’autres pays et à d’autres vitesses Internet. Cette page vous montrera également combien de temps chaque morceau de votre site met à charger.
N'oubliez pas qu'il n'est probablement pas utile de charger votre page à une "vitesse parfaite" car le coût en temps et en énergie est trop élevé. Si vous pouvez obtenir votre page en dessous de 2 secondes, selon Google, vous ferez partie des 20% de sites Web les plus populaires, ce qui est probablement suffisant. Sinon, regardez où vous pouvez augmenter la vitesse de votre page. Parfois, réparer un tas de petites choses fera de votre site assez rapidement.
Je pense que la meilleure façon de le dire est de choisir le fruit à portée de main et que Google Adsense n’est pas vraiment à portée de main. Analytics est et devrait être assez facile à corriger en le rendant asynchrone et vous devriez peut-être en rester là.
Si vous aimez le script Google Analytics asynchrone , consultez son optimisation Mathias Bynens ici . Évidemment, vous devez savoir si Google modifie le fragment de manière significative - mais pour le moment, ses optimisations génèrent un pour 40% d'accélération (pour moi) par rapport à la version du même script par Google.
En règle générale, bon nombre de ces scripts d'annonce sont conçus pour "contourner le cache" de manière à ce que le serveur soit touché chaque fois pour enregistrer la vue.
Malheureusement, le simple fait d'utiliser adsense signifie que vous vous êtes ouvert à un grand nombre de javascripts externes et que vous ne pouvez vraiment rien faire d'autre que de réduire le nombre de zones d'annonces (le TOS n'autorisant que 3 par page, de toute façon). ne pas exécuter adsense.
Vous pouvez essayer de regrouper vos annonces javascript dans Google dans votre propre code javascript hébergé pour chaque zone ayant effectué un document.write et générer le code requis. Je suis à peu près sûr que cela le chargerait une fois le corps chargé et signifierait donc que votre page se chargerait en premier.
Juste un point - il y a une nouvelle version du code de Google Analytics qui devrait améliorer sa vitesse de chargement - il pourrait donc être intéressant de passer à cela.
Si cela pose un problème, vous pouvez charger la page sans ces scripts, puis importer les scripts dans la page à l'aide de ajax, une fois la page entièrement chargée.
Par exemple, disons que vous avez une div vide sur votre page, comme ceci:
<div id="adsenseBanner"></div>
Et vous ajoutez ensuite le javascript comme ceci:
$(document).ready(function(){
$('#adsenseBanner').append('<script>alert("this");</script>')
});
J'ai ajouté une alerte JavaScript pour que vous puissiez voir que celle-ci est en cours d'exécution, mais vous devez bien sûr la remplacer par les scripts à charger.
De cette façon, vous pouvez être sûr que ces ressources externes ne ralentissent pas le chargement de votre page ... au prix du chargement d'un script supplémentaire.