Journal du Net > Solutions > DSI >  DSI > Interviews > DT de Villanao.fr
Interview
 
17/07/2007

Erwan de Cadoudal (Villanao.fr) : "Nous avons limité Ajax aux parties du site où les moteurs d'indexation ne vont pas"

Multilinguisme, optimisation, virtualisation, ETL et référencement : le directeur technique du jeune site de location de vacances revient sur ses choix et sur les précautions à prendre avec Ajax.
  Envoyer Imprimer  

 
Erwan de Cadoudal (Villanao.fr)
 
 
 

Pouvez-vous nous donner quelques chiffres concernant Villanao.fr ?

C'est un site d'agrégation d'offres de location de vacances en Europe et dans le bassin méditerranéen publiées par nos partenaires. Ces derniers sont au nombre de 6 pour le moment, pour près de 100 000 annonces agrégées. Notre valeur ajoutée est donc de présenter un comparatif des différentes offres selon des critères de recherche.

Villanao.fr a été lancé au niveau technique en janvier-février dernier, et il est opérationnel depuis cette date. Il se décline en 7 langues que sont le français, l'anglais, l'allemand, l'italien, l'espagnol, le hollandais et le portugais. En terme de volumétrie de trafic, c'est 5000 à 6000 internautes quotidiennement et 1,6 millions de pages vues par mois.

En quoi consiste l'architecture du site ?

La plate-forme Web est hébergée par Claranet. Elle comprend au total cinq serveurs dont deux frontaux Web sous IIS de Microsoft, deux serveurs de base de données en cluster SQL Server, ainsi enfin qu'un contrôleur de domaine. L'exploitation des différents serveurs est assurée en interne.

Et qu'en est-il de votre choix en matière de développement ?

Le site est développé en C# avec .Net et l'environnement de développement de Microsoft Visual Studio 2005. Ce choix des technologies Microsoft, au terme d'un benchmark des solutions, a été motivé par la bonne maturité de l'outil et de la version 2 de la plate-forme .Net. En outre, nous ne souhaitions pas nous orienter vers un langage de script comme PHP. L'autre combinaison vers laquelle nous aurions pu nous tourner était Java et J2EE. Mais le choix était piloté par les compétences des équipes en internes, plus expérimentées dans les technologies Microsoft.

"Nous faisons appel à des outils de script comme Ruby, Rake ou encore Selenium"

Avez-vous également envisagé l'utilisation d'applications Open Source ?

Le choix de Microsoft n'est pas incompatible avec le recours à des outils du Libre. Nous utilisons ainsi de l'Open Source pour le contrôle du code avec SVN [ndlr : aussi appelé subversion]. Nous avons également mis en place l'outil d'intégration continu CruiseControl, qui permet d'orchestrer différentes tâches de développement, comme recompiler le site en continue, sans régression.

Les tests unitaires que nous avons définis sont rejoués par le logiciel qui en cas d'anomalie nous alerte. Sur ce volet de tests unitaires, nous utilisons également en Open Source, NUnit. Enfin, nous faisons appels à d'autres outils de type script comme Ruby, Rake ou encore selenium.

Comment a été développé le mode de recherche par carte dynamique ?

Nous nous appuyons sur un partenariat avec Viamichelin qui produit les fonds de carte, par-dessus lesquels nous avons redéveloppé une couche supplémentaire en C# permettant d'indiquer les locations, représentées par des maisons et des bulles qui sont un ensemble de maisons.

Est-ce qu'avec l'augmentation du nombre d'offres, une représentation graphique ne risque pas de souffrir de ralentissements ?

Il n'y a en théorie aucune limite au nombre d'offres que nous pouvons faire figurer par ce biais. Beaucoup de pré-calculs sont réalisés en backoffice. Même si la carte s'affiche avec 18 000 locations sur la Côte d'Azur, il n'y aura pas de lenteur particulière car elles figureront comme des agglomérats d'offres. Toute la technologie réside dans la détection de la proximité des offres.

Quant à la recherche avancée ou simple depuis la home, qui se fait sur la base d'une cinquantaine de critères, sa particularité est de pouvoir recompter en temps réel les offres. Nous avons pour cela ajouté une couche intermédiaire entre le site et la base de données SQL.

Comment gérez-vous le multilinguisme du site ?

7 langues différentes c'est en effet beaucoup, mais nous avons construit dès l'origine une application qui prenait finement compte cette particularité. Du coup, l'architecture a été découpée de telle sorte que les éléments de la base de données et les éléments de présentation soient bien isolés. Nous ne dupliquons pas l'information. Les données sont codifiées pour pouvoir être restituées quelle que soit la langue. Pour les traductions, nous nous reposons la plupart du temps sur les ressources internes, mais faisons parfois appel aussi à des prestataires.

