Re: Throttling and blocking in cap/message-passing systems?

"Karp, Alan H" <[email protected]> Thu, 9 Jul 2015 15:47:57 +0000
Newsgroups gmane.comp.capabilities.general
Message-ID <8AD823089998C849A832D86972E69CD55B8E863A@G4W3222.americas.hpqcorp.net>
Rob Meijer wrote:
> 
> The idea would be that the messaging subsystem would keep track of disk
> cache statistics and throttle the normally asynchronous message passing
> by temporary making send operations block.
>
A standard throttling approach is to give each sender a number of credits, each of which represents permission to send a message.  The credit is essentially a use-once capability to write to a particular buffer on the receiving side.  When the receiver empties the buffer, it returns to the sender a new capability to that buffer.  This approach maintains the non-blocking semantics, because the sender doesn't even try to send a message if it doesn't have a credit.

I can ask my colleague for reference if you're interested.

________________________
Alan Karp
Principal Scientist
Enterprise Services, Office of the CTO
Hewlett-Packard Company
1501 Page Mill Road
Palo Alto, CA 94304
1 (650) 386-4568
http://alankarp.parseapp.com