On 31/07/07, Rajith Attapattu <[EMAIL PROTECTED]> wrote:
>
> I also don't buy the arguments about performance being impacted by
> layering.
>

I am prepared to accept that the performance will not be affected noticeably
by layering, at least not on the client. On the broker, for small transient
messages, resulting in CPU bound performance, it will contribute to the load
undoubtedly. However, framing, threading, synchronization and many other
things will probably be a far greater consideration.

I will say again, that I do like the way the comm layer hides the struc
implementations behind interfaces with a factory, keeping the path open to
the most efficient use of zer-copy direct buffers. The abstraction presented
by the comm layer gets it just about right in terms of being at the right
level, owning an easily understood set of responsibilities, hiding an
implementation behind interfaces, and keeping open as many options as
possible both as the protocol changes and also to experiment with improving
efficiency of implementations.

I think it is a much better starting point for designing a low-level API,
than the proposed API. The proposed API is a superflous layer of jam in the
sandwich.

Rupert

Reply via email to