Background Image
EXPÉRIENCE DE L'UTILISATEUR

Conception de systèmes distribués

Tim Rayburn headshot

September 22, 2021 | 3 Lecture minute

Presque tout ce que nous faisons aujourd'hui avec les ordinateurs, des messages Teams et des chats vidéo à l'achat de la dernière crypto-monnaie en vogue comme DOGE ou SHIB, se produit exclusivement grâce aux ordinateurs interconnectés. Chez Improving, nous pensons que "Notre succès est le résultat de notre implication collective", et c'est vrai, notre ère moderne existe grâce à dessystèmes distribués.

Malgré cela, la plupart des gens n'ont qu'une très vague idée de la manière dont les groupes d'ordinateurs accomplissent leur travail ensemble. Cet article va tenter d'expliquer certaines de ces idées de base, et comment elles sont vraiment similaires à la façon dont les humains communiquent (bien que les ordinateurs soient plus rapides).

Virtual Meeting

Lorsqu'il s'agit d'ordinateurs qui communiquent entre eux, le premier et le plus important concept consiste à déterminer si la méthode de communication est synchrone ou asynchrone. Lorsque nous avons appris aux ordinateurs à communiquer, nous avons commencé par la communication synchrone. Nous leur avons appris à "décrocher le téléphone" et à parler à un autre ordinateur. C'est le modèle de communication sur lequel repose le World Wide Web, et il fonctionne. Nous connaissions la puissance du téléphone, alors laisser les ordinateurs se parler de cette manière serait certainement mieux que tout ce à quoi nous pouvions penser, n'est-ce pas ?

Open Mailbox

Cependant, la forme de communication la plus puissante pour les ordinateurs n'est pas calquée sur le téléphone, mais étonnamment sur le bon vieux service postal. La distribution du courrier est asynchrone. Vous écrivez un message et l'envoyez, sans jamais savoir si vous recevrez une réponse. Bien sûr, vous espérez bien sûr, surtout s'il s'agit d'une facture adressée à quelqu'un qui vous doit de l'argent. Dans ce cas, vous pouvez même espérer que vous recevrez une réponse.

La communication asynchrone est si puissante pour les ordinateurs en raison de leur rapidité. Quelqu'un peut répondre à un appel téléphonique à la fois, mais il ne peut pas répondre à 1 000 000 d'appels téléphoniques à la fois. Avec la communication asynchrone, vous pouvez laisser les messages s'accumuler et y revenir plus tard. Si l'on y réfléchit bien, la messagerie vocale n'est qu'une solution de repli asynchrone pour le téléphone lorsque le destinataire est trop occupé pour répondre à l'appel.

À partir de ces deux formes de communication de base, la lettre et l'appel téléphonique, nous sommes parvenus à créer de vastes systèmes qui permettent des expériences incroyables. Examinons quelques technologies que nous utilisons tous les jours et la manière dont les informations ci-dessus permettent d'atteindre les objectifs fixés :

Commerce à grande échelle

Si vous ne pouvez vendre que 50 gadgets et que tout le monde les veut, vous avez intérêt à disposer de bons systèmes pour répondre à la demande. Qu'il s'agisse de la vente par Ticketmaster du prochain concert d'Usher ou de la vente par Hasbro de cartes Magic : The Gathering en édition limitée, ce problème est très courant.

Bien que l'on puisse penser qu'il s'agit d'un cas idéal de traitement synchrone, il s'agit en fait d'une communication asynchrone. Lorsque vous indiquez que vous souhaitez ajouter quelque chose à votre panier, ces plateformes ne vous répondent pas immédiatement par un "oui". Au lieu de cela, elles envoient une demande pour bloquer temporairement l'inventaire pour vous. Vous disposez ensuite d'une petite fenêtre de temps pour passer à la caisse avant que le produit ne soit remis en stock. Tout cela est géré par une messagerie asynchrone.

Médias en continu

Entre Netflix, Spotify, Amazon's Prime Video et d'autres, ces services représentent aujourd'hui la part du lion du trafic sur la plupart des réseaux. Il y a quelques années, une conférence technologique populaire a révélé que ses participants avaient téléchargé 11 téraoctets de données de Netflix en l'espace de trois jours seulement.

Il est choquant de constater que presque tous ces services fournissent ces données de manière synchrone. Étant donné que chaque consommateur se trouve à un point différent du flux de données, il est tout simplement préférable de traiter ces données sous la forme de milliers et de milliers d'"appels téléphoniques" individuels avec les différents consommateurs. C'est le seul moyen de garantir une expérience de la plus haute qualité à leurs clients. En interne, ces systèmes sont largement asynchrones, mais le dernier kilomètre est synchrone.

People Pointing at Laptop

Pourquoi avons-nous besoin de le savoir ? Parce que les solutions les plus robustes sont des modèles mixtes. Il n'existe pas de solution unique adaptée à toutes les situations. La communication synchrone offre une expérience très personnalisée, mais au détriment de la consommation de calcul et de réseau. La communication asynchrone gère très bien les pics de demande, au prix d'une petite quantité de frais généraux sur chaque communication.

Lorsque vous travaillez avec vos technologues pour discuter de la conception de nouveaux logiciels, gardez à l'esprit ces compromis. Discutez de ce qui est le plus important pour vous et pour votre entreprise. Ticketmaster ne veut jamais vendre deux fois la même place, car c'est considéré comme un échec pour eux. Par conséquent, le coût du système asynchrone, qui évite ce problème, vaut la peine d'être compensé. Netflix ne veut jamais que votre vidéo s'arrête pour cause de mise en mémoire tampon, car c'est aussi un échec pour eux.

Dans les systèmes distribués, comme dans toute chose, il faut trouver un équilibre. Discutez de vos objectifs commerciaux avec votre équipe technologique. Croyez qu'elle vous écoutera et vous proposera un système qui répondra à l'expérience que vous souhaitez que vos utilisateurs aient. Contactez nous si vous souhaitez en savoir plus sur ces systèmes ou constituer une équipe technologique pour votre organisation.

Expérience de l'utilisateur

Dernières réflexions

Explorez nos articles de blog et laissez-vous inspirer par les leaders d'opinion de nos entreprises.
Asset - Lead with Purpose: A Guide to Delegation Image 1
LEADERSHIP

Diriger dans un but précis : un guide de la délégation

Un guide pour vous aider à déléguer lorsque vous ne savez pas par où commencer en tant que nouveau dirigeant.