Logo du noyaunoyau
‹ Tous les cas d'utilisation
Aplatir · cache SEO traduit

Pages traduites telles que les robots d'exploration les voient aujourd'hui.

Flatten fournit aux moteurs de recherche et aux robots d'exploration IA une copie prête à l'emploi de chaque page traduite. Cette copie n'est utile que tant qu'elle correspond au site en ligne. Il s'agit du même cache présent simultanément sur deux sites : l'un est maintenu à jour par Nucleus et Dispatch, l'autre par une tâche cron mise en place par un ingénieur. C'est aussi une lacune du produit que l'équipe terrain a comblée et testée sur de vrais clients avant que l'équipe produit n'ait à s'engager.

Actuellement 99.84% Réenfile d'attente toutes les heures Modèle appelant 0 Coût par course : 0 $
Noyau + Expédition
99.84 % à jour · 20,694 URL sur 20,728
Seulement 34 produits rassis ont été aplatis en quelques heures.
Tâche cron manuelle
23.8 % à jour · 2,014 URL sur 8,474
6,460 rendu obsolète le plus ancien : il y a 7 mois
01

Ce que Flatten fait pour un site traduit

GlobalLink Web traduit le site web de ses clients dans toutes les langues dans lesquelles ils vendent leurs produits. Le navigateur de l'utilisateur récupère la traduction au fur et à mesure que la page se charge. Les robots d'exploration sont un autre problème : de nombreux robots de recherche et d'IA lisent le code HTML et partent sans exécuter les scripts de la page, ils verraient donc l'original non traduit.

Sans aplatir

Un robot d'exploration demande la page allemande.

  • Il récupère le code HTML source, la traduction restant à appliquer.
  • il n'exécute pas le script qui l'applique
  • Il indexe du texte anglais sur une URL allemande
  • Le site traduit est donc quasiment inexistant dans les résultats de recherche allemands.

✓ Avec Aplatir

La traduction a déjà été effectuée.

  • Chaque URL traduite est rendue une seule fois, à l'avance.
  • Le code HTML final est mis en cache, déjà en allemand
  • Les robots d'exploration reçoivent instantanément cette copie en cache.
  • La recherche et les réponses de l'IA affichent la page en allemand
non mis en cacheInscrit

L'URL est connue du cache mais n'a pas encore été affichée.

file d'attenteEn attente de rendu

Prêt pour le rendu. Les URL ne se déplacent pas ici automatiquement.

en cacheCourant

Les robots d'exploration reçoivent une traduction de la page telle qu'elle est actuellement.

viciéPéremption

La page source a été modifiée après son rendu, les robots d'exploration reçoivent donc toujours l'ancienne version.

La plateforme détecte les modifications apportées à une page source et marque ses copies en cache comme obsolètes . Il ne les redessine pas automatiquement. Il faut absolument faire quelque chose pour les remettre dans la file d'attente. et les nouvelles pages doivent être enregistrées avant de pouvoir être affichées. Chaque client a besoin de quelqu'un ou de quelque chose qui s'en charge, indéfiniment. Cette page explique qui ou quoi fait cela.
02

Ce que coûte un stock périmé au client

Une page obsolète n'a pas l'air cassée. Il affiche la dernière traduction qu'il a rendue, donc personne ne le remarque jusqu'à ce qu'un client effectue une recherche en allemand et tombe sur le catalogue de la saison précédente.

Faits erronés

Anciens prix, anciens produits

Un produit retiré du marché, le prix du trimestre précédent ou une politique obsolète restent indexés dans toutes les langues, et ce, tant que le cache reste à jour, et pas seulement jusqu'à la prochaine analyse.

Pages manquantes

Nouvelles pages qui n'apparaissent jamais

Une page qui n'a jamais été enregistrée n'est jamais affichée ; par conséquent, la page de lancement ou la nouvelle gamme de produits n'ont aucune présence traduite dans les résultats de recherche.

Réponses de l'IA

Les assistants citent l'ancienne page

Les robots d'exploration IA lisent la même copie en cache, de sorte que les réponses concernant la marque dans d'autres langues sont construites à partir d'un contenu déjà consulté par le client.

Centre commercial et marchand

Une page obsolète vous coûte un marché

Une boutique en ligne envoie à Google Merchant Center un flux de produits pour chaque pays, avec le prix et la disponibilité. Google explore ensuite la page de destination de chaque produit et vérifie que la page correspond au flux. Sur une boutique traduite, le robot d'exploration effectuant cette vérification obtient la copie Flatten.

