It wouldn't have occur to me, but it is a very natural way to specify what is going on there. The Consumes.All is a really nice tagging idea. ![]() Something that I find very interesting is this piece of code: public class HeartbeatMonitor : It seems to be intended to be a repository for implementing patterns for Enterprise Integration Patterns. That said, I really should look inside before talking.Īfter reading the code, I can say that there isn't a lot of useful code there. It reminds me of the application that reach GoF-complete status by implementing all of the GoF patterns. I am always suspicious when I am seeing patterns as a topic of itself. I am not really interested in the configuration, from a very cursory glance, it seems to me that I would move all of that to the container and deal with it there. This also cause my thread safety spider sense to tingle quite heavily. It looks like the service is dealing with too many things, from subscribing to messages to hosting the bus itself through message handling. The tests contains this sample, which I am not sure that I like. I am not sure what it is doing there, and what it is trying to do. There is a lot of code to deal with arguments, argument maps, etc. There are a lot of things there that I am vague about. A hosted service is a way to register and unregister to incoming messages. ![]() In essence, it takes a configurator, which is an object that can return hosted services, and use that to start itself up, spinning up those services. The host is a window service that can host Mass Transit. So far, nothing really interesting, but I am used to getting mixed results when following the Top to Bottom Review style that I like. There is no usable implementation for this, and there aren't enough tests to make it possible to understand how this is supposed to be used, either. Int Defer( object msg, TimeSpan amountOfTimeToDefer) I had to look up in the dictionary to figure out what deferment means, but take a single look at the actual code made it obvious: public interface IDefermentService One point that I dislike is the use of XML configuration for Windsor. This make me happy, even though the dashboard is obviously in its initial stages. The dashboard application is using MonoRail, Windsor & Brail. The build projects handle creating the appropriate queues, there is a single class in all three projects, so I am will just ignore them. That make me feel much better about the project. One thing that really stand out is that 8 of those projects are test projects. Looks like there is a lot of interesting concepts there. I tried to think how to express my initial impression, and finally settled on using the old adage about a picture worth a thousand words. We have 22 projects (NServiceBus had 47 when I checked that). Opening the project is a bit overwhelming, although not as much as with NServiceBus. ![]() A lot of the concepts are shared between both projects.Īs usual, I am going to post here my thoughts as I read through the code. However, it has a radically different style. Mass Transit is very similar in purpose to NServiceBus, and it uses a very similar approach. A while ago I took a look at NServiceBus and its Distributor, after catching this post talking about Mass Transit, I decided that I really need to take an additional look at this project.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |