Mirai Re-design 2 #46
Replies: 3 comments 6 replies
-
Awesome! I would love to move beyond the dispatcher process if possible. |
Beta Was this translation helpful? Give feedback.
-
My initial idea here was just using a load-balancing algorithm - send tasks to servers which are currently not busy. Of course that doesn't help if all of them are busy and we don't know how long the tasks will last. This is not optimal vs. the dispatcher, but better than the non-dispatcher round-robin behaviour. I want to avoid just replicating dispatcher on a thread to get real benefits. Even using a lightweight inproc transport to send/recv messages between threads doesn't realise the full potential of a threaded approach. The NNG mutex locks are going to be key here... along with special accessor functions to the thread that uses them so everything remains thread safe. This implies that there will be a layer that runs entirely at the C level, inaccessible to R so that everything is kept safe. The new |
Beta Was this translation helpful? Give feedback.
-
Superseded by #74 |
Beta Was this translation helpful? Give feedback.
-
Just so you hear it here first. It is likely possible to eliminate the dispatcher altogether, just through use of the condition variables.
I still need to gather my thoughts on this.
:)
@wlandau
Beta Was this translation helpful? Give feedback.
All reactions