Asynchronicity in D

Sean Kelly sean at invisibleduck.org
Fri Apr 1 16:27:44 PDT 2011


On Apr 1, 2011, at 2:24 PM, dsimcha wrote:

> == Quote from Brad Roberts (braddr at puremagic.com)'s article
>> I've got an app that regularly runs with hundreds of thousands of
>> connections (though most of them are mostly idle).  I haven't seen it
>> break 1M yet, but the only thing stopping it is file descriptor limits and
>> memory.  It runs a very standard 1 thread per cpu model.  Unfortunatly,
>> not yet in D.
>> Later,
>> Brad
> 
> Why/how do you have all these connections open concurrently with only a few
> threads?  Fibers?  A huge asynchronous message queue to deal with new requests
> from connections that aren't idle?

A huge asynchronous message queue.  State is handled either explicitly or implicitly via fibers.  After reading Brad's statement, I'd be interested in seeing a comparison of the memory and performance differences of a thread per socket vs. asynchronous model though (assuming that sockets don't need to interact, so no need for synchronization).


More information about the Digitalmars-d mailing list