2

I've been developing an application using the Laravel Framework & have been exposed to the idea of queues for the first time. There are a multitude of tutorials & articles about using queues & examples of what to use for, but I've never seen anyone writing about or highlighting when one does not need to actually use any.

I've seen examples or even forum questions about using say beanstalked or iron.mq for offloading jobs that then take place in a managed manner, I understand the concept; but is there a need to make use of queues if say my application makes use of a mailing service like Postmark or Mandrill? Is there a benefit in that case?

I mean I've tested both & obviously they both queue jobs on their service to allow their service to function; do I need a queue for email when I'm offloading the act of mailing to a service detached from my application. ( my application has not been released into the wild, I do not actually have benchmark type information at present )

How different is giving jobs to ironmq (which still calls an api and sends data) to making a call to say Mandrill by sending data? More to the point; does one need to have a queue like using iron.mq to send mail requests to mandrill which happens to queue stuff too?

3

One of the advantages of using explicit queues, is that you can try again if the receiving system is down for some reason.

Also if there's something wrong with the message you're putting on a queue (as far as the receiving system is concerned), you can have it be put on an error queue, where you can manually fix the message and resend it.

It's all a question of whether or not you have a need for the aforementioned benefits.

  • That's actually very helpful Stefan, I really didn't think about that. Obviously there is no guarantee that an external service will always be available, or that there might be an issue with what is being sent in the first place. Thanks. – twmbx Nov 21 '13 at 11:13
  • You're quite welcome :-) – Stefan Billiet Nov 21 '13 at 11:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.