Reliable RabbitMQ consumer with C#

Message Brokers like RabbitMQ are the most common solution for decouple the communication between two different application and add an intermediary between them. With this solution there are many benefits, like asynchronous communication, indipendent protocols between the applications, definition of rules for routing messages and in case of RabbitMQ an efficient protocol like AMQP to … Continue reading Reliable RabbitMQ consumer with C#

RabbitMQ publisher with C#

RabbitMQ is one of the most popular message broker used to decouple the communication between different application and components. It has a nice and clear documentation with simply tutorials to understand the capabilities of the middleware; it implements the AMQP protocol and it offer a client for different enviroments and languages, like C#, Java, Python, … Continue reading RabbitMQ publisher with C#

Managing SSH connections with C# Part 2

As discussed in the previous post, disposing an SSH connection is very important to free the port and leave it usable to the next connection. Unfortunately, implementing the connector as disposable is not enought, because if the application crash or stop unexpectedly, the dispose method will no be called and the port will remain busy … Continue reading Managing SSH connections with C# Part 2

Asynchronous programming with TaskCompletionSource

Asynchronous programming was the main improvement introduced in C# 5 in the late 2012. The class and methods introduced are conformed to a model which that is easily to implement asynchronous operations and it follow some rules and specifications knows as Task-based Asynchronous Pattern. One of the class that we can use is the TaskCompletionSource … Continue reading Asynchronous programming with TaskCompletionSource