服务/服务器重新启动后,MSMQ队列消息能否幸存?我的意思是,如果一个队列有消息,并且服务器遇到硬重启,重新启动后消息是否仍然可用在队列中?
解决方法
要实现这一点,您必须将消息标记为可恢复.默认情况下,MSMQ消息仅保存在内存中,但可恢复消息被备份到磁盘以启用可靠的MSMQ消息传递.
using System.Messaging; Message recoverableMessage = new Message(); recoverableMessage.Body = "Sample Recoverable Message"; recoverableMessage.Recoverable = true; MessageQueue msgQ = new MessageQueue(@".\$private\Orders"); msgQ.Send(recoverableMessage);
这个区域在Reliable Messaging with MSMQ and .NET有一个概述.
事务消息不需要手动标记为可恢复 – 这是事实上它们是基于MSMQ的事务的一部分.
原文地址:https://www.jb51.cc/csharp/95687.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。