-
Notifications
You must be signed in to change notification settings - Fork 62
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Actor Troupe, async asks and exception handling. #2
Comments
Thank you for the supportive feedback; it is always nice to know when people find Thespian to be useful. To answer your specific questions:
Thanks again for the feedback, and feel free to follow up on any other questions or concerns; there is also a mailing list (info at http://thespianpy.com/#outline-container-sec-5) for discussions. |
Thank you for the quick turn around and detailed explanations. I think I understand although I will have to try things out more to get a full grasp on tell() + listen(). The use case we have is where the we have limited number of threads that serves user requests. If we have one thread waiting for each of the job served by the actors, we might run out of threads pretty quickly and start to block user requests. I will be waiting for Actor Troupe. :) Currently I am creating a list of actors and sending messages to each in a round robin manner. (Where each actor is essentially copying a portion of a table) Thanks for the pointer on PoisonMessage - this makes a lot of sense. |
Are Actor Troupes still a work in progress? I don't see any references to them other that in the docs and a code comment? |
My apologies for the delay on handling this issue, but at this point I have uploaded a provisional implementation of the troupe functionality, with an example showing how it is used (https://github.com/godaddy/Thespian/tree/master/examples/fibtroupe). This is provisional at this time because I would like to get feedback on the usefulness and possible changes needed before formally adding this to the supported Thespian implementation (with associated documentation). There were many possible approaches, but the current implementation (which is similar to the approach that parkx408 describes) seems to be a good balance of simplicity, functionality, flow-management, and ease-of-use. Please try it out and post any feedback you have. |
Awesome, thanks! I'll be trying it out today. |
Actor Troupe support is now officially part of the 3.4.0 release (https://github.com/godaddy/Thespian/releases/tag/thespian-3.4.0). |
First of all, thanks for sharing the awesome package.
I have been using it to prototype a data pipeline control layer.
I have some experience with Akka which is biasing my expectations but here are some requests/questions.
Note that I am completely new to Python and some questions probably will sound silly.
Three things threw me off a little although I am getting used to them.
One is the blocking nature of ask.
What would be the best way to ask asynchronously?
Do you have some recommended pattern? Is there a plan to support this out of the box?
Second is Actor Troupe.
This would be really useful feature but the documentation on this is seriously lacking.
Could you provide some examples on how to set this up?
Third is Exception handling.
If I wanted to ensure that all exceptions thrown by the child actor can be caught in the parent actor, would I have to simply catch all and send it to the parent? Or should I just not do that?
Thank you.
The text was updated successfully, but these errors were encountered: