Skip to content
This repository has been archived by the owner on Nov 9, 2018. It is now read-only.

Burrow.NET is a simple library created based on some EasyNetQ ideas, it's a thin wrapper of RabbitMQ.Client for .NET. Basically, if you just need to put your message or subscribe messages from RabbitMQ server, you found the right place. With Burrow.NET, you can easily customize almost everything start with exchange and queue name, changing the w…

Notifications You must be signed in to change notification settings

telerik-boneyard/Burrow.NET

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Burrow

Burrow.NET, Release 1.0.x (since Mar 12, 2012)

##1. INTRODUCTION

This project is created based on the idea of EasyNetQ, since Mike Hadlow used MIT licence, I hope he doesn't mind when I use his source code in this project.

I was so lucky to have 2 chances to work with RabbitMQ in my 2 recent projects. EasyNetQ is the library I looked into at first place. Honestly, It's a good implementation, the author covered many problems he got with RabbitMQ and I learnt from that as well. However, I created this project for below reasons:

  • I need an easier & flexible way to define Exchange names and Queue names.
  • I want to use Fanout Exchange and I don't need the library so smart to create Exchanges/Queues automatically which EasyNetQ was doing.
  • I want the messages to be consumed parallel.
  • I need more flexibilities to inject behaviors for logging, error handling, object serializing, etc.
  • And I want to be busy :D

Alright, to publish a message, you just need something like:

var tunnel = RabbitTunnel.Factory.Create();
tunnel.Publish(new OrderDetail
{	
    Name = "IPad 3",
    Color = "Black",
    Amount = 1	
});

To subscribe:

var tunnel = RabbitTunnel.Factory.Create();
tunnel.SubscribeAsync<OrderDetail>("SubscriptionKey", msg =>
{
    // Process message here
});

Ofcourse you're gonna need a connection string to RabbitMQ server, exchange and queue defined to make it work. Please go to document page for more details how to run the test projects.

Beside Burrow.NET, I have implemented Burrow.Extras and Burrow.RPC which provide some utilities to play with RabbitMQ using C# such as priority queue implementation and RPC.

##2. WHERE TO START?

  • Install RabbitMQ
  • Create exchange (type *direct): Burrow.Exchange
  • Create queue: Burrow.Queue.BurrowTestApp.Bunny
  • Bind above queue to exchange Burrow.Exchange
  • Get latest source code
  • Run Burrow.Publisher to publish messages
  • Run Burrow.Subscriber to subscribe messagages asynchronously from the queue.

##3. DOCUMENT

Documentation can be found at github wiki page: https://github.com/vanthoainguyen/Burrow.NET/wiki/Get-started-with-Burrow.NET

Some blog posts:

Nuget library is also added at http://nuget.org/packages/Burrow.NET

##4. LICENCE http://sam.zoy.org/wtfpl/COPYING Troll

About

Burrow.NET is a simple library created based on some EasyNetQ ideas, it's a thin wrapper of RabbitMQ.Client for .NET. Basically, if you just need to put your message or subscribe messages from RabbitMQ server, you found the right place. With Burrow.NET, you can easily customize almost everything start with exchange and queue name, changing the w…

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published