Remember that Go vs D MQTT thing and how we wondered about dmd vs gdc?
Sean Kelly
sean at invisibleduck.org
Fri Mar 7 14:29:48 PST 2014
On Friday, 7 March 2014 at 18:58:18 UTC, Russel Winder wrote:
> On Fri, 2014-03-07 at 16:53 +0000, Sean Kelly wrote:
> […]
>> 68K connections is nothing. I'll start getting interested when
>> his benchmarks are 200K+. Event-based systems in C can handle
>> millions of concurrent connections if implemented properly.
>> I'd like to believe vibe.d can approach this as well.
>
> There used to be a 100k problem, i.e maintaining more than 100k
> active,
> that means regularly causing traffic, not just being dormant
> for a few
> centuries, but so many frameworks can now support that , that
> it has
> become a non-metric. I don't know if Spring, JavaEE, can handle
> this but
> on the JVM Vert.x certainly, I suspect Node.js can as well.
> Vert.x is
> caliming to be able to handle millions of active connections.
>
> I suspect it is now at the stage that the OS is the bottle neck
> not the
> language of the framework.
I think the biggest issue at very large number of connections is
memory use. In fact, I don't expect even vibe.d to scale beyond a
few hundred K if it allocates a fiber per connection. It would
have to use a free list of fibers and make a top-level read
effectively release the current fiber into the free list.
Scaling at this level in C generally meant retaining little to no
state per connection basically by necessity.
More information about the Digitalmars-d
mailing list