我与nservicebus,我使用的版本工作流的执行过程中有问题,面临2.0.1329.2
,我试图实现工作流程非常简单:
我有需要计算一个物品清单,工作流开始与出版的第一单。 在此之后,用户可以做其他的发布中增加或删除原始列表的一些文章。 每个列表都有一个代码标识。
我已经使用了列表的代码标识的业务流程服务来实现它。 在佐贺数据也有其名单由文章的所有引用。
问题是:当用户发表的文章列表,而该列表的另一个发布过程中也有不处理状态的任何锁,这样有没有并发控制,但稍后将完成将有处理程序它自己的数据持久化。
例如:
- 有10篇文章列表添加在时间[T],从数据库中的业务流程服务加载佐贺数据,修改它,并将其存储在时间到达T + 5]
- 与1个项目列表,以在时间到达时添加[T + 1],从数据库中的业务流程服务加载佐贺数据,修改它并把它存储在时刻[T + 4]
在时刻[T + 6]我应该有6添加的元素,但我得到只有5添加元素..
我认为,行为应该是这样的:如果涉及到同一列表中的第二条消息应该找到锁定状态,直到第一个完成过程状态..否则,如果涉及到另一个列表应该是并行处理。
对于这一点,我想知道如果编排服务不妥当作出支持工作流程的实现,除非工作线程的数量设置为只有一个,虽然失去了并行效率。