Si cette copie est obsolète, la page allemande affiche toujours le prix de la saison dernière ou indique qu'un article réapprovisionné est épuisé. Le produit est refusé en raison d'une inadéquation du prix ou de la disponibilité. et elle disparaît des annonces Shopping et des annonces gratuites en Allemagne. C'est le marché que la traduction était censée conquérir.

Si les mises à jour automatiques des articles sont activées, le résultat peut être pire : Google peut réécrire la fiche produit pour qu’elle corresponde à ce qu’il a indexé et afficher aux acheteurs un prix obsolète. Des incohérences persistantes peuvent également mettre en péril l'ensemble du compte Merchant Center.

Flux de produits · DE Tapis de voyage, noir 79,00 € En stock
≠
Page de destination indexée par Google · rendue il y a 7 mois Tapis de voyage, noir 89,00 € Ausverkauft
Refusé · Prix et disponibilité non conformes · Allemagne
Avec le cache à jour, le robot d'exploration voit la page du jour, le flux correspond et l'annonce reste active.
03

Deux caches, un instant, filtrés pour devenir obsolètes

Les deux vues proviennent de l'écran d'aplatissement du produit, avec le filtre d'état défini sur obsolète . Les noms d'hôtes et les chemins ci-dessous sont remplacés par des noms inventés de même forme, et les nombres et les âges sont ceux enregistrés.

Site de logiciels d'entreprise

34 des 20,728 URL
Six domaines de localisation · gérés par Nucleus + Dispatch
URL Dernier état aplati
kr.example.com/events il y a 10 heures Pénurie
kr.example.com/partners/program il y a 8 heures Pérennité
www.example.de/learning/certs dernière heure Stale
www.example.de/legal/addendum Il y a 7 heures - Périmé
www.example.es/events Il y a 10 heures - Ancien site
… 29 heures de plus, pas des mois

Site de commerce électronique de vêtements

6,460 des 8,474 URL
Catalogue de produits · mis à jour par une tâche cron manuelle
URL Dernier état aplati
www.example-shop.com/ il y a 3 mois Pesté
…/de-de/products/travel-mat-black il y a 7 mois Stale
…/de-de/products/trucker-hat-white il y a 7 mois Stale
…/de-de/products/mat-towel-espresso il y a 7 mois Stale
…/de-de/products/headband-red il y a 7 mois Stale
… 6,455 mois supplémentaires, pour la plupart

Instantané à un instant précis. Le nombre d'éléments obsolètes dans un cache sain augmente et diminue tout au long de la journée en fonction des modifications du site et de la mise en file d'attente horaire.

Le cache sain est plus volumineux, réparti sur davantage de domaines et évolue quotidiennement ; de plus, il est presque entièrement à jour. Les pages obsolètes qu'il contient le sont depuis plusieurs heures, car la prochaine exécution horaire les remettra en file d'attente . Sur l'autre site, trois pages sur quatre sont obsolètes, et les rendus se mesurent en mois. Sept mois, c'est largement suffisant pour qu'un catalogue de produits soit complètement transformé.
04

Trois flux de travail, deux horloges, aucun modèle

Maintenir la fraîcheur des stocks se résume à deux tâches, et elles ont des coûts différents. On repère les pages nouvelles ou modifiées en consultant les plans de site du client, ce qui est la partie la plus longue. L'autre remet en file d'attente tout ce que la plateforme a déjà marqué comme obsolète, ce qui nécessite un seul appel. Chacune s'exécute selon son propre calendrier, et un troisième flux de travail rend compte des deux.

Remettre en file d'attente ce qui est déjà obsolète

toutes les heures

Un seul appel déplace toutes les URL obsolètes et non mises en cache vers la file d'attente . Il ne contacte jamais le site du client, donc la protection anti-robots du site ne peut ni le ralentir ni le bloquer. C’est pourquoi les pages obsolètes ici datent de quelques heures plutôt que de plusieurs mois.

aplatir · redessiner_par_statut

Découvrez les pages nouvelles et modifiées

toutes les 6 heures

Pour chacun des six domaines de localisation, le flux de travail lit le plan du site, ne conserve que les pages modifiées au cours des 12 dernières heures (deux fois l'intervalle, afin qu'une exécution tardive ne manque rien), vérifie chacune d'elles par rapport aux règles de portée propres au projet et enregistre ce qui est inclus dans la portée. Les domaines s'exécutent par trois simultanément. Si un domaine tombe en panne, les cinq autres restent opérationnels.

