That is true. However that is generally true of messaging systems where there are more than one client processing messages off a shared queue. In that case, you need something like a
Resequencer. By the way, I have to make a shameless plug here. If you're REALLY interested in design for messaging systems and solving problems like this, take a look at
Enterprise Integration Patterns by Bobby Woolf and Gregor Hohpe, (with Martin Fowler and me contributing) which covers this and a host of other tough problems in messaging design.
Kyle
[ November 26, 2003: Message edited by: Kyle Brown ]