Programmation concurrente via le modèle d'acteurs

in ULille blockchain4 years ago

Le modèle d’acteurs est un modèle de programmation concurrente, dans lequel la charge de travail est répartie entre des entités s’exécutant en parallèle, les acteurs.

index.png

Les acteurs ?

les acteurs sont des entités isolées donc, n'ont pas d'état partagé, l'information ne peut circuler que sous forme de messages.
Les interactions se font au travers des messages reçus, l'acteur, peut traiter la donnée reçue (calcul ou transformation de la donnée), émettre un message vers d'autres acteurs ou même créer un nouvel acteur dont il sera responsable, une sorte d'acteur fils .

actor_system.png

Akka, l'implémentation du modèle d'acteurs

Akka est un framework pour la construction de systèmes distribués basés sur les acteurs.
Ce dernier est implémenté dans plusieurs langage tel que JAVA, SCALA , dans lequel il jouit d'une grande tolérance au panne avec pour philosophie "let it crash", car grâce à son système de supervision ( acteur fils sous la tutelle d'un acteur père) , Akka permet de gérer la mort prématurée d'acteurs, ce qui rend le système auto-réparant, de plus les acteurs sont purement asynchrones et peuvent être relocalisés de manière transparente (même sur d'autre JVM).

Gestion des erreurs ...

La gestion des erreurs joue un rôle important dans la forte tolérance au panne de ce modèle, comme chaque acteur est le superviseur de ses acteurs fils, il est notifié par un message système des erreurs qui se surviennent chez ses fils, l'ensemble des réactions à ces messages d'erreurs s’englobent dans une stratégie de supervision au seins de l'acteur qui peut l'amener à réagir de manière différente comme; en essayant de redémarrer un fils à l'arrêt ou bien même escaladant l'erreur à sa hiérarchie.

Ce qu'il faut avoir en tête

On peut se représenter les acteurs comme un ensemble de personnes auxquelles on va déléguer des tâches qu'ils vont traités et comme dans une entreprise chaque acteurs et sous la tutelle d'un autre , à qui il doit rendre des compte (remontés des erreurs) , et aussi il doit pouvoir communiquer pour échanger de l'information avec les autres entités (échange de message) ...

Ressources

Support de présentation PDF

Sort:  

Interessant cette partie acteur fils sous la tutelle d'un acteur père qui en a la supervision 👍

Oui , je trouve aussi, ainsi que la relocalisation des acteurs

Congratulations @hiveange! You have completed the following achievement on the Hive blockchain and have been rewarded with new badge(s):

You received more than 50 upvotes.
Your next target is to reach 100 upvotes.

You can view your badges on your board and compare yourself to others in the Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

Check out the last post from @hivebuzz:

The Hive Gamification Proposal for 2022
Saint-Nicholas challenge for well-behaved girls and boys
Feedback from the December 1st Hive Power Up Day

Merci pour cette presentation a nouveau tres claire !

Thanks for your contribution to the STEMsocial community. Feel free to join us on discord to get to know the rest of us!

Please consider delegating to the @stemsocial account (80% of the curation rewards are returned).

Please consider including @stemsocial as a beneficiary to get a stronger support.