1

我目前有一个具有此算法的控制台应用程序:

使用 Peek 从 MSMQ 消费

从 MSMQ 获取消息,执行 sql insert 语句

如果插入成功,则使用 Receive() 从 MSMQ 获取消息

使用上述方法会消耗来自 MSMQ /sec 的 20 条消息(每秒 20 条 sql tx),其中有 1 个消耗线程

现在,我想增加消耗 MSMQ 的线程,但是我发现消息被插入 2 次,而 1 次使用 peek。

我最初使用 Peek() 获取消息并处理 sql 语句以处理服务器突然断电的情况。

如果我使用 Receive() ,并且没有执行 sql 语句,这将导致数据丢失

请指教。

4

0 回答 0