Monthly Archives: March 2013

Scaling NServiceBus Sagas

When looking at NServiceBus sagas (process managers), especially at high volume of messages, we often run into two main problems: Deadlocks Starvation This is because of the fundamental (default) design of sagas is that: A single saga shares a single … Continue reading 

Posted in Messaging, NServiceBus, SOA | 7 Comments

Saga implementation patterns – variations

In the previous couple of posts, I looked at the two main patterns I run into when looking at sagas: Command-oriented (request/response) in the Controller pattern Event-oriented (pub/sub) in the Observer pattern Of course, these aren’t the only ways our … Continue reading 

Posted in Messaging, NServiceBus, SOA | 8 Comments

Saga implementation patterns – Controller

In the previous post on saga implementation patterns, we looked at the Observer pattern. In that pattern, the saga was a passive participant in the business transaction, similar to how many fast food restaurants fulfill orders. But not all food … Continue reading 

Posted in Messaging, NServiceBus, SOA | 18 Comments

Elaborating on “it depends”

On the discussion on “When should I test?”, I followed up with a conversation: When it provides value. When is that? It depends. And it truly does depend. But upon what? That’s trickier to answer – and there is no … Continue reading 

Posted in Agile, TDD | 5 Comments

Saga implementation patterns – Observer

NServiceBus sagas, itself an implementation of the Process Manager pattern, often takes one of two main forms when implemented. It’s not a cut and dry distinction, but in general, I’ve found that saga implementations typically fall into one or the … Continue reading 

Posted in Messaging, NServiceBus, SOA | 12 Comments

When should you test?

When it provides value. When is that? It depends. I wish it were simpler than “it depends” but this is unfortunately the truth. Our profession isn’t surgery. It isn’t engineering. It isn’t painting. It isn’t sculpture. It isn’t carpentry. It … Continue reading 

Posted in Rant | 18 Comments