[Spread-users] Spread daemon -8 and -11 errors
Theo Schlossnagle
jesus at omniti.com
Wed Dec 24 08:22:47 EST 2003
On Dec 24, 2003, at 2:43 AM, Chetan Gadgil wrote:
> Ideally, the flow control should be done by the spread library itself.
> If the messages are pushed at a much higher rate than they are pulled,
> the "push" operation (SP_multicast) can become progressively more and
> more expensive in terms of time. i.e. it will take progressively more
> time to return from the call. (This can be made "intelligent" and
> configurable - per group, type of message etc.)
>
> In any case, killing the receiver seems un-intuitive. If at all, you
> should kill the sender.
Chetan,
That would mean that in a stable network of 5 nodes sending "fast"
group communication traffic, someone only needs to connect and not read
to bring the whole conversation to a halt -- it would be a slow reader
and cause everyone else to slow down.
Instead, disconnecting the slow receiver while still maintaining the
group membership semantics of message delivery is a viable and more
reasonable approach.
Basically, the flow control you speak of can be built in the
application level on top of what exists. But, what exists now could
never be built on top of the framework you suggest.
Open groups complicate things as the publishers are not necessarily
participating the in receiving group and may not be privy to the
delivery of sent messages. In closed groups you can implement the flow
control you desire and if you require open semantics, you simple need
to utilize on closed "control group" to implement flow control in an
open group as Spread enforces its delivery semantics _across_ groups.
I will not argue that this task may be too intimidating for a new user
to accomplish and it is reasonable to need such a framework. Also, it
has likely been built n times by n different parties. I suggest an
initiative to build a generic, intuitive flow control library built on
top of lib(t)spread that provides these semantics.
What does everyone thing about that?
// Theo Schlossnagle
// Principal Engineer -- http://www.omniti.com/~jesus/
// Postal Engine -- http://www.postalengine.com/
// Ecelerity: fastest MTA on earth
More information about the Spread-users
mailing list