fetch_sitemap › match_scope › jq · urls › add_urls_to_flatten × 6 domaines

Signalez tous les résultats, y compris les échecs.

a réussi ou a échoué

Le rapport ne constitue pas une étape finale du processus, car une étape finale ne s'exécute que si tout ce qui précède a fonctionné, et elle resterait silencieuse précisément sur les exécutions qui comptent. Il s'agit d'un flux de travail distinct, déclenché par la fin des deux autres, qu'ils aient réussi ou échoué , et il publie les données sur le canal Slack de l'équipe.

jq · composer › slack · publier
appel d'outil via Nucleus étape de données locales sur la boîte
27 étapes réparties sur trois flux de travail, et aucune d'entre elles n'appelle un modèle . La notion de fraîcheur a une réponse correcte : une page est soit obsolète, soit à jour, et soit dans la portée, soit hors de la portée. Les outils calculent cette réponse de la même manière à chaque fois. Le planning est horaire car son fonctionnement n'engendre aucun coût supplémentaire. Puisqu'aucune étape ne nécessite de modèle ou de système local, ces mêmes étapes pourraient tout aussi bien être construites sous forme de flux de travail Nucleus dans le cloud. Il s'exécute ici sur Dispatch, où il appelle les mêmes outils Nucleus.
05

Une lacune dans le produit, comblée par le terrain

Examinez à nouveau le fonctionnement de ces flux de travail. Flatten marque les pages comme obsolètes mais ne les remet pas en file d'attente, et il ne peut pas trouver de nouvelles pages dans un plan de site par lui-même. Normalement, il s'agit d'une demande de fonctionnalité qui reste en attente dans une liste de tâches pendant que l'équipe produit décide si suffisamment de clients en ont besoin. Avec Nucleus, les équipes en contact direct avec les clients ont comblé elles-mêmes le fossé, grâce à des outils et des flux de travail plutôt qu'à du code produit. Chaque essai réalisé depuis a apporté des preuves.

01 · le champRepérez l'écart

Les pages traduites d'un client deviennent obsolètes et rien dans le produit ne permet de les remettre dans la file d'attente.

02 jours, pas une sortieRemplissez-le d'outils

L'API propre au produit est déjà disponible dans Nucleus en tant qu'outil. Un flux de travail les organise, et rien n'est inclus dans le produit.

03 · de vrais clientsTestez-le en production

Il fonctionne pour les clients qui en ont besoin immédiatement, chaque exécution et le résultat de chaque étape étant enregistrés.

04 · l'équipe produitConstruisez-le, avec les données

Engagez-vous dans le développement de cette fonctionnalité en sachant qui en a besoin, à quelle fréquence elle doit être exécutée et où elle présente des dysfonctionnements, ou bien renoncez-y.

Ce que le procès a démontré, c'est qu'un spéculateur n'aurait pas eu
On a observé qu'une mise en file d'attente horaire maintenait un cache de 20 000 URL à jour à 99.84 %. Un site comparable sans cela affichait un taux de 23.8 %.
Cette fonctionnalité nécessite donc la remise en file d'attente automatique des pages obsolètes au sein même du produit. Le tarif horaire suffit souvent, et cela ne coûte presque rien.
Nous avons constaté que la protection anti-robots d'un client rejette catégoriquement les requêtes de plan de site, ce qui entraîne l'échec de la découverte tandis que la remise en file d'attente continue de fonctionner.
Cette fonctionnalité nécessite donc la découverte et la remise en file d'attente en tant que tâches distinctes. La remise en file d'attente ne devrait jamais dépendre de l'accès au site du client.
On a constaté que le plan de site d'un client ne répertorie que les URL de la langue source, alors que ses 13 langues résident sur des sous-domaines distincts.
Cette fonctionnalité nécessite donc une fonction de découverte qui associe chaque URL source à chaque hôte de localisation, et pas seulement aux URL répertoriées dans le plan du site.
Les rendus ayant échoué ne comportent aucun statut HTTP, et certaines pages marquées comme ayant échoué se chargent correctement dans un navigateur normal.
Cette fonctionnalité nécessite donc une véritable vérification des pages défaillantes avant toute action. Un filtre d'état ne peut jamais les détecter.
On a observé une fenêtre de découverte égale à l'intervalle d'exécution, avec des pages manquantes chaque fois qu'une exécution démarrait en retard.
Cette fonctionnalité nécessite donc une fenêtre de rétrospection d'environ deux fois l'intervalle, ce qui ne peut être déterminé que lorsque la tâche s'exécute selon des planifications réelles.
C'est un avantage qu'il est facile de négliger. Nucleus permet aux personnes les plus proches des clients de répondre dès maintenant à un besoin spécifique, sans attendre de feuille de route . Un client possédant 13 sous-domaines régionaux et un sitemap contenant uniquement le code source a bénéficié d'une étape supplémentaire dans son flux de travail, et non d'une escalade produit. Entre-temps, l'équipe produit obtient ce qu'un ticket de backlog ne lui apporte jamais : une solution fonctionnelle, testée sur de vrais clients, dont les cas limites ont déjà été identifiés. L'entreprise peut développer cette fonctionnalité en sachant qu'elle est nécessaire, ou la laisser de côté si elle s'avère être de niche.
06

