Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to post messages to RabbitMQ from SQL Server?

I am creating an application for testing performance between different RabbitMQ clients.
One of them should be SQL Server.
I found out that there exists RabbitMQ component for SQL Server Integration Services (SSIS).
But seems like destination component which can send messages to an exchange is not written yet.
Any ideas how to perform that?
Should it be similar with posting messages to MSMQ?

like image 572
Andrei Karcheuski Avatar asked Mar 02 '16 13:03

Andrei Karcheuski


People also ask

How are messages passed in RabbitMQ?

When a consumer (subscription) is registered, messages will be delivered (pushed) by RabbitMQ using the basic. deliver method. The method carries a delivery tag, which uniquely identifies the delivery on a channel. Delivery tags are therefore scoped per channel.

Can RabbitMQ push messages?

Applications can subscribe to have RabbitMQ push enqueued messages (deliveries) to them. This is done by registering a consumer (subscription) on a queue. After a subscription is in place, RabbitMQ will begin delivering messages. For each delivery a user-provided handler will be invoked.

Does RabbitMQ use a database?

Every RabbitMQ node has a data directory that stores all the information that resides on that node. A data directory contains two types of data: definitions (metadata, schema/topology) and message store data.

How service broker works in SQL Server?

Service Broker provides queuing and reliable messaging for SQL Server. Service Broker is used both for applications that use a single SQL Server instance and applications that distribute work across multiple instances. Within a single SQL Server instance, Service Broker provides a robust asynchronous programming model.


1 Answers

Short disclaimer: I am aware of the title of the question, but based on what you wrote in the comments (as well of course in the question itself), it seems that what you need is a RabbitMQ client that is able to send and receive many messages.

You don't need to write anything, there is RabbitMQ has this already. You can find it here, it's a java client called PerfTest (in the link there are also examples, but of course run it with --help) and (as name ever so obviously suggests) it is used for performance testing. You can define number of consumers, producers, messages, size of the messages etc. I have used it and still use it occasionally and it works great. Since you are (I'm assuming) new to RabbitMQ, just be vary how you pass the amqp uri parameter (here is the spec).

like image 146
cantSleepNow Avatar answered Oct 18 '22 21:10

cantSleepNow