Je recherche une bibliothèque ou un framework d'acteur facile à apprendre pour Python 2.x. J'ai essayé Candygram et Twisted mais je ne les aimais pas. J'aimerais quelque chose qui sera facile à étendre à suppero Greenlet (= python sans pile).
Que suggérez-vous?
Pour créer des acteurs avec gevent , utilisez une sous-classe Greenlet avec l'instance intégrée gevent.queue.Queue utilisée comme boîte de réception. Pour lire un message dans la boîte de réception, il suffit de get () dans la file d'attente. Pour envoyer un message à un acteur, mettre dans la file d'attente de cet acteur.
Lisez à propos de la sous-classification de Greenlet ici .
Si vous avez besoin d'aide pour écrire la classe d'acteur, n'hésitez pas à demandez la liste de diffusion .
Découvrez pulsar , c'est un framework simultané pour python qui utilise le modèle d'acteur comme source d'exécution parallèle.
Je sais que cette question est un peu datée, mais voici une autre ressource d'acteur pour python maintenant:
https://github.com/godaddy/Thespian
La documentation peut être trouvée ici:
http://godaddy.github.io/Thespian/doc/
[~ # ~] modifier [~ # ~] :
L'auteur principal de cette bibliothèque a depuis quitté GoDaddy et a bifurqué le dépôt:
https://github.com/kquick/Thespian
De nouveaux documents peuvent être trouvés ici:
PARLEY et Pykka sont répertoriés sur ce page Modèle d'acteur Wikipedia donc vous voudrez peut-être en examiner un de celles.
Pykka semble être activement développé (1.0.1 publié en décembre 2012) tandis que PARLEY n'a pas eu de version depuis 2007 (et est toujours répertorié comme bêta). Pykka prétend être inspiré par Akka uniquement dans le nom n'est pas simplement un port python.
Ce tutoriel a un exemple simple et fonctionnel pour les acteurs avec gevent. Fondamentalement, c'est exactement comme Denis l'a déjà décrit.
Je voudrais jeter un oeil à ceci: https://bitbucket.org/fzzzy/python-actors
C'est à peu près un clone direct du modèle d'acteur d'Erlang, avec une file d'attente de messages "enregistrés", des liens et tout.