我有一个处理Tiff创建事件的NServiceBus处理程序。通常,TIFF的创建可能需要1-5分钟。我在总线配置中使用NHibernatePersistence和SqlServerTransport。
当Handler创建Tiff时,关联的数据库总线表被锁定。所以其他任何事件都有效地排在后面。
有没有办法让其他Tiff事件得到处理?
答案 0 :(得分:1)
默认情况下,所有数据库操作都是分布式事务的一部分。
您不清楚要防止的锁定类型。如果这真的是一个表锁,它是如何获得表锁的?
如果你不想锁定那么
BusConfiguration busConfiguration = new BusConfiguration();
busConfiguration.Transactions().IsolationLevel(IsolationLevel.RepeatableRead);