On Thu, 2009-11-26 at 09:09 +0100, Fredrik Thulin wrote:
> >    Upon receiving Message 100-4, message 180-5, and message 200-7, YXA
> > creates a process, and then just passes the message to client and
> > server transaction.
> Does it? I don't have the time to actually look it up, but my
> recollection is that a "message handler" process is created _after_ the
> transaction layer has decided that it has no ongoing transaction to pass
> the request (ACK or resend)/response to.
> >    Is it better to find if the message is part of client/server
> > transaction first, if yes then just passes the message to the
> > corresponding transaction without spawning a process?
> Perhaps. Not spawning a process means that some central process has to
> do a lot more processing, which will be sequential - read: become a
> bottleneck.

Thinking more of it, I'm sure you are right. And I was too =). A process
is spawned by the transport layer as soon as a message is received from
the network, to parallelize parsing and handling.

Without that, we would parse requests more or less sequential (per
transport+listening process), which would really not get the most out of
SMP machines.


Yxa-devel mailing list

Reply via email to