Le CDN de SiteGround est officiellement en place

MISE À JOUR

Nous avons déjà lancé une version plus récente et encore plus rapide de notre service CDN –  
SiteGround CDN 2.0 ! 
Il augmente la vitesse de chargement du site web de 20 % en moyenne, allant jusqu’à 100 % pour les visiteurs situés dans certaines parties spécifiques du monde, en utilisant la puissance du routage anycast et des emplacements périphériques du réseau Google.

Nous sommes ravis d’annoncer que le CDN SiteGround est sorti de sa période bêta et est désormais officiellement disponible pour tous nos clients. SiteGround CDN est un service d’optimisation de la vitesse du site développé en interne spécifiquement pour nos clients, qui reçoivent du trafic de différents emplacements géographiques. Des milliers d’utilisateurs ont activé le CDN pendant sa phase bêta et l’utilisent déjà activement. Nous sommes heureux et reconnaissants pour leurs commentaires positifs et leurs contributions qui nous ont aidés à apporter les dernières touches à notre CDN avant sa sortie officielle aujourd’hui.

Quels sont les avantages du CDN SiteGround

Notre CDN SiteGround est une solution interne qui vous fournit un service marche/arrêt simple avec des valeurs par défaut intelligentes et des performances de serveur natives. Il est soigneusement développé pour intégrer tous les services connexes nécessaires pour obtenir les meilleurs résultats. Voici quelques-uns de ses principaux avantages :

Vitesse de chargement des sites web ultra-rapide

Notre CDN SiteGround assure la vitesse de chargement la plus rapide pour vos sites web à ses visiteurs de différentes parties du monde, grâce aux faits que :

  • Notre service CDN est entièrement hébergé dans le Cloud où le contenu est mis en cache et répliqué sur plusieurs emplacements sur 4 continents et ainsi desservi aux visiteurs de votre site web avec une latence minimale.
  • Notre CDN assure une vitesse de chargement ultra-rapide de vos sites web car il utilise un réseau privé ultra rapide entre nos emplacements CDN spécifiques au client et nos serveurs d’hébergement.

Aucune configuration et gestion facile

La configuration de votre CDN SiteGround et la gestion de ses fonctionnalités se font en quelques clics simples dans votre section Site Tools -> Vitesse -> CDN, grâce au fait que chaque couche de notre système est construite en interne. L’activation du CDN se fait en un seul clic sans qu’aucune reconfiguration de site supplémentaire ne soit nécessaire, quelle que soit la configuration de votre site. Peu importe si votre site est ouvert avec www, ou sans www, ou s’il utilise SSL ou non, le CDN fonctionne tout simplement.

Plans et fonctionnalités SiteGround CDN

SiteGround CDN comprend un plan gratuit et un plan premium, parmi lesquels vous pouvez choisir, en fonction des besoins de votre site web. Apprenez-en plus sur les deux régimes dans les sections suivantes :

Fonctionnalités du forfait CDN gratuit

Si vous choisissez d’utiliser le plan Free CDN, vous pouvez profiter des fonctionnalités suivantes, entièrement gratuites :

  • Activation CDN pour les noms de domaine principaux en un seul clic
  • Mise en cache du contenu statique de votre site web sur les serveurs CDN
  • Jusqu’à 10 Go de trafic CDN de bande passante par mois
  • Lancement immédiat de la purge de toutes les ressources mises en cache pour votre site web
  • Mode de développement pour vérifier rapidement les dernières modifications du site web en direct et s’assurer que tout est en place

Fonctionnalités du forfait Premium CDN

Le plan CDN Premium inclut toutes les fonctionnalités mentionnées ci-dessus dans le plan gratuit et en plus, il vous donne accès à la liste complète des fonctionnalités CDN premium :

  • Activation du CDN pour tous les domaines , y compris les sous-domaines et les domaines parqués
  • Mise en cache dynamique avancée , fournissant des copies en cache des pages générées dynamiquement de votre site par défaut
  • Trafic CDN illimité
  • TTL personnalisé (durée de vie) qui vous permet de choisir la durée de vie du cache souhaitée
  • Fonction “Toujours en ligne” qui continue de fournir les pages déjà mises en cache à partir de nos serveurs CDN, au cas où votre site commencerait à renvoyer des erreurs

Comment activer le CDN

Vous pouvez activer le CDN gratuit pour votre site web en un seul clic depuis la section Site Tools> Vitesse > CDN. Si vous souhaitez déverrouiller les fonctionnalités CDN premium, vous devez acheter le service CDN Premium depuis Espace client > Place de Marché > Services d’hébergement > Services supplémentaires , actuellement disponible avec 50 % de réduction pour les 12 premiers mois, à partir de 7,49 $/mois USD (prix sont susceptibles d’être modifiés).

Si vous souhaitez utiliser le CDN SiteGround, gardez à l’esprit que vous ne pouvez pas l’utiliser simultanément en combinaison avec un autre CDN.  Pour pouvoir utiliser le service CDN, vous devez également utiliser  notre DNS centralisé , c’est-à-dire que votre domaine doit pointer vers nos serveurs de noms :

  • ns1.siteground.net
  • ns2.siteground.net

Essayez par vous-même notre nouveau service CDN et n’hésitez pas à nous laisser un commentaire, au cas où vous auriez des commentaires ou des suggestions.

MISE À JOUR

Nous avons déjà lancé une version plus récente et encore plus rapide de notre service CDN –  
SiteGround CDN 2.0 ! 
Il augmente la vitesse de chargement du site web de 20 % en moyenne, allant jusqu’à 100 % pour les visiteurs situés dans certaines parties spécifiques du monde, en utilisant la puissance du routage anycast et des emplacements périphériques du réseau Google.

Nous sommes ravis d’annoncer que le CDN SiteGround est sorti de sa période bêta et est désormais officiellement disponible pour tous nos clients. SiteGround CDN est un service d’optimisation de la vitesse du site développé en interne spécifiquement pour nos clients, qui reçoivent du trafic de différents emplacements géographiques. Des milliers d’utilisateurs ont activé le CDN pendant sa phase bêta et l’utilisent déjà activement. Nous sommes heureux et reconnaissants pour leurs commentaires positifs et leurs contributions qui nous ont aidés à apporter les dernières touches à notre CDN avant sa sortie officielle aujourd’hui.

Quels sont les avantages du CDN SiteGround

Notre CDN SiteGround est une solution interne qui vous fournit un service marche/arrêt simple avec des valeurs par défaut intelligentes et des performances de serveur natives. Il est soigneusement développé pour intégrer tous les services connexes nécessaires pour obtenir les meilleurs résultats. Voici quelques-uns de ses principaux avantages :

Vitesse de chargement des sites web ultra-rapide

Notre CDN SiteGround assure la vitesse de chargement la plus rapide pour vos sites web à ses visiteurs de différentes parties du monde, grâce aux faits que :

  • Notre service CDN est entièrement hébergé dans le Cloud où le contenu est mis en cache et répliqué sur plusieurs emplacements sur 4 continents et ainsi desservi aux visiteurs de votre site web avec une latence minimale.
  • Notre CDN assure une vitesse de chargement ultra-rapide de vos sites web car il utilise un réseau privé ultra rapide entre nos emplacements CDN spécifiques au client et nos serveurs d’hébergement.

Aucune configuration et gestion facile

La configuration de votre CDN SiteGround et la gestion de ses fonctionnalités se font en quelques clics simples dans votre section Site Tools -> Vitesse -> CDN, grâce au fait que chaque couche de notre système est construite en interne. L’activation du CDN se fait en un seul clic sans qu’aucune reconfiguration de site supplémentaire ne soit nécessaire, quelle que soit la configuration de votre site. Peu importe si votre site est ouvert avec www, ou sans www, ou s’il utilise SSL ou non, le CDN fonctionne tout simplement.

Plans et fonctionnalités SiteGround CDN

SiteGround CDN comprend un plan gratuit et un plan premium, parmi lesquels vous pouvez choisir, en fonction des besoins de votre site web. Apprenez-en plus sur les deux régimes dans les sections suivantes :

Fonctionnalités du forfait CDN gratuit

Si vous choisissez d’utiliser le plan Free CDN, vous pouvez profiter des fonctionnalités suivantes, entièrement gratuites :

  • Activation CDN pour les noms de domaine principaux en un seul clic
  • Mise en cache du contenu statique de votre site web sur les serveurs CDN
  • Jusqu’à 10 Go de trafic CDN de bande passante par mois
  • Lancement immédiat de la purge de toutes les ressources mises en cache pour votre site web
  • Mode de développement pour vérifier rapidement les dernières modifications du site web en direct et s’assurer que tout est en place

Fonctionnalités du forfait Premium CDN

Le plan CDN Premium inclut toutes les fonctionnalités mentionnées ci-dessus dans le plan gratuit et en plus, il vous donne accès à la liste complète des fonctionnalités CDN premium :

  • Activation du CDN pour tous les domaines , y compris les sous-domaines et les domaines parqués
  • Mise en cache dynamique avancée , fournissant des copies en cache des pages générées dynamiquement de votre site par défaut
  • Trafic CDN illimité
  • TTL personnalisé (durée de vie) qui vous permet de choisir la durée de vie du cache souhaitée
  • Fonction “Toujours en ligne” qui continue de fournir les pages déjà mises en cache à partir de nos serveurs CDN, au cas où votre site commencerait à renvoyer des erreurs

Comment activer le CDN

Vous pouvez activer le CDN gratuit pour votre site web en un seul clic depuis la section Site Tools> Vitesse > CDN. Si vous souhaitez déverrouiller les fonctionnalités CDN premium, vous devez acheter le service CDN Premium depuis Espace client > Place de Marché > Services d’hébergement > Services supplémentaires , actuellement disponible avec 50 % de réduction pour les 12 premiers mois, à partir de 7,49 $/mois USD (prix sont susceptibles d’être modifiés).

Si vous souhaitez utiliser le CDN SiteGround, gardez à l’esprit que vous ne pouvez pas l’utiliser simultanément en combinaison avec un autre CDN.  Pour pouvoir utiliser le service CDN, vous devez également utiliser  notre DNS centralisé , c’est-à-dire que votre domaine doit pointer vers nos serveurs de noms :

  • ns1.siteground.net
  • ns2.siteground.net

Essayez par vous-même notre nouveau service CDN et n’hésitez pas à nous laisser un commentaire, au cas où vous auriez des commentaires ou des suggestions.

DNS centralisé pour un hébergement plus rapide, plus sûr et plus simple

En repensant à notre promesse il y a 2 ans de lancer une série d’améliorations de service après le passage complet aux Site Tools, nous continuons à livrer ! Après le lancement du PHP ultrarapide , la nouvelle configuration de MySQL sur le partage et le cloud, les nouvelles fonctionnalités de SG Optimizer , et bien plus encore, nous avons également retravaillé notre service DNS pour le rendre plus rapide, plus sûr, plus flexible et plus facile à utiliser que jamais. Lisez ce que nous avons fait et comment cela affecte vos sites web hébergés sur notre plateforme. 

Qu’y a-t-il sous le capot de notre nouveau service DNS 

Faisons d’abord un petit rappel, le DNS (système de noms de domaine) est ce qui permet à un nom de domaine d’ouvrir un site web spécifique. Ce système indique sur lequel de tous les serveurs de tout Internet votre site web est hébergé. Habituellement, un ensemble spécifique de 2 serveurs de noms et 2 adresses IP correspondent à chaque serveur et ils doivent être ajoutés dans le panneau de gestion de votre domaine pour que le système fonctionne. Chaque serveur dispose également d’un service DNS qui traite les requêtes DNS et affiche le site web approprié lorsqu’un visiteur tape votre domaine dans le navigateur. 

