localhost - MSMQ - 资源不足,无法执行操作

标签 localhost windows-server-2008 msmq c#-2.0

我已阅读 https://stackoverflow.com/a/1732531/684646

我也有同样的问题...

考虑到我知道一些事实,我一直在寻找可能性:

  • 队列都是空的
  • msmq 服务器上还剩一些 GByte 的可用空间
  • 过去两年这些消息一直运行良好
  • 消息大小固定,小于 2Kb
  • 我已经尝试过重新启动服务并更改存储限制,但没有进行任何更改。

所以,

From John Breakwell's Blog there are eleven possibilities:

<强>1。 远程读取的线程池已耗尽(MSMQ 2.0 仅)。

队列中没有项目。 我不确定这些信息是否足以解决这个问题。

<强>2。本地回调线程数超出

不明白如何检查这一点。

<强>3。 消息量已超出系统可以处理的范围(MSMQ 2.0 仅有的)。

不可能,它是空的。 除非这是关于 ID 溢出

<强>4。分页池内核内存已耗尽。

不知道如何检查这一点。 The document说了一些关于使用一些我找不到的命令的内容。

<强>5。 二进制文件不匹配。

该产品多年来一直没有变化。 (除非微软发送了一个自动更新来破坏二进制文件,这似乎不太可能)

<强>6。 消息大小太大。 已检查

<强>7。已超出机器配额。

关于the document谈论机器配额(又名存储限制)如果存储也是这个问题(也),它会被检查,我在这里有点困惑。

<强>8。打开事务性外部队列 (MSMQ 仅3.0)

队列的使用是本地的。有一个远程调用的本地 Web 服务(在本地模拟),它会插入队列中。

<强>9。 磁盘空间不足。 已检查

10。 移动设备上的存储问题非移动设备,Windows Server 2008

11。集群过多的 MSMQ 资源

The document说要检查注册表上的SystemViewSize。如何检查注册表中的 SystemViewSize

最佳答案

我能够通过删除 C:\windows\system32\msmq\storage 中找到的所有消息文件 (.mq) 来解决此问题。目录。我在开发环境中工作,所以我不担心消息丢失。如果您处于生产环境中,这可能不是最好的主意。

希望这对某人有帮助。

关于localhost - MSMQ - 资源不足,无法执行操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26105817/

相关文章:

asp.net - 从 localhost 在 ASP.NET 中发送电子邮件

c# - 通过 Microsoft HPC 上的 Com-interop C# API 打开 excel 文件

asp.net - Windows 2008 Server x64 上的 IIS 7.5 ASP 32 位应用程序池上为 500.0 0x800700c1

.net - 如何以事务方式使用远程 MSMQ?

c# - 非事务性队列上的 MSMQ 错误

.net - 如何处理 WCF 的 MSMQ 绑定(bind)中的消息失败

python - 无法从本地主机访问 Django

ruby-on-rails - 从本地主机发送电子邮件

php - 在 Vagrant Server 中创建虚拟主机

python - 套接字错误 "IP address not valid in its context"- Python