Contenidos
Conceptos fundamentales del modelo de actor
- Actor:
- Comunicación mediante mensajes:
- Comportamiento del actor:
- Creación de actores:
- Escalabilidad y paralelismo:
Beneficios del modelo de actor
- Tolerancia a fallos: Dado que los actores son entidades aisladas, los fallos en un actor pueden ser manejados sin afectar a otros. Además, los actores supervisores pueden reiniciar actores fallidos de manera controlada.
- Concurrencia segura: Como los actores no comparten memoria y la interacción se realiza mediante mensajes, no es necesario preocuparse por problemas comunes de la programación concurrente, como las condiciones de carrera o los bloqueos.
- Escalabilidad: El modelo de actor es adecuado para sistemas distribuidos y escalables porque se adapta bien a diferentes arquitecturas. Los actores pueden distribuirse fácilmente en múltiples máquinas o núcleos de CPU.
- Simplicidad en la sincronización: No es necesario usar primitivas de sincronización como semáforos o cerrojos. El paso de mensajes secuencial asegura que el actor procese un mensaje a la vez, simplificando la gestión del estado.
Ejemplo de uso de actores en Python
|
1 2 3 4 5 6 7 8 9 10 |
!pip install pykka # install the missing module from pykka import ThreadingActor class MyActor(ThreadingActor): def on_receive(self, message): print(f"Received message: {message}") actor = MyActor.start() actor.tell("Hello, Actor!") actor.stop() |


