[rabbitmq-discuss] Beginner to message and RabbitMQ
James Spibey
james.spibey at gmail.com
Fri Mar 16 08:46:09 GMT 2012
Hi,
I'm trying to determine if RabbitMQ is the right solution for me, and I was
hoping someone here might be able to help answer a couple of questions?
The app I'm working on is fairly simple, a user creates a listing which
they can then post to a website, but also post links to twitter and
facebook and send out a bulk email to a list of subscribers. At the moment
this is all done synchronously when the user saves the listing through a
web site, but I would like to use a queue to increase the reliability of
the solution.
The following is how I think the new solution might work:-
1) User posts new listing through web app which we commit to database.
2) Listing is reformatted for each of Twitter/Facebook/Email and committed
to the database.
2) Listing is added to a message queue.
3) Background process(es) read the queue and submit to facebook, twitter
and email (SMTP).
4) User is notified if anything went wrong.
So my questions:-
- If this a good idea or am I thinking of queues in the wrong way?
- The listing is committed to the database, but at the moment we also
persist the twitter/facebook/email messages to the database too because
they are formatted differently. Should we continue to do this or should
those just be RabbitMQ messages? I don't suppose we really need to be able
to see those (except for debugging)
- Should the Message which is sent to the Queue be everything which the
consumer needs to process the message or is it acceptable to just send a
primary key and have the consumer (background process) fetch it from the
database?
- How do I notify the client of a failure? Ideally I'd like to be able to
present it back in the web app UI
Sorry for all the questions, I appreciate any help you can give
Regards
James
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20120316/e3862c61/attachment.htm>
More information about the rabbitmq-discuss
mailing list