[Twisted-Python] I found an interisting comment about Twisted vs. Erlang

Alec Matusis matusis at yahoo.com
Tue Sep 29 16:00:40 EDT 2009


> What was your application doing at the time?  Was it idle, heavily
> loaded, somewhere in the middle?  What is the QoS for each client
> connecting to your service?  Are requests being handled in a timely
> fashion?  Do the users of your service perceive a performance
> problem or do you just not like seeing big numbers in the %CPU
> column?  Are performance problems really in Twisted, or are they
> because of suboptimal decisions in application logic/factoring?
> 
> Posting a list like that and suggesting that something is wrong (or
> right, even) with Twisted isn't really productive: there's nowhere
> obvious to go from here to make it better.
> 
> My first glance at those numbers made me think Twisted is awesome
> because it lets you write an application that can actually make full
> use of the CPU power you have, but I'm guessing that's not what
> you're getting at. :)

I am actually not suggesting the performance is bad, it's quite decent. 

Each process is handling about 30,000 clients, using epoll reactor, and is heavily loaded as you can see from S column, which shows "R".  The app broadcasts the messages sent from a client to groups of other clients, and has some other logic.
I posted this twice by mistake, but as I wrote in my second post, the debugging is pretty hard, esp memory leaks... Also, performance debugging- say how much time is spent in each function? FB engineers seems to say that debugging of E is transparent, but I do not have the first hand knowledge. 

> -----Original Message-----
> From: twisted-python-bounces at twistedmatrix.com [mailto:twisted-python-
> bounces at twistedmatrix.com] On Behalf Of Jamu Kakar
> Sent: Tuesday, September 29, 2009 12:48 PM
> To: Twisted general discussion
> Subject: Re: [Twisted-Python] I found an interisting comment about
> Twisted vs. Erlang
> 
> Hi Alec,
> 
> On Tue, Sep 29, 2009 at 12:36 PM, Alec Matusis <matusis at yahoo.com>
> wrote:
> > As you can see from the %CPU column, I have my reasons for concern ;)
> This
> > is current copy and paste from a node with 2x quad core xeon L5420  @
> > 2.50GHz - 1 twistd process per core.
> >
> >  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
> >
> > 24448 nobody     20   0  991m 607m 2452 R   99  4.3  24764:37 twistd
> >
> > 28553 nobody     20   0  909m 453m 2412 R   95  3.2   1346:51 twistd
> >
> > 24640 nobody     20   0 1092m 676m 2452 R   93  4.8  32750:14 twistd
> >
> > 29900 nobody     20   0  802m 362m 2412 R   93  2.6   1180:53 twistd
> >
> > 24279 nobody     20   0  761m 277m 2424 R   42  2.0  13891:58 twistd
> >
> > 32422 nobody     20   0 1381m 962m 2372 R   10  6.9  13241:54 twistd
> >
> > 24210 nobody     20   0  599m 236m 2396 S    4  1.7   9063:29 twistd
> >
> > 29862 nobody     20   0  323m  14m 2384 S    2  0.1  71:53.50 twistd
> 
> What was your application doing at the time?  Was it idle, heavily
> loaded, somewhere in the middle?  What is the QoS for each client
> connecting to your service?  Are requests being handled in a timely
> fashion?  Do the users of your service perceive a performance
> problem or do you just not like seeing big numbers in the %CPU
> column?  Are performance problems really in Twisted, or are they
> because of suboptimal decisions in application logic/factoring?
> 
> Posting a list like that and suggesting that something is wrong (or
> right, even) with Twisted isn't really productive: there's nowhere
> obvious to go from here to make it better.
> 
> My first glance at those numbers made me think Twisted is awesome
> because it lets you write an application that can actually make full
> use of the CPU power you have, but I'm guessing that's not what
> you're getting at. :)
> 
> Thanks,
> J.
> 
> _______________________________________________
> Twisted-Python mailing list
> Twisted-Python at twistedmatrix.com
> http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python




More information about the Twisted-Python mailing list