问题标签 [msmq-wcf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
198 浏览

c# - 将 WCF 与 MSMQ 绑定一起使用:如何处理超出 MSMQ 4MB 消息限制的肥皂消息?

我们有一个集成方案,我们必须使用 MSMQ 队列(使用 WCFs netMsmqBinding)调用 WCF 服务。

如果我理解正确,MSMQ 的消息大小限制为 4MB。

所以我的问题是:WCF/MSMQ 位如何处理超出此限制的 SOAP 消息?例如,是否有一些功能可以拆分大型 SOAP 响应主体?

请注意,我不仅仅询问 MSMQ 消息大小限制,从其他答案和 MSMQ 文档来看,限制似乎是 4 MB。我想知道 WCF MSMQ 绑定是否以某种方式解决了这个限制。

0 投票
1 回答
477 浏览

c# - .NET 应用程序的按钮单击需要告诉外部服务从队列(msmq)开始处理

我有一个用户将与之交互的 asp.net webforms 应用程序。当用户从站点中选择某些项目并单击一个按钮进行处理时。webapp 将为用户选择的每个项目添加一条消息到 msmq。

我想弄清楚的部分:

如果我的第二个应用程序的工作是处理队列 (msmq),它应该是什么类型的应用程序。关键是第二个应用程序需要处于空闲状态,直到我的 asp.net webapp 告诉它单击了“处理”按钮,然后它将继续检查队列并处理它。我不希望它每分钟左右不断检查队列,只在命令检查队列时。

Windows 服务、Web 服务、Web API?我目前有一个 Windows 服务,它每 30 秒检查一次队列。我怎样才能让它按需工作而不是不断检查?

在这里,它的措辞略有不同:

  1. 用户在 .NET 应用程序中并选择项目然后单击处理。

  2. .Net 应用程序将需要处理的项目添加到队列 (msmq)。

  3. .NET 应用程序将通知另一个应用程序进程按钮已被单击,并且它应该开始处理队列。处理完队列后,附加应用程序应返回某种空闲模式。

这里最重要的是我不希望它在每分钟检查队列中是否有项目的计时器上。这将消耗 24/7 运行的资源。

也许我对 msmq 的某些功能不熟悉。有没有办法 msmq 可以告诉我的服务它收到了队列中的消息,继续处理它们。而不是我的 .net 应用程序与服务通信?

0 投票
3 回答
1491 浏览

windows - 发送到队列时出错:无法识别的错误 -1072824273 (0xc00e002f)。确保 MSMQ 已安装并正在运行

您好在向远程队列发送消息时收到以下消息。

An error occurred while sending to the queue: Unrecognized error -1072824273 (0xc00e002f).Ensure that MSMQ is installed and running. If you are sending to a local queue, ensure the queue exists with the required access mode and authorization.

另一项测试表明,使用其他帐户我可以毫无问题地将消息发送到远程服务器。

0 投票
1 回答
213 浏览

c# - MSMQ 消息多播:无法在不同的机器上接收消息

我想使用 MSMQ 多播功能创建发布者和订阅者模型。我已经按照链接中的答案没有成功 MSMQ - 无法从多播队列接收 消息在本地机器中发送和接收。

发件人:

接收者:

我在多播绑定的注册表中添加了密钥,IP 显示在事件日志中(对此不确定)。我们在队列中指定的 MulticastAddress 是特定的还是我们可以使用指定范围内的任何东西?

0 投票
2 回答
593 浏览

msmq - 如何使用 MSMQ 服务

我想使用 msmq 服务。但无法将消息发送到队列。这是我的代码。

它在 msmQ.Send(msg) 上给我错误

错误信息="长度不能小于零。参数名称:长度"

以下东西安装在我的 m/c 上

  1. Microsoft 消息队列 (MSMQ) 服务器
  2. 窗口激活过程

当我尝试作为

但它给出“路径语法无效”

我无法得到任何东西。我所拥有的只是一个 msmq URL “net.msmq://myServerName/private/MyQueueName”

请让我知道如何使用这样的网址并将我的消息发送到“MyQueueName”

任何帮助表示赞赏

先谢谢了。

0 投票
1 回答
327 浏览

c# - MSMQ:MSMQ 是否保证顺序消息传递?

经过负载测试,我发现有些数据包不连续。

这是一个基本的 WCF 服务,客户端不断发送请求。

0 投票
0 回答
803 浏览

c#-4.0 - 最大数量 SmtpClient 超出并发连接数

我有一个场景,一个 MSMQ 排队系统...记录及时排队...一个 WCF 侦听器侦听队列,一旦记录排队就开始处理记录...做一些处理和之后发送电子邮件(有 10 个队列和 10 个侦听器,其中 3 个侦听器负责发送电子邮件)。我面临的问题是电子邮件发送部分,其中较大的数据排队,然后对于某些记录,我收到以下错误

发送电子邮件的类是

我想即使我的方法是静态的,每次都会实例化 smtp 对象,这会导致问题。即使我增加并发连接也不能解决问题。我有几个解决方法,但需要对此进行更多说明。

  1. 限制编号。并发连接数假设为 100。所以即使我有 1000 条记录排队并且侦听器开始并行处理它们,smtp 进程一次不会使用超过 100 个连接,等待它完成然后占用下一个 100等等。但我不知道该怎么做。
  2. 使用并行 foreach 循环或 SmtpClient.SendAsync 方法,但这里我对这些方法的熟练程度也不高,所以我有点害怕(我需要确保没有重大的性能影响)。所以只需要一个稳定和更好的方法来解决这个问题。
0 投票
3 回答
840 浏览

wcf - 从 C# 读取 WCF MSMQ 消息

我使用 WCF 客户端向 WCF Service 发送 msmq 消息,在 WCF Service 处理 msmq 消息之前,我想检查消息的正文。
检查 msmq 消息正文的内容后,我得到以下结果。 但是,我没有得到确切的字符串。 以下是 WCF 服务的定义
在此处输入图像描述

我使用下面的方法来检索消息正文,它输出为空,如果我在 ms 上添加手表,我可以得到

"\0\u0001\0\u0001\u0004\u0002(net.msmq://vdi-v-tazho/private/TestQueue\u0003\aV\u0002\v\u0001s\u0004\v\u0001a\u0006V\bD\ n\u001e\0��+ http://tempuri.org/IMSMQService/ShowMessage@ \u0017VsDebuggerCausalityData\bAhttp://schemas.microsoft.com/vstudio/diagnostics/servicemodelsink�<��ϣ-lN��FoJ� 0�u\u0006�\"\0\0\0\0\u0017�\0i8�C�I\7�^Q�A\u0012�w}\f�A�\u000f\r����pe\0 \t\0\0D\f\u001e\0��(net.msmq://vdi-v-tazho/private/TestQueue\u0001V\u000e@\vShowMessage\b\u0013http://tempuri.org/@\ u0003msg�\u0004test\u0001\u0001\u0001"

0 投票
0 回答
324 浏览

node.js - 如何从 nodejs(Linux) 使用 MSMQ (windows) ?

我正在尝试使用 nodejs(Linux) 中的 MSMQ(windows)。搜索后,我找到了一个插件 node-msmq(https://www.npmjs.com/package/node-msmq)。

但是这个插件只有在两者都在同一台服务器上时才有帮助。

任何帮助或建议。

0 投票
1 回答
1066 浏览

wcf - 从 msmq 中的 OUTGOING QUEUES 中删除消息

是否可以从传出队列中删除消息?我没有看到任何删除选项。如何删除这些消息?我是 msmq 的新手。我正在尝试将消息从我的计算机发送到其他计算机。我所有的消息都位于状态为“LOCKED”的传出队列中。不知道为什么它被锁定,我想删除 OUTGOING QUEUE 中的所有这些消息。