Concern: flow control #51
Replies: 1 comment 7 replies
-
Personally, I do not think that unbounded buffers are an issue in this case. I base my reasoning on the following assumption:
It can happen that the size of those buffers temporarily grows before that, The only sources of externally triggered events are the network (producing It is true that some modules might be slower at processing events than others, |
Beta Was this translation helpful? Give feedback.
-
Original concern
Mir's architecture doesn't seem to offer any
convenient mechanism to enable flow control within the system.
Conversely, it seems to demand non-blocking operation for most
event types as well as implicitly rely on unbounded buffers to hold
events waiting for being processed. One can argue that there is
logically an upper bound on the amount of internally-produced
events waiting in the event buffers. However, when it comes to
external events, such as reception of messages from potentially
malicious peer nodes, or potentially blocking or time-consuming
operations, such as appending to a persistent write-ahead log or
processing of ordered requests by the application, there must be
some kind of flow-control mechanism. The event-based architecture
of Mir seems to require implementing some non-trivial inter-module
flow-control protocols in such cases.
(copied @sergefdrv 's post in umbrella discussion #46 )
Beta Was this translation helpful? Give feedback.
All reactions