Les échecs d'une tâche cron sont silencieux. Ce ne sont pas le cas.

Une tâche cron ne tombe pas en panne faute de planification. Cela échoue car, une fois que l'ingénieur est parti, rien n'indique à personne quand le travail cesse de fonctionner. Sur la capture d'écran ci-dessus, des rendus datant de sept mois montrent que personne n'a été informé.

La configuration traditionnelle

Un script sur un serveur, écrit une seule fois

  • propriété de son auteur, jusqu'à ce qu'il passe à autre chose
  • Une erreur est consignée dans un fichier journal, le cas échéant.
  • Une nouvelle langue, un plan de site déplacé ou une nouvelle protection contre les robots impliquent une modification du code.
  • Elle détient directement les identifiants, sans le nom de personne.
  • vous le découvrez grâce au décompte des jours, des mois plus tard.
Noyau + Expédition

Des flux de travail que tout le monde peut lire et modifier.

  • Les entrées et sorties de chaque exécution et de chaque étape sont conservées et visualisables.
  • Chaque résultat, y compris les échecs, est publié sur la chaîne de l'équipe.
  • Une nouvelle localisation correspond à une étape copiée, et un nouvel horaire à une modification.
  • Chaque appel est autorisé et enregistré par Nucleus en tant que propriétaire désigné.
  • Vous le découvrirez dans l'heure, sur Slack.
07

La création d'un nouveau site ne nécessite pas d'ingénieur.

Comme les outils Flatten se trouvent dans Nucleus et que le moteur est Dispatch, l'ajout d'un client se résume à une brève conversation. Un agent d'intégration demande ce qu'il ne peut pas deviner avec certitude, comme la clé du projet et le plan du site, au lieu de les déduire. L'enregistrement des URL nécessite ensuite une seule approbation humaine pour l'ensemble du lot, quel que soit le nombre d'URL qu'il contient (plusieurs milliers).

Depuis un ordinateur portable

Claude

Intégrez ce site à Flatten, vérifiez ses plans de site toutes les six heures, remettez en file d'attente les pages obsolètes toutes les heures et publiez les résultats sur #web-ops.
J'ai besoin de la clé du projet et de l'URL du plan du site. Je ne tenterai pas de deviner non plus. Une fois que je les aurai, je lancerai l'importation à blanc afin que vous puissiez vérifier le nombre avant approbation.
Depuis un téléphone

L'application Dispatch

Approbation requise · Enregistrez 3,198 URL pour XXXX-XXXX-XXXX-XXXX

Un seul robinet approuve le lot. À partir de là, vous pouvez copier le flux de travail défini pour le client suivant, modifier une planification ou suivre en direct les étapes de chaque exécution.

Depuis la chaîne

Mou

/flatten-requeue exemple-boutique
412 URL obsolètes en attente de réaffichage.

Une commande slash lance le même flux de travail que celui exécuté par la planification, de sorte que toute personne constatant un problème peut le corriger depuis le canal.

C'est là tout l'intérêt de la comparaison. Le cache, pourtant sain, n'a pas été maintenu en bon état par un meilleur ingénieur écrivant un meilleur script. Son bon fonctionnement est assuré par une automatisation que toute personne y ayant accès peut configurer, lire et modifier , fonctionnant gratuitement selon un calendrier précis et signalant ses propres défaillances. Les clients reçoivent des pages traduites qui restent à jour, et le travail ne dépend plus de quelqu'un qui a le temps d'écrire et de maintenir le code.
La différence

99.84 % à jour, maintenu ainsi par une configuration que n'importe qui peut modifier.