Quel est le problème du coiffeur endormi?
Dans le monde des ordinateurs, un problème de barbier endormi est le nom fantaisiste utilisé pour identifier une situation dans laquelle les processus sont actuellement en attente, tout en attendant des ressources pour parvenir à un type de résolution. La référence au coiffeur endormi a à voir avec le manque de productivité d'un barbier lorsqu'il n'y a pas de client dans le magasin en attente d'une coupe de cheveux. Cela joue sur le vieux stéréotype du coiffeur qui dort dans son fauteuil jusqu'à ce qu'un client entre par la porte à la recherche d'une coupe de cheveux. Selon cette analogie, le coiffeur se réveille immédiatement après avoir été réveillé par un client, fournit la coupe de cheveux et se rendort dès que le client est sorti, pour ne se réveiller que lorsque le prochain client entre. En termes de fonction informatique, cela concerne les ressources qui sont dans un état inactif jusqu'à ce qu'un processus soit nécessaire, puis retombent dans cet état jusqu'à ce que le processus suivant soit lancé, ce qui crée un décalage entre les processus qui pourrait réduire l'efficacité globale.
Les images utilisées pour décrire le problème du coiffeur endormi concernent un coiffeur qui n'a qu'un client occasionnel, finissant généralement avec un client avant que le prochain client n'arrive, ou du moins atteignant le second client avec un minimum d'attente. Tant que le nombre de clients dans la file d'attente est réduit au minimum et que personne ne s'impatiente et s'en va, on peut dire qu'il n'y a pas de problème et que le coiffeur solitaire répond à la demande. En même temps, si le magasin est inondé de clients demandant des coupes de cheveux mais que le coiffeur est déjà engagé, il est fort probable que certains de ces clients n’attendront pas et partiront.
Le même type de problème de coiffeur endormi peut être observé dans différents types de traitement impliquant une technologie informatique nécessitant une mise à niveau pour pouvoir répondre à une demande accrue. Par exemple, si le centre d’appels d’une entreprise est inondé d’appels entrants de clients qui souhaitent obtenir de l’aide maintenant, mais que le nombre de représentants du service clientèle n’est pas suffisant pour répondre à la demande, une partie de ces clients abandonnera ses appels et éventuellement rechercher une relation avec un concurrent. De la même manière, dans les systèmes de traitement d’un réseau informatique, si les ressources consacrées au traitement ponctuel des tâches sont insuffisantes pour le nombre de tâches impliquées, certains de ces processus entraînent ce que l’on appelle une temporisation, voire même mettre fin. Le résultat final est une perte d'efficacité qui peut à son tour ralentir d'autres processus qui devaient suivre ceux qui ont expiré.
Il n'y a pas de bonne façon de gérer un problème de coiffeur endormi. Selon la configuration de l'équipement informatique utilisé, il peut exister des moyens d'implémenter de nouvelles approches permettant de réaffecter des ressources afin que les tâches puissent être gérées avec une plus grande efficacité. Par exemple, la reconfiguration des services de standard automatique pour un centre d'appels peut permettre de gagner du temps en acheminant automatiquement l'appel suivant dans la file d'attente vers un représentant sans qu'il soit nécessaire de prendre manuellement une autre ligne en attente. Tout en ajoutant des barbiers supplémentaires dans un magasin, il est plus facile de traiter les clients à la recherche d'une coupe de cheveux, l'ajout de ressources supplémentaires en termes de lignes entrantes et de postes de travail du service clientèle permettant de gérer le volume d'appels faciliterait également la gestion du volume d'appels sans provoquer de nombreux retards. . De la même manière, le développement de ressources sur un réseau pour prendre en charge des fonctions et processus supplémentaires peut également aider à réduire au minimum les problèmes de coiffeur et à permettre au système de fonctionner plus efficacement.