Le sujet m'intéresse en raison de la taille de Wikipédia. Il peut être facile de créer des crons pour mettre à jour périodiquement les sitemaps dans un petit site, mais qu'en est-il d'un grand? Donc:
Comment Wikipedia génère-t-il son plan du site?
Le sujet m'intéresse en raison de la taille de Wikipédia. Il peut être facile de créer des crons pour mettre à jour périodiquement les sitemaps dans un petit site, mais qu'en est-il d'un grand? Donc:
Comment Wikipedia génère-t-il son plan du site?
Réponses:
Il est généré dynamiquement par un script PHP. Pour les grands sites, il est probablement préférable de vérifier les modifications et de générer uniquement si quelque chose a changé - ou de le générer uniquement toutes les XY minutes / heures / jours. Cela dépend de l'infrastructure.
Les informations nécessaires sont toutes dans la base de données, donc ce n'est pas une tâche si difficile.
Et voici la preuve: http://svn.wikimedia.org/viewvc/mediawiki/trunk/phase3/maintenance/generateSitemap.php?view=log / http://www.mediawiki.org/wiki/Manual:GenerateSitemap. php
Edit: Ah et cela pourrait aussi être intéressant pour ce sujet:
J'ai été confronté à la tâche de créer un plan du site pour notre site Web il y a quelque temps. Bien que ce ne soit pas la taille de Wikipédia, il s'agit toujours d'une centaine de milliers de pages, et environ 5% d'entre elles sont modifiées, ajoutées ou supprimées quotidiennement.
Comme mettre toutes les références de page dans un seul fichier le rendrait trop volumineux, j'ai dû les diviser en sections. L'index du plan du site pointe vers une page aspx avec une chaîne de requête pour l'une des 17 sections différentes. Selon la chaîne de requête, la page renvoie un fichier XML référençant plusieurs milliers de pages, en fonction des objets qui existent dans la base de données.
Ainsi, le plan du site n'est pas créé périodiquement, il est plutôt créé à la volée lorsque quelqu'un le demande. Comme nous avons déjà un système de mise en cache des recherches dans les bases de données, celui-ci est bien sûr utilisé pour récupérer les données du plan du site également.
Bien que le code de génération de sitemap est maître de base MediaWiki et serait certainement l'option choisie pour produire un plan du site, je ne vois aucune preuve que Wikipedia est réellement activée. Le fichier robots.txt ne pointe vers aucune carte de site.
De plus, tout script de maintenance exécuté sur des projets Wikimedia est contrôlé par marionnette et il n'y a aucune instance de generateSitemap.php dans le référentiel de marionnettes . Enfin, il n'y a pas non plus de plan du site dans les décharges pour aucun wiki Wikimedia , alors qu'il y a des " résumés pour Yahoo ".
Dans tous les cas, Wikipedia exécute des caches Squid devant leurs serveurs d'applications. Ils peuvent contrôler la fréquence de mise à jour de leur sitemap en ajustant l'heure d'expiration de la page.
De plus, tout ce que Wikipedia fait pour l'indexation n'est pas un bon modèle pour votre wiki, car Google a des contacts / offres / gestion spéciaux de Wikipedia, voir un exemple récent .
Je ne suis pas positif, mais je pense qu'ils utilisent l' extension Google Sitemap pour MediaWiki. Ceci est soutenu par la page Wikipedia sur les plans de site .