问题标签 [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.
msmq - msmq 是否确保事务队列上的数据完整性?
我正在使用 MSMQ 传输byte
数组。
格式化程序是一个BinaryMessageFormatter
.
目标队列是私有队列,我使用的是直接 TCP 通信。
目标机器位于不同的 LAN 中,我通过其外部 IP 地址访问它。
有一个防火墙将传入的 TCP 通信路由到实际的目标机器(端口转发)。
所以系统的架构是这样的:
我已经使用该系统几个月了,一切都很好。
最近我们遇到了防火墙故障。
显然,这导致了数据损坏:
虽然队列是事务性的,并且根据 MSMQ,消息已成功传递到目标计算机,但消息的内容已损坏。
也就是说,从队列中读取消息的代码引发了异常:
我不得不从队列(顶部)删除一些消息,然后系统恢复正常。
我的问题:
假设只是防火墙的故障导致了这种情况,并且知道它是一个事务队列,那么为什么认为消息已传递?
MSMQ 不是在执行某种校验和以确保事务队列上的数据完整性吗?
c# - 将 MSMQ 消息发送到远程事务队列
我是 MSMQ 的新手,正在尝试将 XML 消息发送到远程事务队列。两台机器都是2003服务器。我可以让它与非事务性远程队列一起工作。我似乎无法将消息放到事务队列中。C# 代码如下。我没有收到它从未出现过的错误。
vb.net - 超过 4MB 的消息队列消息
我知道消息队列的消息大小限制为 4MB,但最近遇到了我需要支持大于 4MB 的消息的情况。我已经看到它提到可以使用事务队列并将消息拆分为“块”,然后在接收端重新组装它们,但是关于如何实现这一点的信息很少。我发送的消息包含以 XML 格式格式化的 SQL 记录数据(我们使用一些 Nvarchar(MAX) 和 varbinary(Max) 字段,这就是大小限制成为问题的原因。任何帮助完成此操作将不胜感激!
performance - SQL Server 会话查询
为了能够访问会话查询,我在研究期间发现的所有结果都是关于在 SQL Server 会话中执行的最后一个查询。
有没有办法访问在会话中运行的所有查询而不是 SQL Server 探查器,因为在生产环境中使用探查器并不容易。
有什么帮助吗?
sql-server - MSMQ 远程接收错误“指定的格式名称不支持请求的操作”
所以遇到了这个奇怪的问题。我正在尝试从未经身份验证的事务性 msmq 接收消息。我的环境是:
- 队列为 Windows Server 2012 R2 的服务器。这也是数据库服务器(SQL Server)
- 安装客户端应用程序的服务器也是 Windows Server 2012 R2
我正在尝试将消息从 SQL Server 发送到 MSMQ(工作正常)。但是当客户端应用程序尝试使用下面的代码接收消息时,它会抛出我在标题中提到的错误。
我无法从数据库服务器访问客户端服务器,因此我需要在同一数据库服务器上拥有消息队列,因为我从 SQL 将消息发送到队列
我检查了以下内容:
- 从 SQL 发送消息没有问题
- 服务器之间没有 n/w 可访问性问题
- 在消息队列服务器安全属性中启用未经身份验证的 RPC 调用
- 队列格式正确。我正在使用直接操作系统格式。也尝试过使用 TCP 格式指定 IP 地址而不是机器名
但无济于事。有任何想法吗?
谢谢