Spot on. This one was of the areas that we had to workaround.   Remember
that there is a 1:1 relationship of topics to directories and most file
systems don't like 10s of thousands  of directories.  We found on practice
that 60k per machine was a practical limit using I believe EXT3FS


On Thursday, June 13, 2013, Timothy Chen wrote:

> Also since you're going to be creating a topic per user, the number of
> concurrent users will also be a concern to Kafka as it doesn't like massive
> amounts of topics.
>
> Tim
>
>
> On Thu, Jun 13, 2013 at 10:47 AM, Josh Foure <user...@yahoo.com> wrote:
>
> > Hi Mahendra, I think that is where it gets a little tricky.  I think it
> > would work something like this:
> >
> > 1.  Web sends login event for user "user123" to topic "GUEST_EVENT".
> > 2.  All of the systems consume those messages and publish the data
> > messages to topic "GUEST_DATA.user123".
> > 3.  The Recommendation system gets all of the data from
> > "GUEST_DATA.user123", processes and then publishes back to the same topic
> > "GUEST_DATA.user123".
> > 4.  The Web consumes the messages from the same topic (there is a
> > different topic for every user that logged in) "GUEST_DATA.user123" and
> > when it finds the recommendation messages it pushes that to the browser
> > (note it will need to read all the other data messages and discard those
> > when looking for the recommendation messages).  I have a concern that the
> > Web will be flooded with a ton of messages that it will promptly drop
> but I
> > don't want to create a new "response" or "recommendation" topic because
> > then I feel like I am tightly coupling the message to the functionality
> and
> > in the future different systems may want to consume those messages as
> well.
> >
> > Does that make sense?
> > Josh
> >
> >
> >
> >
> >
> >
> > ________________________________
> >  From: Mahendra M <mahendr...@gmail.com>
> > To: users@kafka.apache.org; Josh Foure <user...@yahoo.com>
> > Sent: Thursday, June 13, 2013 12:56 PM
> > Subject: Re: Using Kafka for "data" messages
> >
> >
> > Hi Josh,
> >
> > The idea looks very interesting. I just had one doubt.
> >
> > 1. A user logs in. His login id is sent on a topic
> > 2. Other systems (consumers on this topic) consumer this message and
> > publish their results to another topic
> >
> > This will be happening without any particular order for hundreds of
> users.
> >
> > Now the site being displayed to the user.. How will you fetch only
> messages
> > for that user from the queue?
> >
> > Regards,
> > Mahendra
> >
> >
> >
> > On Thu, Jun 13, 2013 at 8:51 PM, Josh Foure <user...@yahoo.com> wrote:
> >
> > >
> > > Hi all, my team is proposing a novel
> > > way of using Kafka and I am hoping someone can help do a sanity check
> on
> > > this:
> > >
> > > 1.  When a user logs
> > > into our website, we will create a “logged in” event message in Kafka
> > > containing the user id.
> > > 2.  30+ systems
> > > (consumers each in their own consumer groups) will consume this event
> and
> > > lookup data about this user id.  They
> > > will then publish all of this data back out into Kafka as a series of
> > data
> > > messages.  One message may include the user’s name,
> > > another the user’s address, another the user’s last 10 searches,
> another
> > > their
> > > last 10 orders, etc.  The plan is that a
> > > single “logged in” event may trigger hundreds if not thousands of
> > > additional data
> > > messages.
> > > 3.  Another system,
> > > the “Product Recommendation” system, will have consumed the original
> > > “logged in”
> > > message and will also consume a subset of the data messages
> > (realistically
> > > I
> > > think it would need to consume all of the data messages but would
> discard
> > > the
> > > ones it doesn’t need).  As the Product
> > > Recommendation consumes the data messages, it will process recommended
> > > products
> > > and publish out recommendation messages (that get more and more
> specific
> > > as it
> > > has consumed more and more data messages).
> > > 4.  The original
> > > website will consume the recommendation messages and show the
> > > recommendations to
> > > the user as it gets them.
> > >
> > > You don’t see many systems implemented this way but since
> > >

Reply via email to