"L'intégration des données partenaires se fait par le biais d'un ETL"

Disposez-vous d'un outil de gestion de contenu pour gérer ces offres multilingues ?

Pour le moment, nous n'en avons pas. Il n'existait pas de réel besoin à l'origine, ce qui est en train de changer. Nous n'avons pas encore arrêté notre choix, mais nous nous orienterons certainement vers une application Open Source. Le CMS nous permettra de gérer les fiches touristiques dans plusieurs langues. Il aura un rôle de consolidation, de consultation et de publication de ces fiches.

Villanao.fr étant un agrégateur d'annonces, comment se fait l'intégration de données avec vos partenaires ?

L'intégration se fait par le biais d'un ETL, en l'occurrence SSIS [ndlr : SQL Server Integration Services] de Microsoft. L'outil se branche sur les données de nos partenaires, souvent stockées sur des sites FTP. Au moins une fois par jour, nous nous connectons à ces données principalement en XML, ne serait-ce que pour actualiser les disponibilités des annonces. Elles sont ensuite chargées dans la base de données.

Pour le choix de la solution d'ETL, nous avons réellement fait un benchmark poussé. Les critères qui l'ont motivé étaient le bon support du XML, mais aussi d'autres formats plus classiques. En outre, SSIS se connectait bien à notre base de données SQL. Enfin, ses performances répondaient à nos attentes. Lorsqu'on doit traiter 100 000 offres et leur disponibilité, on ne peut se permettre d'avoir un temps de traitement trop long.

Le référencement est-il une problématique forte du site ?

Oui. Nous avons beaucoup axé le développement pour favoriser le référencement. Nous avons naturellement intégré les préconisations des moteurs au sein du site : construire des Url selon des normes, mettre des balises titre, renseigner la balise meta keywords, ajouter des liens montants et descendants. Villanao.fr dispose en interne d'une équipe dédiée prenant en charge les questions liées au référencement.

Les technologies Web 2.0 ont-elles été discutées lors du développement du site ?

C'est un sujet qui a plus que traversé l'esprit des équipes ayant travaillé sur le projet. Quelques petites fonctionnalités ont été intégrées, mais rien encore de type espace personnalisé ou contributif. Le Web 2.0 sur notre site se résume essentiellement à l'utilisation d'Ajax : au moment du recompte, lors de la recherche sur la carte, ou lorsqu'on ajoute ou retire une offre de sa sélection. L'affichage des photos et la localisation sur la carte se font grâce à de l'Ajax. L'inscription même se fait grâce à un formulaire en Ajax.

Nous avons toutefois limité l'usage d'Ajax aux parties du site où les moteurs d'indexation ne sont pas censés aller. C'était un choix délibéré fait avec l'équipe de référencement, sur la base des recommandations des moteurs, afin qu'Ajax ne nuise pas au référencement.

"Le Web 2.0 sur notre site se résume essentiellement à l'utilisation d'Ajax"

La virtualisation est-elle une option que vous étudiez ?

Nous avons en effet, au moment de la construction de l'architecture physique, envisagé de recourir à de la virtualisation. Le choix a été fait de ne pas retenir cette alternative car notre décision de mettre deux frontaux distincts visait avant tout à garantir la disponibilité. Nous ne souhaitions donc pas virtualiser un serveur pour réunir sur une même machine la partie frontale. Nous avons tout doublé pour une question de redondance des machines. Mais lorsqu'il nous sera nécessaire de disposer de 15 serveurs ou plus, nous adopterons sans doute la virtualisation.

Quel est votre sentiment après ces premiers mois d'exploitation du site ?

Globalement, nous ne regrettons pas les choix fait en termes de technologies. Nous avons conscience que des améliorations des performances doivent encore être faites, à la fois au niveau du code et de l'optimisation de la base de données. Des parties du code source du site vont ainsi être réécrites. Quant à la base de données, il s'agit de l'optimiser. Il n'est nullement question de la refondre. Pour cela, nous faisons appel à un expert externe, qui intervient ponctuellement pour des problèmes de performance ou de structure.

 
En savoir plus
 
 
 

Et qu'en est-il des projets à venir ?

Signer de nouveau partenaires, travailler sur le référencement, point clef du site, et préparer la mise en place de l'outil de gestion de contenu. Une partie touristique importante va également être ajoutée. La montée en charge n'est en tout cas pas un sujet d'inquiétude à l'heure actuelle. Il faudrait que le trafic soit multiplié par dix pour que l'architecture actuelle rencontre des difficultés. Pour suivre la progression, il nous suffit de rajouter des serveurs frontaux. L'architecture a été dès l'origine conçue pour être évolutive.

 


JDN Solutions Envoyer Imprimer Haut de page

Sondage

Votre entreprise évolue-t-elle vers une informatique bimodale ?

Tous les sondages