问题标签 [brokeredmessage]
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.
c# - 在 ESB 上识别消息的来源
使用 Azure 服务总线,是否有一种方法可以记录该消息源自的代理消息?虽然功能用途不大,但如果解决问题,我可以将其视为 DevOps 的有用工具。
例如,假设一条UpdateCustomer
消息可以从同一 ESB 上的计费和 CRM 应用程序发布。
我曾考虑过BrokeredMessage.MessageId
在应用程序名称前加上前缀,但这似乎很老套。有没有更好的方法来记录消息的来源?
解决方案
感谢 Gaurav Mantri 的回答,我已经在BrokeredMessage
对象上实现了一个扩展方法,以允许添加自定义属性的字典:
用法
以及扩展方法
希望这可能对某人有所帮助。
azure - Sending 1000 brokered messages to the service bus using the SendBatchAsync method
I have an application wherein data is fetched from the SQL DB and sent to the service bus as brokered message. These are the steps:
- Data fetched from the DB(in batches of 1000)
- Each row of data converted into Brokered Message and added into a list.
- The list of 1000 brokered messages is sent to the service bus using SendBatchAsync method.
It is at the 3rd step that I am facing the issue. This is the code for that:
when the compiler comes to SendBatchAsync method, it gives an error that Error during communication with Service Bus. Check the connection information, then retry. with the inner exception being:
However if I try sending 100 messages, it works fine. What can I do to make it send 1000 messages at a time?
Note: each message size is 1445 bytes
java - 从服务总线队列中读取死信消息
我想知道是否可以从 JAVA 中的 azure 服务总线队列中读取死信消息。
我找到了以下示例https://code.msdn.microsoft.com/windowsazure/Brokered-Messaging-Dead-22536dd8/sourcecode?fileId=123792&pathId=497121593 但是,我无法将代码转换为 JAVA。
我还发现了https://github.com/Azure/azure-storage-java/tree/master/microsoft-azure-storage/src/com/microsoft/azure/storage 但那里似乎没有任何关于死信的内容一点也不。
我还找到了几个博客(我不允许放置更多链接,所以我不知道如果没有适当的标签我是否应该这样做)。但是它们都没有描述如何在 JAVA 中读取死信消息。
非常感谢提前
azure - 从服务总线异步接收所有代理消息的最佳方式
这是我想要实现的目标:
在服务总线上,我有一个包含 5005 条消息的主题。
我需要查看所有消息而不完成它们并将它们添加到列表中
(List<BrokeredMessage>)
这是我正在尝试的:
在上面的代码中,我一次只能获取 100 条消息,因为检索消息有批量大小限制。
我也尝试过异步执行,但它总是在列表中返回 0 条消息。这是代码:
谁能建议一个更好的方法来做到这一点?
azure - 如何在 azureservicebus 中查看和删除死信中的消息
我创建了一个 azure 服务总线主题应用程序,它可以查看deadletter中的所有消息。我偷看的一些特定消息(具有特定的 messageid)需要从死信队列中删除。请为实施此提供帮助。
c# - (Azure) BrokeredMessage.GetBody
我正在尝试将我可以(重新)使用的“通用”订阅者放在一起Azure ServiceBus
。
但我被困如下;我的代码曾经去掉了非必要部分,看起来像这样。
我希望我msgBody
的类型是已序列化到消息正文中的类型。事实上,如果myClass
是类似的东西TelephonyEventMessage
并且收到的消息是那种类型,那么我msgBody
将是该类型的正确实例化/再水合对象。但是虽然我可以使用recdMessage
. ContentType 以获取该消息中类的字符串名称....我只是想不出我需要在myClass
上面放什么。我现在知识的尽头,没有多少搜索似乎对我来说是一个答案。我是否需要为我的消息中可能存在的每种类型添加特定版本?
c# - BrokeredMessage 已处理
我无法将我的BrokeredMessage标记为 Complete。
像预期一样工作的简单代码:
当我尝试等待用户完成myObj时,出现异常:
brokeredmessage已被处理
下面的代码:
对我来说, ServiceBus似乎以某种方式失去了与c#中实际对象的连接
类似于EF中的分离对象,只是在这种情况下,对象与ServiceBus分离
编辑:
只有在用户单击按钮后才将消息标记为完成对我来说很重要。如果 AC 出现故障(或类似情况),我希望消息仍保留在服务总线主题上,以便下次用户启动应用程序时,他将再次收到他未处理的消息。
azure - 在本地使用 Azure 服务总线
我正在使用 Azure 服务总线主题和订阅。它用于跨应用程序发送控制消息。消息侦听器(订阅者)以工作角色运行,它们正在接收消息并处理请求。总线中的每条消息只能被拾取一次,即使有多个侦听器同时运行。
使用Service Bus没有问题;但是,我们在本地调试/测试应用程序时遇到了一些问题。我们有 2 条服务总线,1 条用于云端,1 条用于本地调试。现在,如果多人同时调试应用程序,则消息仅由系统中的一个(随机)选择。这是预期的行为,但在调试时会造成麻烦。
有什么办法可以将本地模拟器用于服务总线?我做了一些研究,但我找不到任何可靠的解决方案。有什么方法可以单独调试应用程序吗?
c# - C# Service Bus 多个监听器都收到相同的消息( BrokeredMessage )
我曾经使用 RabbitMQ 作为消息传递平台,但我从来没有遇到过任何问题 - 不幸的是,我们最近将我们的基础架构转移到了 Azure,他们不提供 RabbitMQ 服务器,所以我考虑尝试服务总线扩展。
我有一个作家和多个读者。目前,每个读者将阅读不同的消息(消息竞争模式 - 例如有利于负载平衡)。
我想要的是,所有读者都得到相同的信息并自己处理。
读者:
笔者:
我一直在寻找解决方案两个小时,但找不到任何东西。在 RabbitMQ 中,这将是默认行为。
ios - 使用 Azure 总线服务队列在 iOS 设备和后端之间进行代理消息传输
我正在尝试使用 azure bus service 在 iOS 设备和后端之间发送数据。但是我在 Microsoft azure 门户上找到的所有内容都提供了 Azure 帐户存储方法或通过集线器提供推送通知。
我正在尝试使用总线服务队列(FIFO)通过队列客户端发送“代理消息”(用于分布式系统)。我也遇到过这种方法,但发现在 .net C# 上甚至不适用于 iOS