A Blog Loosely Related to System Architecture by David Prothero

Author Archives →

In my last post, I mentioned I would have a new tutorial posted on the Twilio site very soon. Well, the post is now live. It’s a simple ASP.NET MVC 5 application that listens for SMS text messages and uses Entity Framework to find employees in the database that match the incoming queries. It responds… Continue reading →

I have a new role and I’m very excited about it. I am now a Developer Educator for Twilio. Twilio takes care of the messy telecom hardware and exposes a globally available cloud API that developers can interact with to build intelligent and complex communications systems. To get this role, one of the things I… Continue reading →

With the announcement of MassTransit 3, we learned that there were many changes to the API that were coming. The changes are all welcome ones, making MassTransit 3 simpler to work with and now completely asynchronous. What follows is this blog’s inaugural post, but updated to work with the current pre-release version of MassTransit 3.

I often get asked: “which is better, MassTransit or NServiceBus?” It’s a perfectly reasonable question for an outsider looking to get started with message-based SOA on .NET to ask. However, as is usually the case with the “which is better” question for any technology, the answer is the ubiquitous (and exasperating) “it depends.”

In my first post on this blog, I showed you how to get a simple Publish/Subscribe example working very quickly using MassTransit and RabbitMQ. I’d always planned to show you how to move that example to the cloud, with Microsoft Azure being a compelling competitor in this space, especially for the .NET developer (though not… Continue reading →

We’ve talked a lot about using MassTransit with RabbitMQ in a variety of scenarios on this blog. We talked about error handling, which is something you need to know how to implement in a real world MassTransit + RabbitMQ deployment. Another important aspect to a production deployment is monitoring. Lets take a look at how… Continue reading →

So far on this blog, we’ve been looking at the publish/subscribe messaging pattern using MassTransit and RabbitMQ. So far, we’ve dealt with a single publisher and a single subscriber. We looked at how we can have those two roles live on separate servers. Finally, we looked at how to handle errors in the subscriber. What… Continue reading →

Previously, we built a simple Customer Portal application where a user could use an ASP.NET MVC app to open a new customer service ticket. The website created a TicketOpened message and published it to the MassTransit service bus. Then, we built a Windows Service, using the TopShelf library, that subscribed to TicketOpened messages and handled… Continue reading →

Now that we’ve seen some simple examples of how to use MassTransit with the Publish/Subscribe pattern on multiple machines, let’s build something that resembles a more real-world app. In this article, we’ll build an ASP.NET MVC Customer Portal app where a customer can create a new support ticket. The ticket will be published onto the… Continue reading →

In my last post, A Simple MassTransit Publish/Subscribe Example, we looked at how to build basic publishers and subscribers using MassTransit and RabbitMQ. In the example, however, we were only using a single RabbitMQ instance on a single machine. In the real world, your publishers are most likely to live on separate machines from your subscribers. To do that,… Continue reading →