Il y aura donc un gros changement dans les protocoles utilisés entre les serveurs et les clients qui passeront de l'UDP au HTTP.
Un peu de technique...
Jusqu'à présent, tous les messages entre les deux parties étaient envoyés en UDP par un système de message appelé LLMessageSystem API. Pour reprendre Zero Linden, chaque message avait un fichier appelé template qui décrivait le format et codait l'information. Mais lorsque ce fichier était modifié, l'ensemble du système client et serveur devait être mise à jour. C'est pour cela que l'on ne pouvait pas mettre à jour qu'une partie du client sans devoir télécharger l'ensemble.
De plus, si l'UDP est plus rapide que le HTTP comme protocole, chacun de ces messages devait envoyé en avance le template avant de transmettre le message. La longueur de ces messages était aussi très limitée, obligeant le serveur ou le client a faire plusieurs requêtes pour un seul message.
Les "message templates" seront donc remplacés par des messages LLSD qui se décrivent par eux-mêmes lorsqu'ils circulent et l'UDP sera remplacé par le protocole HTTP. Cela réduira beaucoup le lag et les pertes de paquets (dues à des requêtes non abouties) entre les serveurs, c'est une énorme avancée.
Autre projet qui en en bénéficiera, l'interface utilisateur par Internet qui permettra de gérer son profil, ses groupes, etc. par des pages Internet.
Les changements dans les mises à jour
L'arrivée du HTTP symbolise aussi la fin des mises à jour fixes. Il restera toujours des maintenances, ne serait-ce que pour les bases de donnés mais elles seront moins longues. Les mises à jour seront dorénavant testées sur une partie du Main Grid et non plus sur la Beta. Cela permettra aux développeurs de mieux tester et identifier les problèmes. Jusqu'à aujourd'hui, les développeurs devaient sortir une mise à jour sans savoir comment elle réagirait sur une telle quantité de données et avec autant de connectés. Demain, ils pourront progressivement étendre la mise à jour et voir si elle est supportée. En cas de problème, un roll-back sera fait sur les régions concernées par la mise à jour.
Pour les propriétaires d'îles privées: ils pourront choisir si ils veulent la mise à jour automatique ou si ils préfèrent le faire manuellement. Dans le futur, les propriétaires pourront aussi définir le délai des mises à jour: tous les jours, bi-hebdomadaire...sachant que les mises à jour majeurs seront mensuelles ou bi-mensuelles. Différentes versions seront proposées comme "mainland" ou "voice beta". Mais ils gardent toutes leurs libertés dans leurs choix.
Pour les résidents: ils accepteront ou non de faire partie du Het-Grid (Heterogeneous Grid) par une option dans le menu Préférences. Si ils acceptent, ils seront avertis des mises à jour lorsqu'ils passeront sur une carte en test et choisiront de la faire ou pas. Cela ne changera rien si vous refusez, vous pourrez continuer a aller sur la carte.
Les mises à jour serveur seront faites par des "rolling update" régulières.
Plus d'infos ?
Ce soir une réunion est prévue à 22h (heure de Paris) avec Zero Linden et Sabin Linden qui ont tous les deux travaillé (avec Babbage Linden) sur le programme Message Liberation. Le rendez-vous est
ici.
Vous pouvez aussi relire
le message initial de Babbage Linden lors de son lancement en Mars, ou ceux de
Zero et
Sabin ces derniers jours.