Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Using RabbitMQ with nServiceBus (for C#) vs using Amazon SQS

If I understand correctly, I can use nServiceBus as a "framework" and / or a wrapper around RabbitMQ My preference of RabbitMQ is being able to use it on linux machines

Background

I have an application that enables people to upload images. These images will require thumbnails.

Our application is predominantly asp.net (c#)

My idea is to do the following:

  • upload the full size images to S3 (or whatever storage service)
  • create a "message" that has input storage key, output storage key, width, height - and add to queue.
  • there will be a linux server acting as a worker (windows licensing constraint) that reads the messages from the queue, and does the actual resizing
  • new image will be placed on S3, defined by output key of received message

I could use Amazon SQS i suppose, but I wanted to explore the possibility of nServiceBus with RabbitMQ for transport.

Does anyone have any further info on doing this? I saw this on GitHub: http://github.com/machine/machine.mta/tree/master/Source/NServiceBus.Unicast.Transport.RabbitMQ but was wondering how this could be used?

What would your preferred way of approaching this be?

like image 205
Alex Avatar asked Oct 14 '10 14:10

Alex


People also ask

What is the difference between NServiceBus and RabbitMQ?

Whats the difference between the two: While NService Bus is a service bus platform which means its an orchestrator but underlying transport is using decentralised like MSMQ, Rabbit MQ on the other hand is a Broker base platform.

What is NServiceBus used for?

NServiceBus is a commercial messaging framework provided by Particular Software. It's built on top of Azure Service Bus and helps developers focus on business logic by abstracting infrastructure concerns. In this guide, we'll build a solution that exchanges messages between two services.

What is RabbitMQ C#?

RabbitMQ is an increasingly popular open source, fast message broker written using Erlang and built on the Open Telecom Platform framework. It implements the Advanced Message Queuing Protocol (AMQP) for exchanging data between processes, applications, and servers.


1 Answers

Alex, I use SQS very often, but there are other services that could be useful for you. You may Google 'Cloud Message Queue' and find plenty of those.

like image 173
Hans Eraas Avatar answered Oct 26 '22 15:10

Hans Eraas