C#。 MSMQ。单条消息的最大大小

时间:2013-01-15 06:15:10

标签: c# size message msmq

使用 msmq 我想发送消息( 接近1 GB )。我想发送字节数组。但我只能发送 4 MB 如何解决此限制?

2 个答案:

答案 0 :(得分:16)

如您所知,MSMQ中消息的最大大小为4Mb,最好采用其他解决方案。

解决方案:   如果要传输超过此大小的数据,则必须将其剪切 在发送者的一侧进入块,并在接收方重新组合。

为什么MSMQ消息有4MB限制?   查看this博客。

如何使用Microsoft消息队列发送大于4 MB的文件here

答案 1 :(得分:6)

你必须坚持使用纯MSMQ吗?如果您考虑切换到NServiceBus,它有一个名为DataBus的功能,它可以有效地将大型有效负载放在MSMQ之外,但将有效负载绑定到MSMQ消息。

(根据我的经验,这也使得与MSMQ的合作从C#开始变得更加愉快。但是YMMV)


如果你不能使用NServiceBus,你至少可以从中受到启发。生成随机文件名,将内容存储在两个端点均可访问的共享上,并在邮件中包含文件名。