The NServiceBus, previously covered by InfoQ in an interview with Udi Dahan (the creator of NServiceBus), is just released in version 1.9. The new version includes a decreased footprint on dependency injection frameworks like Spring.NET and the amount of assemblies referenced is reduced to only one.
NServiceBus was first released as an open source project back in January 2006. Today its matured quite a bit and are used by many large-scale systems. Udi mention particularly one of his clients in his blog post about the release:
Just last week one of my clients went live with a rollout to one of the world’s biggest names in the hospitality industry and things are looking good. Since stability is such a big deal to them (and many of my other clients), they’ve rolled out on nServiceBus 1.8 but now are ready to make the move to 1.9.
NServiceBus used to have 79 quite small assemblies in the project. In this version most of these are merged into NServiceBus.dll. Before version 1.9 most used ILMerge on these dll’s to avoid referencing all of them into ones own project. As for the ones that are left out Udi comments:
There is one non-optional external dependency which hasn’t been merged and that is log4net - although if you configure in a Common.Logging provider to your own logging infrastructure, you can do without it as well. With log4net, the minimum deployment footprint is 2 assemblies. The other dependency which is optional is NHibernate. The reason for leaving these out is that many teams depend on specific versions of those assemblies.
A couple of other new features included is managing timeouts, long-running processes and load balancing mentioned by Oren Eini (a.k.a. Ayende Rahien) in realation to his Rhino Service Bus.