Avec notre nouvelle configuration DNS centralisée, nous n’avons plus besoin de service DNS installé sur chacun de nos serveurs de production qui hébergent votre site web. Nous sommes en mesure de déplacer tous nos services DNS vers un cluster complètement séparé de plusieurs serveurs. Ce cluster est dédié au service DNS uniquement et est géographiquement dispersé dans le monde entier grâce à la technologie de routage réseau Anycast super cool. Le DNS centralisé nous permet également d’avoir une seule paire de serveurs de noms et d’adresses IP pour tous les serveurs gérés par SiteGround, qui sont les suivants :

  • ns1.siteground.net
  • ns2.siteground.net

Quels sont les avantages de notre nouveau service DNS

Résolution de domaine plus rapide, chargement de site web plus rapide

Lorsqu’un visiteur recherche le domaine de votre site web, la première chose que fait le navigateur est d’effectuer une recherche DNS pour voir sur quelle adresse IP le domaine se résout et se connecte au serveur avec cette adresse IP. Avec la configuration DNS précédente, les requêtes de recherche provenant d’un continent différent de celui de votre serveur étaient traitées un peu plus lentement en raison de la distance physique entre le visiteur et le serveur résolvant votre domaine. Désormais, avec le DNS centralisé qui fonctionne sur cinq emplacements géographiques différents et plusieurs instances, la résolution est gérée par le nœud le plus proche, ce qui évite les retards de mise en réseau et améliore la vitesse de chargement de votre site web.

Redondance améliorée 

Comme la nouvelle configuration DNS repose sur plusieurs machines dispersées géographiquement, elle est extrêmement résistante. Par exemple, si l’un des serveurs DNS tombe en panne, les requêtes DNS seront traitées par le deuxième point le plus proche, qui est opérationnel. Cette configuration protège également contre les attaques DDoS, car s’il y a une grande quantité de trafic malveillant, il sera réparti entre plusieurs machines DNS et il devient beaucoup plus difficile pour une telle attaque de réussir. En plus de cela, le service DNS est super évolutif et de nouvelles machines peuvent être ajoutées facilement chaque fois qu’il y a un besoin de plus de ressources.

Si vous utilisez votre domaine simultanément pour votre hébergement sur SiteGround et d’autres services également (par exemple, vos enregistrements MX pointent vers Gmail), le fait d’héberger le service DNS à un emplacement différent de votre site web présente un avantage supplémentaire. En cas de panne de votre serveur d’hébergement, votre DNS fonctionnera toujours et vos services externes se résoudront toujours sans être affectés. 

Migrations transparentes entre les serveurs 

Cela fait partie de notre travail de déplacer les données – que nous transférions votre compte d’un ancien matériel vers un plus récent, de la configuration du serveur cPanel vers des machines avec la configuration des outils de site, ou d’un ancien centre de données vers l’infrastructure Google Cloud, les migrations sont une chose qui ne cessera de se produire. Chaque fois que nous migrons des serveurs, l’un des plus grands défis consiste à gérer les zones DNS. Le nouveau serveur est livré avec de nouveaux serveurs de noms et une fois les sites web transférés, les domaines doivent être pointés pour utiliser les nouveaux serveurs de noms. Nous les avons mis à jour automatiquement pour tous les domaines gérés via nos panneaux de contrôle, mais les domaines externes nécessitaient une modification manuelle par les webmasters. Dans les deux cas, il y aurait propagation DNS avec un impact potentiel sur les temps d’arrêt. Avec le nouveau DNS centralisé, il sera beaucoup plus facile de migrer et d’effectuer des mises à niveau de serveur à l’avenir. Dans la plupart des cas, ces migrations n’impliqueraient aucun type de modification des paramètres DNS, évitant ainsi tout problème causé par la propagation. 

Plus de commodité et de facilité d’utilisation pour vous

Avec le DNS décentralisé, les personnes qui gèrent plusieurs sites sur différents serveurs doivent suivre différents ensembles de serveurs de noms, ce qui peut être gênant. Le nouveau DNS centralisé simplifie les multiples processus de gestion de sites web pour nos clients, car tous les domaines de tous les sites hébergés sur notre plate-forme, quel que soit leur compte d’hébergement ou leur serveur, peuvent désormais utiliser la même paire de serveurs de noms.

Quand le nouveau service DNS sera-t-il disponible ?

Tous les nouveaux sites web créés sur notre plateforme utilisent déjà le nouveau service DNS. Pour les sites web plus anciens, nous entamons maintenant une transition progressive vers le nouveau DNS centralisé. Nous mettrons automatiquement à jour les serveurs de noms pour tous les domaines enregistrés chez nous. Pour les domaines externes utilisés avec notre système, nous informerons nos clients par e-mail, confirmant quand il sera sûr de mettre à jour leurs paramètres DNS vers les nouveaux. L’ancien système DNS continuera d’être pris en charge pendant plusieurs mois, jusqu’à ce que la migration vers le nouveau soit entièrement terminée. 

En repensant à notre promesse il y a 2 ans de lancer une série d’améliorations de service après le passage complet aux Site Tools, nous continuons à livrer ! Après le lancement du PHP ultrarapide , la nouvelle configuration de MySQL sur le partage et le cloud, les nouvelles fonctionnalités de SG Optimizer , et bien plus encore, nous avons également retravaillé notre service DNS pour le rendre plus rapide, plus sûr, plus flexible et plus facile à utiliser que jamais. Lisez ce que nous avons fait et comment cela affecte vos sites web hébergés sur notre plateforme. 

Qu’y a-t-il sous le capot de notre nouveau service DNS 

Faisons d’abord un petit rappel, le DNS (système de noms de domaine) est ce qui permet à un nom de domaine d’ouvrir un site web spécifique. Ce système indique sur lequel de tous les serveurs de tout Internet votre site web est hébergé. Habituellement, un ensemble spécifique de 2 serveurs de noms et 2 adresses IP correspondent à chaque serveur et ils doivent être ajoutés dans le panneau de gestion de votre domaine pour que le système fonctionne. Chaque serveur dispose également d’un service DNS qui traite les requêtes DNS et affiche le site web approprié lorsqu’un visiteur tape votre domaine dans le navigateur. 

Avec notre nouvelle configuration DNS centralisée, nous n’avons plus besoin de service DNS installé sur chacun de nos serveurs de production qui hébergent votre site web. Nous sommes en mesure de déplacer tous nos services DNS vers un cluster complètement séparé de plusieurs serveurs. Ce cluster est dédié au service DNS uniquement et est géographiquement dispersé dans le monde entier grâce à la technologie de routage réseau Anycast super cool. Le DNS centralisé nous permet également d’avoir une seule paire de serveurs de noms et d’adresses IP pour tous les serveurs gérés par SiteGround, qui sont les suivants :

  • ns1.siteground.net
  • ns2.siteground.net

Quels sont les avantages de notre nouveau service DNS

Résolution de domaine plus rapide, chargement de site web plus rapide

Lorsqu’un visiteur recherche le domaine de votre site web, la première chose que fait le navigateur est d’effectuer une recherche DNS pour voir sur quelle adresse IP le domaine se résout et se connecte au serveur avec cette adresse IP. Avec la configuration DNS précédente, les requêtes de recherche provenant d’un continent différent de celui de votre serveur étaient traitées un peu plus lentement en raison de la distance physique entre le visiteur et le serveur résolvant votre domaine. Désormais, avec le DNS centralisé qui fonctionne sur cinq emplacements géographiques différents et plusieurs instances, la résolution est gérée par le nœud le plus proche, ce qui évite les retards de mise en réseau et améliore la vitesse de chargement de votre site web.

Redondance améliorée 

Comme la nouvelle configuration DNS repose sur plusieurs machines dispersées géographiquement, elle est extrêmement résistante. Par exemple, si l’un des serveurs DNS tombe en panne, les requêtes DNS seront traitées par le deuxième point le plus proche, qui est opérationnel. Cette configuration protège également contre les attaques DDoS, car s’il y a une grande quantité de trafic malveillant, il sera réparti entre plusieurs machines DNS et il devient beaucoup plus difficile pour une telle attaque de réussir. En plus de cela, le service DNS est super évolutif et de nouvelles machines peuvent être ajoutées facilement chaque fois qu’il y a un besoin de plus de ressources.

Si vous utilisez votre domaine simultanément pour votre hébergement sur SiteGround et d’autres services également (par exemple, vos enregistrements MX pointent vers Gmail), le fait d’héberger le service DNS à un emplacement différent de votre site web présente un avantage supplémentaire. En cas de panne de votre serveur d’hébergement, votre DNS fonctionnera toujours et vos services externes se résoudront toujours sans être affectés. 

Migrations transparentes entre les serveurs 

Cela fait partie de notre travail de déplacer les données – que nous transférions votre compte d’un ancien matériel vers un plus récent, de la configuration du serveur cPanel vers des machines avec la configuration des outils de site, ou d’un ancien centre de données vers l’infrastructure Google Cloud, les migrations sont une chose qui ne cessera de se produire. Chaque fois que nous migrons des serveurs, l’un des plus grands défis consiste à gérer les zones DNS. Le nouveau serveur est livré avec de nouveaux serveurs de noms et une fois les sites web transférés, les domaines doivent être pointés pour utiliser les nouveaux serveurs de noms. Nous les avons mis à jour automatiquement pour tous les domaines gérés via nos panneaux de contrôle, mais les domaines externes nécessitaient une modification manuelle par les webmasters. Dans les deux cas, il y aurait propagation DNS avec un impact potentiel sur les temps d’arrêt. Avec le nouveau DNS centralisé, il sera beaucoup plus facile de migrer et d’effectuer des mises à niveau de serveur à l’avenir. Dans la plupart des cas, ces migrations n’impliqueraient aucun type de modification des paramètres DNS, évitant ainsi tout problème causé par la propagation. 

Plus de commodité et de facilité d’utilisation pour vous

Avec le DNS décentralisé, les personnes qui gèrent plusieurs sites sur différents serveurs doivent suivre différents ensembles de serveurs de noms, ce qui peut être gênant. Le nouveau DNS centralisé simplifie les multiples processus de gestion de sites web pour nos clients, car tous les domaines de tous les sites hébergés sur notre plate-forme, quel que soit leur compte d’hébergement ou leur serveur, peuvent désormais utiliser la même paire de serveurs de noms.

Quand le nouveau service DNS sera-t-il disponible ?

Tous les nouveaux sites web créés sur notre plateforme utilisent déjà le nouveau service DNS. Pour les sites web plus anciens, nous entamons maintenant une transition progressive vers le nouveau DNS centralisé. Nous mettrons automatiquement à jour les serveurs de noms pour tous les domaines enregistrés chez nous. Pour les domaines externes utilisés avec notre système, nous informerons nos clients par e-mail, confirmant quand il sera sûr de mettre à jour leurs paramètres DNS vers les nouveaux. L’ancien système DNS continuera d’être pris en charge pendant plusieurs mois, jusqu’à ce que la migration vers le nouveau soit entièrement terminée. 

SiteGround Security – notre nouveau plugin WordPress incontournable

La sécurité des sites web de nos clients a toujours été une partie extrêmement importante de nos services d’hébergement web. Certains des esprits techniques les plus brillants de notre équipe se sont continuellement consacrés à l’élaboration de solutions de sécurité uniques et maintiennent le niveau de sécurité de notre infrastructure d’hébergement à un niveau inégalé. Nous avons été un pionnier de l’industrie dans le développement de protections au niveau du serveur telles que l’isolation des comptes, la surveillance de la santé du serveur, la prévention du trafic anti-bot, etc. Nous savons également qu’en plus des solutions au niveau du serveur, la sécurité de chaque site web doit être renforcée sur demande. C’est pourquoi nous fournissons des services tels que les mises à jour automatiques, les sauvegardes et la protection WAF à nos clients. 

Nous sommes heureux de vous présenter un nouvel outil qui peut grandement améliorer la sécurité de tout site WordPress – notre tout nouveau plugin SiteGround Security.  Le plugin SiteGround Security est disponible en téléchargement gratuit pour tout le monde et il est préinstallé avec toutes les nouvelles installations WordPress hébergées sur SiteGround et offre à ses utilisateurs un moyen simple de protéger leur site WordPress contre les attaques malveillantes. Il comprend également des outils précieux qui peuvent aider un propriétaire de site web à réagir dans le cas où il soupçonnerait que son site pourrait avoir été compromis. Lisez ci-dessous pour savoir comment rendre votre site plus sûr avec notre nouveau plugin.

Protégez votre WordPress contre les attaques courantes

Dans la section Sécurité du site de notre plugin, vous pourrez facilement activer plusieurs règles qui renforceront la sécurité de votre site Web et empêcheront les logiciels malveillants courants, la force brute et d’autres problèmes de sécurité. Certaines de ces règles, comme le masquage de votre version de WordPress ou la suppression de votre fichier readme.txt par défaut, rendront plus difficile pour les “crawlers” de détecter que vous utilisez WordPress. Ainsi, votre site Web ne sera pas facilement identifié comme une victime potentielle d’une attaque lorsqu’une vulnérabilité apparaît. D’autres règles de cette section ajouteront une protection XSS avancée et empêcheront vos dossiers système d’être infectés avec des fichiers malveillants. 

Renforcez la sécurité de votre connexion 

Dans la section Sécurité de connexion de notre plugin, vous pourrez appliquer plusieurs méthodes qui protègent votre connexion contre tout accès non autorisé. L’une des méthodes les plus recommandées pour protéger votre connexion est l’authentification à 2 facteurs et avec le plugin SiteGround Security, vous pouvez facilement l’activer pour votre zone administrative WordPress. Certaines mesures de protection simples mais très efficaces, telles que la modification de votre URL de connexion et l’interdiction d’utiliser “admin” comme nom d’utilisateur, peuvent également être facilement définies ici. Vous pouvez également limiter le nombre de tentatives de connexion depuis une seule et même IP, ce qui bloquera les attaquants tentant de deviner votre mot de passe par force brute. Et si vous souhaitez aller encore plus loin dans la protection de votre connexion WordPress, deux autres options avancées sont disponibles. Vous pouvez spécifier les adresses IP à partir desquelles votre page de connexion est accessible.

[subscribe_cta]

Surveillez le journal d’activité de votre zone d’administration

L’une des meilleures fonctionnalités du plugin est le journal d’activité détaillé. Il vous permet d’identifier des choses comme les mauvaises adresses IP qui tentent d’accéder à votre site Web ainsi que les utilisateurs enregistrés qui effectuent des tâches qu’ils ne sont pas censés faire. Par exemple, vous pouvez bloquer en un clic les adresses IP qui ont de nombreuses connexions incorrectes et en même temps découvrir quel utilisateur a supprimé ce message qui vous manque. Pour la version initiale, nous conservons le journal 16 jours en arrière, il vaut donc la peine d’y jeter un coup d’œil de temps en temps, surtout si vous avez un site occupé et un nombre d’utilisateurs ayant la capacité de modifier le contenu.

Réagissez si vous pensez que votre site a pu être compromis.

Dans la section Post-hack du plugin, vous trouverez un ensemble d’actions utiles si vous pensez que la sécurité de votre site a été compromise. Ici, vous pourrez déconnecter automatiquement tous les utilisateurs et les forcer à changer de mot de passe. De cette façon, si un utilisateur a été compromis, vous pouvez arrêter l’accès malveillant via son compte. Vous pourrez également réinstaller tous vos plugins actuels. Cela garantira que vous utilisez une copie propre de chaque plugin au lieu d’un éventuel compromis. Veuillez garder à l’esprit que bien que ces actions post-piratage soient pratiques, elles ne remplacent pas un nettoyage approfondi du site qui pourrait devoir être effectué par un expert en sécurité WordPress, s’il y a des signes que votre site Web pourrait avoir été piraté.

Comment obtenir le plugin de sécurité SiteGround ?

Le plugin SiteGround Security est disponible comme tout autre plugin WordPress gratuit. Vous pouvez le trouver dans le référentiel officiel des plugins WordPress ( https://wordpress.org/plugins/sg-security/ ) ou l’installer directement via votre espace d’administration WordPress. Si vous hébergez votre prochain site Web WordPress sur SiteGround, l’utilisation du plug-in est prête à l’emploi, car toutes les nouvelles installations WordPress sont désormais livrées avec le plug-in SiteGround Security préinstallé avec certaines de ses fonctionnalités activées par défaut.

Il s’agit du premier plugin que nous publions dont toutes les fonctionnalités peuvent être utilisées par n’importe qui, même les personnes qui ne sont pas hébergées par SiteGround. Cela dit, nous n’avons pas effectué de tests excessifs sur toutes les autres entreprises, des problèmes causés par leur configuration particulière peuvent survenir. Si tel est le cas, n’hésitez pas à publier un fil de discussion dans le forum du plugin dans le référentiel WordPress, nous ferons de notre mieux pour nous assurer qu’il fonctionne parfaitement sur toutes les plateformes.

La sécurité des sites web de nos clients a toujours été une partie extrêmement importante de nos services d’hébergement web. Certains des esprits techniques les plus brillants de notre équipe se sont continuellement consacrés à l’élaboration de solutions de sécurité uniques et maintiennent le niveau de sécurité de notre infrastructure d’hébergement à un niveau inégalé. Nous avons été un pionnier de l’industrie dans le développement de protections au niveau du serveur telles que l’isolation des comptes, la surveillance de la santé du serveur, la prévention du trafic anti-bot, etc. Nous savons également qu’en plus des solutions au niveau du serveur, la sécurité de chaque site web doit être renforcée sur demande. C’est pourquoi nous fournissons des services tels que les mises à jour automatiques, les sauvegardes et la protection WAF à nos clients. 

Nous sommes heureux de vous présenter un nouvel outil qui peut grandement améliorer la sécurité de tout site WordPress – notre tout nouveau plugin SiteGround Security.  Le plugin SiteGround Security est disponible en téléchargement gratuit pour tout le monde et il est préinstallé avec toutes les nouvelles installations WordPress hébergées sur SiteGround et offre à ses utilisateurs un moyen simple de protéger leur site WordPress contre les attaques malveillantes. Il comprend également des outils précieux qui peuvent aider un propriétaire de site web à réagir dans le cas où il soupçonnerait que son site pourrait avoir été compromis. Lisez ci-dessous pour savoir comment rendre votre site plus sûr avec notre nouveau plugin.

Protégez votre WordPress contre les attaques courantes

Dans la section Sécurité du site de notre plugin, vous pourrez facilement activer plusieurs règles qui renforceront la sécurité de votre site Web et empêcheront les logiciels malveillants courants, la force brute et d’autres problèmes de sécurité. Certaines de ces règles, comme le masquage de votre version de WordPress ou la suppression de votre fichier readme.txt par défaut, rendront plus difficile pour les “crawlers” de détecter que vous utilisez WordPress. Ainsi, votre site Web ne sera pas facilement identifié comme une victime potentielle d’une attaque lorsqu’une vulnérabilité apparaît. D’autres règles de cette section ajouteront une protection XSS avancée et empêcheront vos dossiers système d’être infectés avec des fichiers malveillants. 

Renforcez la sécurité de votre connexion 

Dans la section Sécurité de connexion de notre plugin, vous pourrez appliquer plusieurs méthodes qui protègent votre connexion contre tout accès non autorisé. L’une des méthodes les plus recommandées pour protéger votre connexion est l’authentification à 2 facteurs et avec le plugin SiteGround Security, vous pouvez facilement l’activer pour votre zone administrative WordPress. Certaines mesures de protection simples mais très efficaces, telles que la modification de votre URL de connexion et l’interdiction d’utiliser “admin” comme nom d’utilisateur, peuvent également être facilement définies ici. Vous pouvez également limiter le nombre de tentatives de connexion depuis une seule et même IP, ce qui bloquera les attaquants tentant de deviner votre mot de passe par force brute. Et si vous souhaitez aller encore plus loin dans la protection de votre connexion WordPress, deux autres options avancées sont disponibles. Vous pouvez spécifier les adresses IP à partir desquelles votre page de connexion est accessible.

[subscribe_cta]

Surveillez le journal d’activité de votre zone d’administration

L’une des meilleures fonctionnalités du plugin est le journal d’activité détaillé. Il vous permet d’identifier des choses comme les mauvaises adresses IP qui tentent d’accéder à votre site Web ainsi que les utilisateurs enregistrés qui effectuent des tâches qu’ils ne sont pas censés faire. Par exemple, vous pouvez bloquer en un clic les adresses IP qui ont de nombreuses connexions incorrectes et en même temps découvrir quel utilisateur a supprimé ce message qui vous manque. Pour la version initiale, nous conservons le journal 16 jours en arrière, il vaut donc la peine d’y jeter un coup d’œil de temps en temps, surtout si vous avez un site occupé et un nombre d’utilisateurs ayant la capacité de modifier le contenu.

Réagissez si vous pensez que votre site a pu être compromis.

Dans la section Post-hack du plugin, vous trouverez un ensemble d’actions utiles si vous pensez que la sécurité de votre site a été compromise. Ici, vous pourrez déconnecter automatiquement tous les utilisateurs et les forcer à changer de mot de passe. De cette façon, si un utilisateur a été compromis, vous pouvez arrêter l’accès malveillant via son compte. Vous pourrez également réinstaller tous vos plugins actuels. Cela garantira que vous utilisez une copie propre de chaque plugin au lieu d’un éventuel compromis. Veuillez garder à l’esprit que bien que ces actions post-piratage soient pratiques, elles ne remplacent pas un nettoyage approfondi du site qui pourrait devoir être effectué par un expert en sécurité WordPress, s’il y a des signes que votre site Web pourrait avoir été piraté.

Comment obtenir le plugin de sécurité SiteGround ?

Le plugin SiteGround Security est disponible comme tout autre plugin WordPress gratuit. Vous pouvez le trouver dans le référentiel officiel des plugins WordPress ( https://wordpress.org/plugins/sg-security/ ) ou l’installer directement via votre espace d’administration WordPress. Si vous hébergez votre prochain site Web WordPress sur SiteGround, l’utilisation du plug-in est prête à l’emploi, car toutes les nouvelles installations WordPress sont désormais livrées avec le plug-in SiteGround Security préinstallé avec certaines de ses fonctionnalités activées par défaut.

Il s’agit du premier plugin que nous publions dont toutes les fonctionnalités peuvent être utilisées par n’importe qui, même les personnes qui ne sont pas hébergées par SiteGround. Cela dit, nous n’avons pas effectué de tests excessifs sur toutes les autres entreprises, des problèmes causés par leur configuration particulière peuvent survenir. Si tel est le cas, n’hésitez pas à publier un fil de discussion dans le forum du plugin dans le référentiel WordPress, nous ferons de notre mieux pour nous assurer qu’il fonctionne parfaitement sur toutes les plateformes.

Sauvegardes distribuées géographiquement pour une meilleure protection des données

Nous sommes ravis d’annoncer le déploiement d’un système de sauvegardes géographiquement distribuées, qui minimise le risque de perte de données et permet une récupération rapide des données même en cas d’incident grave pouvant affecter l’ensemble d’un centre de données. 

Les sauvegardes sont stockées dans un centre de données physique différent de celui hébergeant le compte réel

Depuis le début du mois, nous avons commencé à sauvegarder les comptes dans un centre de données différent de celui hébergeant le compte réel comme suit : 

  • Les serveurs de l’Iowa, aux États-Unis, sont sauvegardés sur des machines en Virginie, aux États-Unis
  • Les serveurs de Virginie, aux États-Unis, sont sauvegardés sur des machines situées dans l’Ohio, aux États-Unis
  • Californie, États-Unis, les serveurs sont sauvegardés sur des machines en Oregon, États-Unis
  • Texas, États-Unis, les serveurs sont sauvegardés sur des machines en Caroline du Sud, États-Unis
  • Les serveurs de Londres, au Royaume-Uni, sont sauvegardés à Eemshaven, aux Pays-Bas
  • Les serveurs de Francfort, DE sont sauvegardés à Eemshaven, NL
  • Madrid, les serveurs ES sont sauvegardés à Eemshaven, NL
  • Les serveurs d’Eemshaven, NL sont sauvegardés à Francfort, DE 
  • Les serveurs de Sydney, AU sont sauvegardés à Singapour, SG

Ce service n’est pas disponible pour les comptes hébergés à Singapour pour le moment. Ces comptes sont sauvegardés sur différents serveurs au sein de l’installation de Singapour.

Protection des données renforcée

Le stockage et la sécurité des données sont un élément clé de notre service et il existe de multiples facteurs de risque et menaces que nous gardons à l’esprit lorsque nous proposons des solutions de sécurité des données. Les plus courantes sont les erreurs humaines, les pannes matérielles et les piratages. Pour ces occasions, nous nous appuyons sur nos sauvegardes quotidiennes stockées sur différents serveurs indépendamment du compte en direct. Mais ensuite, il existe des risques moins probables, mais plus dommageables, tels qu’un incendie, une panne de courant ou une catastrophe naturelle, qui peuvent entraîner la fermeture de l’ensemble d’un centre de données. L’hébergement des sauvegardes dans un emplacement différent signifie que nous améliorons les chances de sauvegarder vos données et de les remettre en ligne même en cas d’incident aussi grave.

[subscribe_cta]

Restauration de service plus rapide

Imaginez maintenant que votre site web se déconnecte en raison d’une panne de courant massive et que l’ETA est inconnue, ce qui signifie le plus souvent des heures d’indisponibilité. Ou, un ouragan a complètement détruit l’installation et tous les serveurs sont perdus au-delà de la récupération. C’était une menace très réelle que nous avons connue avec l’ouragan Katrina en 2005 et c’est un risque croissant dans certaines régions compte tenu du changement climatique et du nombre croissant de catastrophes naturelles dans le monde entier. Ou peut-être qu’un incendie brûle le centre de données et que de nombreux serveurs, sinon tous, sont touchés. Celui-ci est arrivé assez récemment à un centre de données tiers en France.

Grâce à notre nouveau système, vous êtes désormais couvert puisque nous avons sauvegardé vos données en toute sécurité il y a moins de 24 heures dans un centre de données différent. En cas d’incident, nous serions en mesure de remettre votre site web en ligne dans le nouvel emplacement pleinement opérationnel.

Ainsi, les sauvegardes distribuées non seulement sauvegardent vos données, mais nous permettent de restaurer le service dans le nouveau DC beaucoup plus rapidement que n’importe quel ETA optimiste ne le prévoyait pour la restauration dans le DC d’origine.

La stratégie de sauvegarde distribuée est quelque chose que nous envisageons depuis longtemps. Cependant, cela est devenu pratiquement possible une fois que nous avons commencé à utiliser l’infrastructure Google Cloud. L’utilisation d’un seul et même fournisseur pour tous nos emplacements géographiques, avec une interdépendance ultra rapide entre ses différents centres de données et un vaste réseau d’installations à travers le monde, nous a permis de distribuer les données à travers les régions, les pays et les continents d’une manière qui était pas possible avant.

Nous devons reconnaître le fait qu’avant de passer à l’infrastructure Google Cloud, cette stratégie de sauvegardes distribuées n’était pas possible de manière aussi sophistiquée. Google Cloud nous a donné un accès facile à toutes leurs installations mondiales, y compris la capacité de mise en réseau, ce qui a généré diverses nouvelles possibilités pour distribuer les données entre les régions, les pays et les continents.

Même niveau de confidentialité des données

Notre politique de confidentialité et notre DPA continuent de s’appliquer à la lumière de nos nouvelles sauvegardes réparties géographiquement. Les données de nos clients seront protégées de la même manière qu’avant, comme promis, et dans le cadre de notre DPA.

Bien que nous ayons bon espoir qu’aucune force naturelle n’affectera les centres de données, notre équipe préfère se préparer au pire et rassurer nos clients pour leurs sites web.

SuperCacher et des sites jusqu’à 5 fois plus rapides pour tous !

Nous avons annoncé notre SuperCacher en 2012 – la fonctionnalité qui permettait à nos clients d’activer le cache statique, le cache dynamique et Memcached pour leurs comptes. Depuis, nous avons considérablement amélioré la technologie et affiné son comportement et nous sommes convaincus qu’il s’agit de l’un des outils de vitesse les plus puissants que nous ayons créés pour nos clients. Actuellement, la partie la plus massivement utilisée de notre SuperCacher est le cache statique ( livraison directe NGINX), car il est activé par défaut sur tous nos forfaits. Aujourd’hui, nous franchissons une étape majeure qui se traduira par une adoption beaucoup plus massive des deux autres couches de SuperCacher et augmentera considérablement la vitesse des sites que nous hébergeons. Nous rendons désormais Dynamic Cache et Memcached disponibles sans frais supplémentaires sur nos plans de démarrage également. De plus, le cache dynamique sera activé sur nos serveurs par défaut. 

Mise en cache dynamique activée pour tout le monde !

Chargement des pages entre 50 % et 500 % plus rapide

Pour récapituler brièvement, la mise en cache dynamique est une technologie qui met en cache la sortie HTML de votre code PHP. Le langage PHP est utilisé pour que le contenu de ce même HTML soit modifié dynamiquement et selon un ensemble de conditions prédéfinies par le créateur du site Web. Lors de l’utilisation du cache, la prochaine fois qu’une page est demandée, le HTML pur sera affiché à partir du cache qui se trouve dans la RAM du serveur, au lieu de gaspiller des ressources CPU et E/S pour lire le fichier PHP à partir du disque. Grâce à ce mécanisme, la page Web se charge beaucoup plus rapidement. Et par “plus rapide”, nous entendons entre 50 et 500 % plus rapide sur la base de nos statistiques internes pour les sites qui l’ont activé. Plus l’impact que nous voyons sur les sites les plus lourds est important – ceux avec plus de produits et de requêtes. Une fois que vous activez le cache, les pages commencent à se charger aussi vite que votre Internet le permet, littéralement.

WordPress mis en cache prêt à l’emploi, d’autres applications peuvent également être configurées

Jusqu’à présent, le cache dynamique était disponible sur nos plans GrowBig et supérieurs et devait être activé par les utilisateurs via notre plugin WordPress SiteGround Optimizer . Maintenant, nous rendons le cache disponible sur tous les plans et nous l’activons par défaut sur tous les serveurs. Ainsi, tous les sites WordPress hébergés sur notre plateforme seront mis en cache prêts à l’emploi. De plus, nos clients pourront configurer d’autres applications pour profiter également du cache. Pour obtenir des instructions sur l’utilisation du cache dynamique avec certaines des autres applications populaires, vous pouvez vous référer aux articles de notre base de connaissances SuperCacher .

Options de gestion dynamique du cache 

Comme déjà mentionné, notre option de cache dynamique fonctionnera désormais avec les installations WordPress prêtes à l’emploi. Cependant, les utilisateurs de WordPress obtiendront les meilleurs résultats grâce aux contrôles de cache dynamique de notre plugin SiteGround Optimizer . Le plugin agit comme un connecteur supplémentaire entre notre cache dynamique et l’application WordPress. Par exemple, SiteGround Optimizer indique à votre serveur de nettoyer automatiquement le cache à chaque modification de contenu pertinente et vous offre une option simple pour exclure complètement les URL de la mise en cache. Vous pouvez également désactiver la mise en cache via le plugin. 

Si vous utilisez une autre application, vous devrez peut-être autoriser la mise en cache à partir de son “backend” afin de commencer à l’utiliser, même si nous l’activons au niveau du serveur.

En ce qui concerne l’option Flush, si un changement sur votre site Web n’est pas affiché immédiatement, étant donné que la version en cache est toujours servie, vous pouvez toujours utiliser le bouton Flush dans vos outils de site. 

Memcached disponible sur tous nos plans

Memcached est probablement le système de mise en cache mémoire le plus populaire utilisé par des milliers de sites basés sur des bases de données, ce qui accélère ces sites web en mettant en cache les résultats des requêtes de base de données dans la RAM du serveur. Ainsi, si le résultat de la même requête est à nouveau nécessaire, il sera instantanément extrait de la RAM, plutôt que d’être généré à nouveau à partir de la base de données, ce qui est généralement un processus plus lent et nécessite plus de puissance de calcul.

Memcached est désormais également disponible sur les plans de démarrage avec les outils du site. Vous pouvez l’activer depuis Site Tools > Vitesse > Mise en cache, recherchez l’onglet Memcached. Cependant, gardez à l’esprit que vous devez également configurer votre application pour utiliser ce cache, une fois que vous l’avez activé depuis notre interface. Pour WordPress, cela ne prend qu’un clic dans notre plugin SiteGround Optimizer > section de contrôle Memcached , pour certaines des autres applications populaires, vous pouvez vous référer à nos articles de la base de connaissances SuperCacher . 

Les modifications décrites n’affecteront que nos serveurs basés sur les outils du site.

Nous avons annoncé notre SuperCacher en 2012 – la fonctionnalité qui permettait à nos clients d’activer le cache statique, le cache dynamique et Memcached pour leurs comptes. Depuis, nous avons considérablement amélioré la technologie et affiné son comportement et nous sommes convaincus qu’il s’agit de l’un des outils de vitesse les plus puissants que nous ayons créés pour nos clients. Actuellement, la partie la plus massivement utilisée de notre SuperCacher est le cache statique ( livraison directe NGINX), car il est activé par défaut sur tous nos forfaits. Aujourd’hui, nous franchissons une étape majeure qui se traduira par une adoption beaucoup plus massive des deux autres couches de SuperCacher et augmentera considérablement la vitesse des sites que nous hébergeons. Nous rendons désormais Dynamic Cache et Memcached disponibles sans frais supplémentaires sur nos plans de démarrage également. De plus, le cache dynamique sera activé sur nos serveurs par défaut. 

Mise en cache dynamique activée pour tout le monde !

Chargement des pages entre 50 % et 500 % plus rapide

Pour récapituler brièvement, la mise en cache dynamique est une technologie qui met en cache la sortie HTML de votre code PHP. Le langage PHP est utilisé pour que le contenu de ce même HTML soit modifié dynamiquement et selon un ensemble de conditions prédéfinies par le créateur du site Web. Lors de l’utilisation du cache, la prochaine fois qu’une page est demandée, le HTML pur sera affiché à partir du cache qui se trouve dans la RAM du serveur, au lieu de gaspiller des ressources CPU et E/S pour lire le fichier PHP à partir du disque. Grâce à ce mécanisme, la page Web se charge beaucoup plus rapidement. Et par “plus rapide”, nous entendons entre 50 et 500 % plus rapide sur la base de nos statistiques internes pour les sites qui l’ont activé. Plus l’impact que nous voyons sur les sites les plus lourds est important – ceux avec plus de produits et de requêtes. Une fois que vous activez le cache, les pages commencent à se charger aussi vite que votre Internet le permet, littéralement.

WordPress mis en cache prêt à l’emploi, d’autres applications peuvent également être configurées

Jusqu’à présent, le cache dynamique était disponible sur nos plans GrowBig et supérieurs et devait être activé par les utilisateurs via notre plugin WordPress SiteGround Optimizer . Maintenant, nous rendons le cache disponible sur tous les plans et nous l’activons par défaut sur tous les serveurs. Ainsi, tous les sites WordPress hébergés sur notre plateforme seront mis en cache prêts à l’emploi. De plus, nos clients pourront configurer d’autres applications pour profiter également du cache. Pour obtenir des instructions sur l’utilisation du cache dynamique avec certaines des autres applications populaires, vous pouvez vous référer aux articles de notre base de connaissances SuperCacher .

Options de gestion dynamique du cache 

Comme déjà mentionné, notre option de cache dynamique fonctionnera désormais avec les installations WordPress prêtes à l’emploi. Cependant, les utilisateurs de WordPress obtiendront les meilleurs résultats grâce aux contrôles de cache dynamique de notre plugin SiteGround Optimizer . Le plugin agit comme un connecteur supplémentaire entre notre cache dynamique et l’application WordPress. Par exemple, SiteGround Optimizer indique à votre serveur de nettoyer automatiquement le cache à chaque modification de contenu pertinente et vous offre une option simple pour exclure complètement les URL de la mise en cache. Vous pouvez également désactiver la mise en cache via le plugin. 

Si vous utilisez une autre application, vous devrez peut-être autoriser la mise en cache à partir de son “backend” afin de commencer à l’utiliser, même si nous l’activons au niveau du serveur.

En ce qui concerne l’option Flush, si un changement sur votre site Web n’est pas affiché immédiatement, étant donné que la version en cache est toujours servie, vous pouvez toujours utiliser le bouton Flush dans vos outils de site. 

Memcached disponible sur tous nos plans

Memcached est probablement le système de mise en cache mémoire le plus populaire utilisé par des milliers de sites basés sur des bases de données, ce qui accélère ces sites web en mettant en cache les résultats des requêtes de base de données dans la RAM du serveur. Ainsi, si le résultat de la même requête est à nouveau nécessaire, il sera instantanément extrait de la RAM, plutôt que d’être généré à nouveau à partir de la base de données, ce qui est généralement un processus plus lent et nécessite plus de puissance de calcul.

Memcached est désormais également disponible sur les plans de démarrage avec les outils du site. Vous pouvez l’activer depuis Site Tools > Vitesse > Mise en cache, recherchez l’onglet Memcached. Cependant, gardez à l’esprit que vous devez également configurer votre application pour utiliser ce cache, une fois que vous l’avez activé depuis notre interface. Pour WordPress, cela ne prend qu’un clic dans notre plugin SiteGround Optimizer > section de contrôle Memcached , pour certaines des autres applications populaires, vous pouvez vous référer à nos articles de la base de connaissances SuperCacher . 

Les modifications décrites n’affecteront que nos serveurs basés sur les outils du site.

Nouvelle configuration MySQL pour un traitement plus rapide des requêtes

Deux des raisons les plus fréquentes pour lesquelles un site peut être lent sont les processus PHP non optimisés et les requêtes MySQL lourdes. L’optimisation du code de site Web est toujours un élément crucial de la bataille constante pour plus de vitesse de site Web . Cependant, les webmasters hébergeant avec SiteGround ont toujours eu un allié fiable à leurs côtés dans cette quête.

Récemment, nous avons annoncé le nouveau PHP ultrarapide , qui accélère considérablement le traitement des scripts PHP et améliore les performances du site Web jusqu’à 30 %. 
Comme prochaine étape naturelle dans nos efforts pour offrir un service premium et ultra-rapide, nous avons déployé une solution côté serveur pour optimiser les requêtes de base de données qui a déjà réduit le nombre de requêtes lentes de 10 à 20 fois !

Quelles sont les requêtes MySQL lentes et pourquoi sont-elles importantes ?

Si vous gérez un site actif avec une base de données, vous comprenez probablement que lorsqu’un visiteur entre sur votre site, il y a des tonnes de scripts qui commencent à s’exécuter, dont certains demandent des informations à votre base de données. Par exemple, si vous avez une boutique en ligne et qu’un visiteur essaie d’acheter un article, votre boutique doit vérifier sa disponibilité dans la base de données et afficher s’il est possible d’être commandé. Cette vérification déclenche une requête MySQL. Et selon la façon dont cette requête est écrite, elle peut être assez lourde et longue à traiter par le serveur. Pour vous en tant que webmaster, ces requêtes lentes sont un problème car vous allez perdre des clients. Comme vous le savez, les visiteurs quittent le site lorsqu’ils doivent attendre plus de 2 à 3 secondes pour qu’une page se charge.

Qu’avons-nous fait?

La bataille contre les requêtes MySQL lentes est un processus continu, qui implique à la fois le webmaster et l’hébergeur. C’est pourquoi nous avons récemment lancé une nouvelle configuration MySQL sur nos serveurs, qui adopte une approche innovante pour distribuer la RAM du serveur et l’allouer à MySQL. La nouvelle configuration permet de traiter simultanément un nombre beaucoup plus élevé de requêtes parallèles, ce qui a un impact important sur la gestion efficace des requêtes MySQL lourdes. Tellement génial que les administrateurs système, observant la charge du serveur après le lancement de la nouvelle configuration de MySQL, n’y croient toujours pas – ils ont vu une baisse des requêtes lentes de 10 à 20 fois ! 

Toutes nos dernières améliorations de service telles que le PHP ultra-rapide et maintenant la configuration de MySQL sont possibles grâce à deux outils : la plate-forme Google Cloud et le passage de cPanel aux Site Tools. Depuis que nous sommes passés à Google Cloud, nous avons mis à niveau nos configurations de serveur avec plus de RAM. Le prix unitaire de la RAM n’est pas moins cher, mais travailler dans le cloud offre des possibilités pour une meilleure répartition de cette ressource entre différentes machines. Et le fait que nous ne nous conformions pas aux exigences en matière de ressources logicielles de tiers tels que cPanel nous donne plus de liberté pour innover. Nos DevOps se sentent habilités à créer et à continuer à développer des technologies intelligentes qui profitent à la grande majorité des sites que nous hébergeons !

Qui peut y accéder?

Tout les utilisateurs hébergés sur nos serveurs mutualisés et cloud ont déjà reçu la nouvelle configuration MySQL ! Si vous avez constaté une amélioration des performances au cours de la semaine dernière, c’est grâce à la nouvelle configuration.

Cela signifie qu’il est moins probable que nous vous demandions de corriger une requête lente et de “distancier socialement” votre site à cause de cela. Moins de requêtes lentes, des serveurs plus rapides, moins de tracas pour vous !

Plus de gains de vitesse sur le site avec l’algorithme de compression Brotli

Nous sommes heureux d’annoncer que nous avons déployé et activé l’algorithme de compression Brotli par défaut sur nos serveurs Site Tools afin que les sites Web qui y sont hébergés puissent obtenir entre 15 et 20 % de gains de vitesse en l’utilisant. 

C’est quoi Brotli ?

Brotli est un algorithme de compression de nouvelle génération développé par Google pour succéder à la méthode gzip populaire que nous utilisons sur nos serveurs depuis des lustres. L’idée est simple – une fois que votre application produit la sortie HTML de votre site web et que la sortie est compressée avec toutes les ressources qu’elle charge, les données sont transmises sur Internet, puis le navigateur décompresse le contenu avant de le restituer. Ce processus réduit considérablement la taille des données transférées du serveur vers le visiteur, ce qui entraîne des gains de vitesse plusieurs fois supérieurs aux millisecondes perdues pour la compression et la décompression.

À quel point Brotli est-il plus rapide que gzip ?

Le nouvel algorithme fourni par Brotli comprime le site Web en une taille de données plus petite, ce qui accélère le transfert. Les fichiers JavaScript compressés avec Brotli sont environ 15 % plus petits que ceux compressés avec gzip. Les fichiers HTML sont environ 20 % plus petits et les fichiers CSS obtiennent une réduction de taille d’environ 16 %. Bien entendu, ces chiffres différeront en fonction de vos fichiers particuliers.

Un test avec l’un des thèmes par défaut de WordPress – TwentyTwenty montre qu’il produit 19584 octets de données non compressées, 6003 octets compressés avec gzip et seulement 4863 octets lorsqu’ils sont compressés avec Brotli ! Cela signifie que vous obtenez plus de 75 % de réduction de la taille du contenu non compressé et 19,5 % comparé à gzip. 

Comment utiliser Brotli ?

Nous avons activé Brotli sur tous nos serveurs Site Tools et si votre compte est hébergé sur l’un d’entre eux, votre site en profitera automatiquement. Vous n’avez rien à faire pour l’obtenir! 🙂 Les navigateurs prenant en charge la compression Brotli, qui constituent actuellement la majorité des navigateurs , transmettent l’en-tête “accept-encoding: br” approprié lors de l’exécution de la requête et obtiennent le contenu compressé Brotli. Les navigateurs plus anciens qui ne le prennent pas en charge seront servis avec des données compressées par gzip. Si vous êtes toujours hébergé sur un serveur cPanel, ne vous inquiétez pas – nous prévoyons que les migrations vers les outils du site seront terminées d’ici la fin mars 2021, vous n’aurez donc pas à attendre longtemps pour l’obtenir également.

Nouveau PHP ultra-rapide pour des sites Web jusqu’à 30 % plus rapides

La vitesse est l’un des piliers de nos services d’hébergement et nous travaillons constamment à rendre notre infrastructure plus rapide et plus fiable. L’un des éléments essentiels pour une vitesse de chargement rapide est la façon dont le PHP est géré sur le serveur Web et maintenant, avec notre nouvelle plate-forme Site Tools et sans les contraintes de l’ancien système, notre équipe DevOps a eu l’opportunité de développer un nouveau et ultra-rapide Une configuration PHP jusqu’à 30 % plus rapide et aussi sécurisée que tout ce que nous faisons.

Configuration PHP ultra-rapide et super sécurisée

En soi, exécuter un PHP rapide n’est pas une tâche difficile. Cependant, si vous voulez un PHP rapide, stable et sécurisé tout en prenant en charge Apache et la variété de règles “.htaccess” définies par les utilisateurs et les applications, les choses se compliquent. Nous voulions résoudre ces problèmes et en même temps augmenter la vitesse de chargement des pages et améliorer la stabilité du serveur lors des pics de trafic. Ainsi, une fois que nous avons publié le nouvel espace client et les nouveaux outils du site et que nous nous sommes débarrassés des contraintes majeures que notre ancienne plate-forme nous imposait, la modification de notre configuration PHP est devenue l’une des priorités de notre équipe DevOps.  

Après plusieurs itérations, nous avons réussi à surmonter le plus grand défi de «vitesse par rapport à la sécurité» et fourni un PHP rapide avec notre WAF et l’isolation de compte intégrés, obtenant ainsi de meilleurs résultats de performance sans compromettre la sécurité de ces derniers. La nouvelle implémentation est ultra rapide, sécurisée et efficace.

Notre PHP ultra-rapide contre notre PHP standard

Alors que la nouvelle configuration PHP ultra-rapide est plus rapide et recommandée pour les sites Web à fort trafic, la configuration PHP standard offre une flexibilité supplémentaire pour les versions PHP et la gestion des variables.  

Notre PHP ultra-rapide – Recommandé pour les sites très visités

Les sites Web qui bénéficieront le plus du PHP ultra-rapide sont ceux qui obtiennent un trafic solide et peuvent connaître un déficit de ressources sur le plan actuel qu’ils utilisent. Sur la base des statistiques préliminaires que nous avons exécutées, nous voyons les données brutes suivantes :

  • Réponse de page plus rapide : jusqu’à 50 % de baisse du TTFB (temps au premier octet) , ce qui rendra vos pages chargées plus rapidement qu’auparavant.
  • Augmentation de la capacité du serveur : le nœud hôte pourra traiter environ 20 à 30 % de requêtes en plus, ce qui signifie qu’il sera capable de gérer les pics de trafic encore mieux qu’auparavant. 
  • Utilisation réduite de la mémoire du serveur : jusqu’à 15 % de baisse de l’utilisation de la mémoire, ce qui libère à nouveau les ressources du serveur pour gérer plus rapidement votre trafic.
  • Amélioration des performances globales attendue : actuellement, le nouveau PHP ultra-rapide est en moyenne 30 % plus rapide que l’ancienne configuration.

Remarque : les chiffres ci-dessus sont des moyennes et sont basés sur des tests internes. Les résultats peuvent varier selon le site. 

La nouvelle configuration PHP est disponible pour les sites Web hébergés sur les plans GrowBig, GoGeek et Cloud, car ces plans hébergent généralement le type de sites les plus susceptibles de bénéficier des améliorations de performances qu’il apporte. Il est important de souligner que cela fonctionne pour les sites fonctionnant sur PHP 7.3 ou supérieur et n’est pas compatible avec les anciennes versions. De plus, lors de l’utilisation du service PHP ultra-rapide, tous les sous-domaines de votre site hériteront de la version PHP et des paramètres de variables du domaine principal du site.

Notre PHP standard permet différents paramètres PHP pour chaque sous-domaine 

La configuration standard de PHP est celle que tous les comptes StartUp utilisent. Il est également disponible comme alternative à la configuration PHP ultra-rapide sur les comptes GrowBig, GoGeek et Cloud basés sur les Site Tools. Ses performances sont excellentes pour les sites petits et standards. Son plus grand avantage est qu’il vous permet de gérer les versions et les variables PHP séparément pour chaque sous-domaine de votre site. 

Comme le PHP standard offre plus de flexibilité pour les expériences, tous les sites de test sont également configurés avec lui. Donc, si vous avez besoin d’utiliser un PHP plus ancien que 7.3 ou si vous avez besoin d’une configuration avec différentes versions de PHP et variables par sous-domaine, la configuration PHP standard est celle qu’il vous faut.

Comment passer au PHP ultrarapide ?

  • Tous les nouveaux sites créés sur le plan GrowBig, GoGeek ou Cloud basé sur les Site Tools sont livrés avec le nouveau PHP ultrarapide activé par défaut. 
  • Pour les sites existants hébergés sur les plans GrowBig, GoGeek et Cloud basés sur les Site Tools, le PHP ultra-rapide est désormais disponible dans Site Tools> PHP Manager et les clients peuvent l’activer instantanément . 
  • Si vous êtes un client SiteGround et que vous disposez d’un plan StartUp basé sur les Site Tools, vous pouvez le mettre à niveau vers un plan supérieur pour accéder à la configuration PHP ultra-rapide.

Forfaits d’hébergement personnalisés et rôles disponibles pour vos clients

Nous sommes ravis de présenter deux nouvelles fonctionnalités pour nos plans d’hébergement Cloud fonctionnant avec les Site Tools – les options pour créer des packages d’hébergement et définir les rôles des clients. La fonctionnalité Packs d’hébergement vous permet d’adapter les ressources allouées à chacun des sites hébergés sur votre cloud, tandis que le rôle client vous permet de spécifier quels outils de gestion de site seront disponibles pour vos clients. 

Personnalisez les ressources d’hébergement de vos clients

Avec la nouvelle fonctionnalité de pack d’hébergement, vous pouvez créer un pack d’hébergement personnalisé pour chacun des sites Web hébergés sur votre cloud. Par défaut, chaque site Web sur un cloud peut utiliser la pleine capacité du cloud, mais avec la nouvelle fonctionnalité, vous pouvez facilement limiter n’importe quel site web aux ressources que vous jugez appropriées. Si vous hébergez plusieurs clients sur un plan cloud, cette fonctionnalité vous permettra de fournir plus facilement un plan d’hébergement sur mesure à chacun d’eux.

Gérez l’ensemble des outils mis à la disposition de vos clients

Avec la nouvelle fonctionnalité Rôle client, vous pouvez contrôler les outils qui seront disponibles pour les clients hébergés sur votre cloud. Par défaut, tous les clients que vous créez reçoivent un accès complet à tous les outils de gestion dans une version en marque blanche de nos outils de site. En créant des rôles personnalisés et en les attribuant à vos clients, vous pouvez choisir exactement les outils à inclure dans les outils du site de chacun de vos clients.  

Qui a accès à ces fonctionnalités ?

Les nouvelles fonctionnalités sont disponibles pour nos clients Cloud existants à l’aide des outils du site et des nouveaux clients Cloud. Si vous êtes un client SiteGround et que vous avez un forfait Cloud avec WHM et cPanel, ne vous inquiétez pas ! Nous allons basculer tous nos utilisateurs du cloud vers les outils du site dans les mois à venir et une fois que nous le ferons, vous pourrez profiter de ces fonctionnalités, au plus tard en mars 2021.

Les technologies derrière notre nouvel espace client et nos nouveaux outils de site

Nous avons récemment annoncé le lancement de notre nouvel espace client et de nos nouveaux outils de site. Notre COO en a parlé d’un point de vue commercial et de l’importance de ce projet pour notre croissance future. Je voudrais vous donner la perspective technique et pourquoi nous considérons que ces nouvelles interfaces sont également une étape technique pour SiteGround. 

SiteGround a toujours été avant tout une entreprise de services. Cependant, depuis de nombreuses années, la croissance de notre activité est étroitement corrélée à notre évolution technique. Plus nous développons de logiciels en interne, plus la qualité de notre service augmente et plus notre réputation grandit. Non seulement cela, mais nous avons développé la confiance en soi d’une entreprise de haute technologie qui produit des solutions logicielles puissantes et intelligentes et qui est toujours parmi les premières à mettre en œuvre les technologies les plus innovantes. 

Ainsi, lorsque nous avons réalisé que bon nombre de nos idées commerciales étaient ralenties ou rendues impossibles par les limites de notre plate-forme sous-jacente actuellement utilisée, nous avons eu le courage de voir plus grand que ce qui est disponible sur le marché et avons osé tout recréer à partir de zéro

Le défi

D’un point de vue commercial, nous voulions gérer une plate-forme (frontend et backend) qui fonctionnerait sur n’importe quel appareil, aurait un look moderne, serait légère, rapide, sécurisée et facilement évolutive. En traduisant cela en termes techniques, nous avons défini les objectifs suivants :

1. Vitesse et UX avancée

Nous avons décidé d’utiliser des applications d’une seule page car c’est LA technologie incontournable pour une expérience Web plus rapide.  

2. Évolutivité et sécurité

Nous avons décidé d’adopter la philosophie des micro-services et de tout baser sur l’API afin que le système puisse évoluer plus facilement et en cas d’incidents, avoir une portée de dommages plus petite.

Cependant, lorsque vous avez de nombreux services, l’authentification et l’autorisation sont un gros problème. Nous avions donc besoin d’une solution sécurisée, rapide et simple pour le problème de partage de ressources cross-origin, où nous avons choisi d’utiliser des jetons web JSON.

Opérer à grande échelle lorsque vous avez des millions de sites hébergés sur des centaines de milliers de conteneurs nécessite également une orchestration, une découverte de services et une couche de messagerie fiable où nous introduisons Consul et NSQ.

Enfin, une bonne observabilité, surveillance et alerte sont cruciales compte tenu de la complexité du système. Nous avons donc mis Prometheus et Grafana en action.

Les solutions

1. Applications monopage avec React et Redux

Il y a trois ans, lorsque nous avons commencé à travailler sur le projet, nous savions que les applications d’une seule page devenaient de plus en plus populaires car elles permettaient une meilleure expérience utilisateur, des temps de chargement de page plus rapides, l’unification des principes de conception, la conception modulaire, etc. L’écosystème SPA évoluait également rapidement. Il existait de nombreux frameworks JavaScript tels que AngularJS, ReactJS et Vue.js. Il semblait naturel et évident que lorsqu’il s’agissait de quelque chose de léger, rapide et basé sur une API, l’application d’une seule page était la réponse. Après quelques tests avec différents frameworks, nous avons décidé d’utiliser ReactJS + Redux pour notre nouvel espace client et nos outils de site, car il a montré les meilleurs résultats de performance. 

Chargement rapide des pages

Nous avons deux applications principales d’une seule page. L’une est l’application Espace client et l’autre est notre application Outils du site. Ils sont tous deux utilisés toutes les heures par des milliers de personnes et leur nombre ne cesse d’augmenter. Déplacer une partie de la logique d’application vers les navigateurs des utilisateurs, où JS est exécuté localement, a rendu les choses plus rapides. Cela s’explique en partie par le fait que nous avons moins de manipulations de données effectuées dans le backend. L’autre partie vient du fait que nos applications vivent sur une solution de mise en cache d’objets avec CDN devant. Cela permet aux utilisateurs du monde entier de charger rapidement l’application et de commencer à l’utiliser.

Guide de style unifié 

Les applications d’une seule page vous permettent de travailler avec des composants prêts à l’emploi qui sont réutilisables et de faire en sorte que vos interfaces respectent certaines normes. Pour la nôtre, nous avons écrit un guide de style, qui rend nos interfaces homogènes et nous permet d’écrire du nouveau code plus facilement et plus rapidement. Le compromis est que seul le dépôt du guide de style avec tous les exemples représente environ 550 000 lignes de code !

Étant donné que notre développement est assez important et en croissance et que le code avec lequel nous travaillons est assez volumineux, nous devions nous assurer que nos normes seraient respectées et non régressées par les changements. C’est pourquoi nous avons couvert le code avec des tests visuels et e2e (Cypress). Si un changement de code modifie visuellement une certaine page de manière significative, nous avons un drapeau rouge et nous pouvons même arrêter automatiquement le déploiement de code et les builds.

2. API RESTful et microservices

Nous avons maintenant plus de 100 appels API qui peuvent être utilisés pour gérer un seul site hébergé sur nos serveurs. Des choses comme l’installation de WordPress, l’émission d’un certificat SSL privé, la création de comptes de messagerie, la création de nouvelles bases de données MySQL, l’ajout de clés SSH et même la migration de sites entre serveurs se font toutes via des appels API. Ces API nous offrent les avantages suivants :

Favorise l’utilisation de différentes langues

Nous avons des ingénieurs logiciels qui écrivent dans les langages/frameworks suivants pour notre plate-forme :

  • PHP (Symfony, ZendFramework)
  • Perle (danseuse)
  • Aller
  • Python
  • JavaScript (ReactJS, AngularJS), TypeScript 

Afin de nous assurer que toutes les pièces mobiles puissent communiquer nous avions besoin d’API RESTful pour relier la communication.

La conception de l’API RESTful est bien connue

Le côté positif des API RESTful est que pratiquement tous les développeurs de nos jours les comprennent et connaissent le concept. Cela signifie que lorsque nous devons ajouter de nouvelles fonctionnalités, nous n’avons pas besoin de former les développeurs ou de leur faire apprendre les entrées et les sorties de l’ensemble du système afin qu’ils puissent livrer. Ils peuvent simplement se concentrer sur le nouveau morceau de code nécessaire et l’intégrer dans le système.

Nos partenaires peuvent utiliser les API

Le fait que tout soit basé sur une API facilite l’accès aux partenaires et leur permet de créer des sites, d’installer un CMS ou d’effectuer d’autres fonctions sur notre plateforme. Cela nous rend flexibles et constitue une bonne base pour la croissance future de notre entreprise.

Personnalisation de l’accès utilisateur

Les API RESTful appliquent le principe CRUD selon lequel chaque objet manipulé par l’API doit prendre en charge les 4 fonctions suivantes : créer, lire, mettre à jour et supprimer. Couplé à la représentation unifiée REST des ressources, cela permet une séparation facile des actions et un accès personnalisé et un contrôle utilisateur.

Avec les jetons Web JSON, nous avons utilisé les API pour fournir des niveaux d’accès personnalisés dans nos nouvelles interfaces. Il est désormais possible d’autoriser un opérateur à créer des comptes de messagerie pour un nom de domaine, mais de ne pas avoir accès aux comptes de messagerie existants ou à tout autre outil. Pour commencer, nous n’avons introduit que 3 rôles d’utilisateur : propriétaire du site, collaborateur et client en marque blanche, mais nous avons posé les bases pour ajouter facilement de nombreuses options de personnalisation à l’avenir. Le contrôle d’accès basé sur les rôles nous permet de fournir un accès granulaire à des services et fonctionnalités spécifiques. 

Identifiez les problèmes plus facilement et mesurez plus efficacement

Plus la construction est granulaire, plus il est facile d’isoler une pièce non fonctionnelle et de la remplacer ou de la réparer. C’est l’un des principaux avantages que nous pouvons tirer de la philosophie des micro-services. Nous pouvons plus facilement suivre et résoudre les problèmes avec une fonction spécifique fournie par un service spécifique. Nous pouvons également mieux suivre les performances et l’utilisation des différents services afin de pouvoir faire évoluer les ressources de la plate-forme et prévenir les problèmes.

3. Jetons Web JSON

Au moment où nous avons commencé à travailler sur des applications d’une seule page, nous savions que nous devions faire évoluer notre configuration d’authentification et d’autorisation d’une manière ou d’une autre. Étant donné le nombre d’API qui communiquent entre elles et d’utilisateurs qui interagissent également avec ces API (qui étaient réparties sur différents domaines), l’autorisation effectuée à l’ancienne – via des cookies – n’était pas optimale et n’était pas évolutive. Les deux principaux problèmes rencontrés étaient les suivants :

  • La gestion des cookies de partage de ressources cross-origin et des en-têtes HTTP n’est pas simple, et nous voulions l’éviter. La combinaison des jetons Web JSON avec nos propres API nous permet de résoudre ce problème.
  • La mise à l’échelle d’un système backend qui vérifie chaque demande d’API a commencé à paraître terrible du point de vue des performances des sessions.

Après quelques recherches, nous avons décidé d’utiliser JSON Web Tokens pour cette partie de l’infrastructure. Nous avons configuré un système d’authentification et d’autorisation personnalisé de notre côté. Cela nous permet de bénéficier de choses telles que :

  • Mécanisme d’autorisation uniforme pour différentes API
  • Charge de serveur réduite et moins de hits DB
  • Capacité à utiliser cette solution dans différents domaines 
  • Plus facile d’atteindre l’évolutivité horizontale
  • Un niveau de sécurité supérieur pour nos utilisateurs
  • Authentification unique prête à l’emploi

4. Orchestration et messagerie

Plus nous grandissons, plus nous exploitons de serveurs (en tant qu’unité matérielle) et de conteneurs (en tant qu’unité virtuelle). Le conteneur Linux est l’unité principale de notre infrastructure, mais la façon dont nous gérons ces conteneurs évolue avec le temps. Commander de nouveaux serveurs, déployer un conteneur avec la pile logicielle nécessaire, ajouter ce nouveau conteneur à toutes les bases de données qui alimentent différents services et API, tout cela et bien plus nécessite une orchestration. Pour cette partie, nous avons écrit beaucoup de code, spécifique à notre plateforme et nos processus. Pourtant, nous dépendons fortement de projets logiciels bien établis pour atteindre nos objectifs. Nous utilisons HashiCorp Consul pour la découverte de services et l’automatisation des systèmes. Notre plate-forme de messagerie de choix est NSQ. Nous utilisons Ansible pour automatiser de nombreuses tâches de provisionnement de logiciels et de gestion de la configuration.

Deux bons exemples sont nos systèmes retravaillés Let’s Encrypt et WordPress Automatic Updates. Auparavant, ils s’exécutaient localement sur chaque serveur d’hébergement et sont maintenant basés sur une approche distribuée. Les serveurs sont automatiquement enregistrés dans le système. Les services utilisent la découverte automatique fournie par Consul. Ensuite, les API mentionnées ci-dessus sont utilisées et l’émission et le renouvellement SSL se produisent pour chaque nouveau nom de domaine que nous enregistrons dans le système. Il en va de même pour chaque application qui entre dans les systèmes de mises à jour automatiques de WordPress.

5. Prometheus/Grafana pour l’observabilité

La façon dont nous fournissons de nouveaux services a également beaucoup changé. Dans le monde natif du cloud, nous ne nous soucions plus de la défaillance des hôtes individuels. Aucun ingénieur du CNO n’est appelé lorsque cela se produit. Il n’y a pas d’administrateurs système artisanaux qui traitent les machines et les services avec une attention affectueuse. Maintenant, nous surveillons l’ensemble de l’infrastructure avec les objectifs suivants à l’esprit :

  • Nous devons savoir quand les choses tournent mal
  • Nous pouvons déboguer et avoir un aperçu du contexte spécifique
  • Nous devons être capables de voir les changements dans le temps et de faire des prédictions
  • Les données doivent être facilement consommées par d’autres systèmes et processus

Pour rendre ce qui précède plus précis, nous redéfinissons maintenant les scénarios « d’échec » et les alertes que nous recevons pour chacun. Par exemple, nous pouvons recevoir des alertes nécessitant une intervention humaine lorsqu’il y a un impact direct sur l’utilisateur, comme lorsqu’un service qui affecte directement les sites web des clients a été affecté. Mais, nous n’avons peut-être pas besoin d’intervention humaine lorsqu’un nœud spécifique a échoué car les données sont automatiquement redistribuées sur d’autres nœuds et il n’y a aucun impact sur l’utilisateur, donc aucune alerte n’est nécessaire dans ce cas. 

Lorsque nous travaillons sur ces alertes, nous cherchons à passer de l’alerte aux sous-systèmes problématiques. Afin que nos ingénieurs puissent faire une analyse rapide et proposer une résolution rapide, nous devons disposer de suffisamment de données. C’est ce qu’on appelle le traçage distribué, et cela nous permet de suivre les demandes d’utilisateurs spécifiques depuis les navigateurs de nos clients, via plusieurs API et différents services, jusqu’à ce qu’elles atteignent les bases de données et/ou les moteurs de stockage. Chaque enregistrement concernant une demande dans le système de traçage distribué nous donne des informations de profilage des performances et un moyen de corréler les problèmes avec d’autres événements. Nous utilisons le traçage distribué pour déboguer plus rapidement et optimiser notre code. Nous sommes en mesure d’atteindre une vitesse de fonctionnalité plus élevée à cause de cela. 

Pour atteindre tous les objectifs, nous avons choisi d’utiliser Prometheus et Grafana pour le profilage, la collecte de métriques, l’analyse des journaux et le traçage distribué des événements. Nous sommes maintenant en mesure de corréler les informations provenant de plusieurs sources et de révéler et de prévoir les lacunes.

Conclusion

Le logiciel que nous avons dû écrire pour relever le défi et fournir les solutions décrites ci-dessus est énorme mais assez gratifiant. Pour conclure, je vous laisse quelques chiffres directement issus des nouveaux référentiels de logiciels et de notre JIRA :

  • 2 539 604 lignes de code
  • Couverture des tests de code à 99 %
  • 9250 tâches JIRA
  • 199 560 mots dans les historiques JIRA

Nous sommes particulièrement fiers de la couverture des tests de code. Même si 2,5 millions de lignes de code sont impressionnantes, nous savons que ce n’est pas une très bonne mesure de succès. Le fait que tout notre code soit couvert par des tests est cependant une grande réussite. Dès le début, nous avons défini la couverture des tests de code comme l’un de nos principaux critères pour fournir des logiciels de qualité. Et si notre nouvel espace client et nos nouveaux outils de site ne peuvent pas fournir de garanties de qualité, nous ne pouvons pas fournir le service exceptionnel auquel nos clients sont habitués. Soyez assuré que nous nous engageons à fournir le même service d’hébergement de premier ordre, mais cette fois avec des outils de gestion de site et de collaboration encore meilleurs, basés sur les technologies Web les meilleures et les plus innovantes au monde.

Nous avons récemment annoncé le lancement de notre nouvel espace client et de nos nouveaux outils de site. Notre COO en a parlé d’un point de vue commercial et de l’importance de ce projet pour notre croissance future. Je voudrais vous donner la perspective technique et pourquoi nous considérons que ces nouvelles interfaces sont également une étape technique pour SiteGround. 

SiteGround a toujours été avant tout une entreprise de services. Cependant, depuis de nombreuses années, la croissance de notre activité est étroitement corrélée à notre évolution technique. Plus nous développons de logiciels en interne, plus la qualité de notre service augmente et plus notre réputation grandit. Non seulement cela, mais nous avons développé la confiance en soi d’une entreprise de haute technologie qui produit des solutions logicielles puissantes et intelligentes et qui est toujours parmi les premières à mettre en œuvre les technologies les plus innovantes. 

Ainsi, lorsque nous avons réalisé que bon nombre de nos idées commerciales étaient ralenties ou rendues impossibles par les limites de notre plate-forme sous-jacente actuellement utilisée, nous avons eu le courage de voir plus grand que ce qui est disponible sur le marché et avons osé tout recréer à partir de zéro

Le défi

D’un point de vue commercial, nous voulions gérer une plate-forme (frontend et backend) qui fonctionnerait sur n’importe quel appareil, aurait un look moderne, serait légère, rapide, sécurisée et facilement évolutive. En traduisant cela en termes techniques, nous avons défini les objectifs suivants :

1. Vitesse et UX avancée

Nous avons décidé d’utiliser des applications d’une seule page car c’est LA technologie incontournable pour une expérience Web plus rapide.  

2. Évolutivité et sécurité

Nous avons décidé d’adopter la philosophie des micro-services et de tout baser sur l’API afin que le système puisse évoluer plus facilement et en cas d’incidents, avoir une portée de dommages plus petite.

Cependant, lorsque vous avez de nombreux services, l’authentification et l’autorisation sont un gros problème. Nous avions donc besoin d’une solution sécurisée, rapide et simple pour le problème de partage de ressources cross-origin, où nous avons choisi d’utiliser des jetons web JSON.

Opérer à grande échelle lorsque vous avez des millions de sites hébergés sur des centaines de milliers de conteneurs nécessite également une orchestration, une découverte de services et une couche de messagerie fiable où nous introduisons Consul et NSQ.

Enfin, une bonne observabilité, surveillance et alerte sont cruciales compte tenu de la complexité du système. Nous avons donc mis Prometheus et Grafana en action.

Les solutions

1. Applications monopage avec React et Redux

Il y a trois ans, lorsque nous avons commencé à travailler sur le projet, nous savions que les applications d’une seule page devenaient de plus en plus populaires car elles permettaient une meilleure expérience utilisateur, des temps de chargement de page plus rapides, l’unification des principes de conception, la conception modulaire, etc. L’écosystème SPA évoluait également rapidement. Il existait de nombreux frameworks JavaScript tels que AngularJS, ReactJS et Vue.js. Il semblait naturel et évident que lorsqu’il s’agissait de quelque chose de léger, rapide et basé sur une API, l’application d’une seule page était la réponse. Après quelques tests avec différents frameworks, nous avons décidé d’utiliser ReactJS + Redux pour notre nouvel espace client et nos outils de site, car il a montré les meilleurs résultats de performance. 

Chargement rapide des pages

Nous avons deux applications principales d’une seule page. L’une est l’application Espace client et l’autre est notre application Outils du site. Ils sont tous deux utilisés toutes les heures par des milliers de personnes et leur nombre ne cesse d’augmenter. Déplacer une partie de la logique d’application vers les navigateurs des utilisateurs, où JS est exécuté localement, a rendu les choses plus rapides. Cela s’explique en partie par le fait que nous avons moins de manipulations de données effectuées dans le backend. L’autre partie vient du fait que nos applications vivent sur une solution de mise en cache d’objets avec CDN devant. Cela permet aux utilisateurs du monde entier de charger rapidement l’application et de commencer à l’utiliser.

Guide de style unifié 

Les applications d’une seule page vous permettent de travailler avec des composants prêts à l’emploi qui sont réutilisables et de faire en sorte que vos interfaces respectent certaines normes. Pour la nôtre, nous avons écrit un guide de style, qui rend nos interfaces homogènes et nous permet d’écrire du nouveau code plus facilement et plus rapidement. Le compromis est que seul le dépôt du guide de style avec tous les exemples représente environ 550 000 lignes de code !

Étant donné que notre développement est assez important et en croissance et que le code avec lequel nous travaillons est assez volumineux, nous devions nous assurer que nos normes seraient respectées et non régressées par les changements. C’est pourquoi nous avons couvert le code avec des tests visuels et e2e (Cypress). Si un changement de code modifie visuellement une certaine page de manière significative, nous avons un drapeau rouge et nous pouvons même arrêter automatiquement le déploiement de code et les builds.

2. API RESTful et microservices

Nous avons maintenant plus de 100 appels API qui peuvent être utilisés pour gérer un seul site hébergé sur nos serveurs. Des choses comme l’installation de WordPress, l’émission d’un certificat SSL privé, la création de comptes de messagerie, la création de nouvelles bases de données MySQL, l’ajout de clés SSH et même la migration de sites entre serveurs se font toutes via des appels API. Ces API nous offrent les avantages suivants :

Favorise l’utilisation de différentes langues

Nous avons des ingénieurs logiciels qui écrivent dans les langages/frameworks suivants pour notre plate-forme :

  • PHP (Symfony, ZendFramework)
  • Perle (danseuse)
  • Aller
  • Python
  • JavaScript (ReactJS, AngularJS), TypeScript 

Afin de nous assurer que toutes les pièces mobiles puissent communiquer nous avions besoin d’API RESTful pour relier la communication.

La conception de l’API RESTful est bien connue

Le côté positif des API RESTful est que pratiquement tous les développeurs de nos jours les comprennent et connaissent le concept. Cela signifie que lorsque nous devons ajouter de nouvelles fonctionnalités, nous n’avons pas besoin de former les développeurs ou de leur faire apprendre les entrées et les sorties de l’ensemble du système afin qu’ils puissent livrer. Ils peuvent simplement se concentrer sur le nouveau morceau de code nécessaire et l’intégrer dans le système.

Nos partenaires peuvent utiliser les API

Le fait que tout soit basé sur une API facilite l’accès aux partenaires et leur permet de créer des sites, d’installer un CMS ou d’effectuer d’autres fonctions sur notre plateforme. Cela nous rend flexibles et constitue une bonne base pour la croissance future de notre entreprise.

Personnalisation de l’accès utilisateur

Les API RESTful appliquent le principe CRUD selon lequel chaque objet manipulé par l’API doit prendre en charge les 4 fonctions suivantes : créer, lire, mettre à jour et supprimer. Couplé à la représentation unifiée REST des ressources, cela permet une séparation facile des actions et un accès personnalisé et un contrôle utilisateur.

Avec les jetons Web JSON, nous avons utilisé les API pour fournir des niveaux d’accès personnalisés dans nos nouvelles interfaces. Il est désormais possible d’autoriser un opérateur à créer des comptes de messagerie pour un nom de domaine, mais de ne pas avoir accès aux comptes de messagerie existants ou à tout autre outil. Pour commencer, nous n’avons introduit que 3 rôles d’utilisateur : propriétaire du site, collaborateur et client en marque blanche, mais nous avons posé les bases pour ajouter facilement de nombreuses options de personnalisation à l’avenir. Le contrôle d’accès basé sur les rôles nous permet de fournir un accès granulaire à des services et fonctionnalités spécifiques. 

Identifiez les problèmes plus facilement et mesurez plus efficacement

Plus la construction est granulaire, plus il est facile d’isoler une pièce non fonctionnelle et de la remplacer ou de la réparer. C’est l’un des principaux avantages que nous pouvons tirer de la philosophie des micro-services. Nous pouvons plus facilement suivre et résoudre les problèmes avec une fonction spécifique fournie par un service spécifique. Nous pouvons également mieux suivre les performances et l’utilisation des différents services afin de pouvoir faire évoluer les ressources de la plate-forme et prévenir les problèmes.

3. Jetons Web JSON

Au moment où nous avons commencé à travailler sur des applications d’une seule page, nous savions que nous devions faire évoluer notre configuration d’authentification et d’autorisation d’une manière ou d’une autre. Étant donné le nombre d’API qui communiquent entre elles et d’utilisateurs qui interagissent également avec ces API (qui étaient réparties sur différents domaines), l’autorisation effectuée à l’ancienne – via des cookies – n’était pas optimale et n’était pas évolutive. Les deux principaux problèmes rencontrés étaient les suivants :

  • La gestion des cookies de partage de ressources cross-origin et des en-têtes HTTP n’est pas simple, et nous voulions l’éviter. La combinaison des jetons Web JSON avec nos propres API nous permet de résoudre ce problème.
  • La mise à l’échelle d’un système backend qui vérifie chaque demande d’API a commencé à paraître terrible du point de vue des performances des sessions.

Après quelques recherches, nous avons décidé d’utiliser JSON Web Tokens pour cette partie de l’infrastructure. Nous avons configuré un système d’authentification et d’autorisation personnalisé de notre côté. Cela nous permet de bénéficier de choses telles que :

  • Mécanisme d’autorisation uniforme pour différentes API
  • Charge de serveur réduite et moins de hits DB
  • Capacité à utiliser cette solution dans différents domaines 
  • Plus facile d’atteindre l’évolutivité horizontale
  • Un niveau de sécurité supérieur pour nos utilisateurs
  • Authentification unique prête à l’emploi

4. Orchestration et messagerie

Plus nous grandissons, plus nous exploitons de serveurs (en tant qu’unité matérielle) et de conteneurs (en tant qu’unité virtuelle). Le conteneur Linux est l’unité principale de notre infrastructure, mais la façon dont nous gérons ces conteneurs évolue avec le temps. Commander de nouveaux serveurs, déployer un conteneur avec la pile logicielle nécessaire, ajouter ce nouveau conteneur à toutes les bases de données qui alimentent différents services et API, tout cela et bien plus nécessite une orchestration. Pour cette partie, nous avons écrit beaucoup de code, spécifique à notre plateforme et nos processus. Pourtant, nous dépendons fortement de projets logiciels bien établis pour atteindre nos objectifs. Nous utilisons HashiCorp Consul pour la découverte de services et l’automatisation des systèmes. Notre plate-forme de messagerie de choix est NSQ. Nous utilisons Ansible pour automatiser de nombreuses tâches de provisionnement de logiciels et de gestion de la configuration.

Deux bons exemples sont nos systèmes retravaillés Let’s Encrypt et WordPress Automatic Updates. Auparavant, ils s’exécutaient localement sur chaque serveur d’hébergement et sont maintenant basés sur une approche distribuée. Les serveurs sont automatiquement enregistrés dans le système. Les services utilisent la découverte automatique fournie par Consul. Ensuite, les API mentionnées ci-dessus sont utilisées et l’émission et le renouvellement SSL se produisent pour chaque nouveau nom de domaine que nous enregistrons dans le système. Il en va de même pour chaque application qui entre dans les systèmes de mises à jour automatiques de WordPress.

5. Prometheus/Grafana pour l’observabilité

La façon dont nous fournissons de nouveaux services a également beaucoup changé. Dans le monde natif du cloud, nous ne nous soucions plus de la défaillance des hôtes individuels. Aucun ingénieur du CNO n’est appelé lorsque cela se produit. Il n’y a pas d’administrateurs système artisanaux qui traitent les machines et les services avec une attention affectueuse. Maintenant, nous surveillons l’ensemble de l’infrastructure avec les objectifs suivants à l’esprit :

  • Nous devons savoir quand les choses tournent mal
  • Nous pouvons déboguer et avoir un aperçu du contexte spécifique
  • Nous devons être capables de voir les changements dans le temps et de faire des prédictions
  • Les données doivent être facilement consommées par d’autres systèmes et processus

Pour rendre ce qui précède plus précis, nous redéfinissons maintenant les scénarios « d’échec » et les alertes que nous recevons pour chacun. Par exemple, nous pouvons recevoir des alertes nécessitant une intervention humaine lorsqu’il y a un impact direct sur l’utilisateur, comme lorsqu’un service qui affecte directement les sites web des clients a été affecté. Mais, nous n’avons peut-être pas besoin d’intervention humaine lorsqu’un nœud spécifique a échoué car les données sont automatiquement redistribuées sur d’autres nœuds et il n’y a aucun impact sur l’utilisateur, donc aucune alerte n’est nécessaire dans ce cas. 

Lorsque nous travaillons sur ces alertes, nous cherchons à passer de l’alerte aux sous-systèmes problématiques. Afin que nos ingénieurs puissent faire une analyse rapide et proposer une résolution rapide, nous devons disposer de suffisamment de données. C’est ce qu’on appelle le traçage distribué, et cela nous permet de suivre les demandes d’utilisateurs spécifiques depuis les navigateurs de nos clients, via plusieurs API et différents services, jusqu’à ce qu’elles atteignent les bases de données et/ou les moteurs de stockage. Chaque enregistrement concernant une demande dans le système de traçage distribué nous donne des informations de profilage des performances et un moyen de corréler les problèmes avec d’autres événements. Nous utilisons le traçage distribué pour déboguer plus rapidement et optimiser notre code. Nous sommes en mesure d’atteindre une vitesse de fonctionnalité plus élevée à cause de cela. 

Pour atteindre tous les objectifs, nous avons choisi d’utiliser Prometheus et Grafana pour le profilage, la collecte de métriques, l’analyse des journaux et le traçage distribué des événements. Nous sommes maintenant en mesure de corréler les informations provenant de plusieurs sources et de révéler et de prévoir les lacunes.

Conclusion

Le logiciel que nous avons dû écrire pour relever le défi et fournir les solutions décrites ci-dessus est énorme mais assez gratifiant. Pour conclure, je vous laisse quelques chiffres directement issus des nouveaux référentiels de logiciels et de notre JIRA :

  • 2 539 604 lignes de code
  • Couverture des tests de code à 99 %
  • 9250 tâches JIRA
  • 199 560 mots dans les historiques JIRA

Nous sommes particulièrement fiers de la couverture des tests de code. Même si 2,5 millions de lignes de code sont impressionnantes, nous savons que ce n’est pas une très bonne mesure de succès. Le fait que tout notre code soit couvert par des tests est cependant une grande réussite. Dès le début, nous avons défini la couverture des tests de code comme l’un de nos principaux critères pour fournir des logiciels de qualité. Et si notre nouvel espace client et nos nouveaux outils de site ne peuvent pas fournir de garanties de qualité, nous ne pouvons pas fournir le service exceptionnel auquel nos clients sont habitués. Soyez assuré que nous nous engageons à fournir le même service d’hébergement de premier ordre, mais cette fois avec des outils de gestion de site et de collaboration encore meilleurs, basés sur les technologies Web les meilleures et les plus innovantes au monde.