storm-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Neelesh <>
Subject Re: Is emit() a blocking call? How does queuing works in storm?
Date Fri, 04 Apr 2014 20:42:53 GMT
Though a little old, this link explains it very nicely -
Not sure how much has changed.

On Thu, Apr 3, 2014 at 12:04 PM, Dong Mo <> wrote:

> Dear list,
> What is the semantic of emit() exactly when it returns?
> Does a returned emit mean that the tuple is successfully delivered to the
> destination or that a tuple is delivered to this bolt's local sending queue
> waiting for delivery over the network?
> Is that a blocking function or it has no reliable delivery guarantee at
> all?
> More generally, how does storm's receiving and sending queue mechanism
> works?
> Say I have a boltA emitting words very quickly and it is connected to
> another boltB which do super complicated encryption on the words and thus
> is very slow. In this scenario, where does the "queue" get built up and
> where does the tuple drop happen? Will boltA get blocked also because the
> blocking emit? Or boltA will just emit tuple with reliably delivery in
> sense of TCP and the receiving queue of BoltB will get overflowed?
> Thanks
> -Mo

View raw message