问题标签 [transactional-queue]

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 投票
2 回答
404 浏览

msmq - msmq 是否确保事务队列上的数据完整性?

我正在使用 MSMQ 传输byte数组。

格式化程序是一个BinaryMessageFormatter.

目标队列是私有队列,我使用的是直接 TCP 通信。

目标机器位于不同的 LAN 中,我通过其外部 IP 地址访问它。

有一个防火墙将传入的 TCP 通信路由到实际的目标机器(端口转发)。

所以系统的架构是这样的:

我已经使用该系统几个月了,一切都很好。

最近我们遇到了防火墙故障。

显然,这导致了数据损坏:

虽然队列是事务性的,并且根据 MSMQ,消息已成功传递到目标计算机,但消息的内容已损坏。

也就是说,从队列中读取消息的代码引发了异常:

我不得不从队列(顶部)删除一些消息,然后系统恢复正常。

我的问题:

假设只是防火墙的故障导致了这种情况,并且知道它是一个事务队列,那么为什么认为消息已传递?
MSMQ 不是在执行某种校验和以确保事务队列上的数据完整性吗?

0 投票
1 回答
4051 浏览

c# - 将 MSMQ 消息发送到远程事务队列

我是 MSMQ 的新手,正在尝试将 XML 消息发送到远程事务队列。两台机器都是2003服务器。我可以让它与非事务性远程队列一起工作。我似乎无法将消息放到事务队列中。C# 代码如下。我没有收到它从未出现过的错误。

0 投票
1 回答
133 浏览

vb.net - 超过 4MB 的消息队列消息

我知道消息队列的消息大小限制为 4MB,但最近遇到了我需要支持大于 4MB 的消息的情况。我已经看到它提到可以使用事务队列并将消息拆分为“块”,然后在接收端重新组装它们,但是关于如何实现这一点的信息很少。我发送的消息包含以 XML 格式格式化的 SQL 记录数据(我们使用一些 Nvarchar(MAX) 和 varbinary(Max) 字段,这就是大小限制成为问题的原因。任何帮助完成此操作将不胜感激!

0 投票
1 回答
69 浏览

performance - SQL Server 会话查询

为了能够访问会话查询,我在研究期间发现的所有结果都是关于在 SQL Server 会话中执行的最后一个查询。

有没有办法访问在会话中运行的所有查询而不是 SQL Server 探查器,因为在生产环境中使用探查器并不容易。

有什么帮助吗?

0 投票
1 回答
140 浏览

sql-server - MSMQ 远程接收错误“指定的格式名称不支持请求的操作”

所以遇到了这个奇怪的问题。我正在尝试从未经身份验证的事务性 msmq 接收消息。我的环境是:

  • 队列为 Windows Server 2012 R2 的服务器。这也是数据库服务器(SQL Server)
  • 安装客户端应用程序的服务器也是 Windows Server 2012 R2

我正在尝试将消息从 SQL Server 发送到 MSMQ(工作正常)。但是当客户端应用程序尝试使用下面的代码接收消息时,它会抛出我在标题中提到的错误。

我无法从数据库服务器访问客户端服务器,因此我需要在同一数据库服务器上拥有消息队列,因为我从 SQL 将消息发送到队列

我检查了以下内容:

  1. 从 SQL 发送消息没有问题
  2. 服务器之间没有 n/w 可访问性问题
  3. 在消息队列服务器安全属性中启用未经身份验证的 RPC 调用
  4. 队列格式正确。我正在使用直接操作系统格式。也尝试过使用 TCP 格式指定 IP 地址而不是机器名

但无济于事。有任何想法吗?

谢谢