问题标签 [azure-servicebus-queues]

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 投票
1 回答
951 浏览

c# - brokeredmessage microsoft 服务总线队列 ReceiveBatch 未获取所有死信消息

我正在使用 Microsoft 服务总线测试一个带有死信队列的项目。我发送了 26 条消息(代表字母表),并使用了一个程序,该程序在接收消息时将其中一些随机放入死信队列中。消息总是以偷看模式从死信队列中读取,所以一旦它们到达那里,它们就会呆在那里。运行几次后,所有 26 条消息都会在死信队列中,并且一直保留在那里。

然而,在阅读它们时,有时只阅读了几个(例如 6 个),有时是全部 26 个。

我使用命令:

有一个超时的 ReceiveBatch 过载,但这没有帮助,并且可能只会增加复杂性。

为什么不是每次都获取全部 26 条消息,因为它是在“peek”模式下使用的,并且消息一直在那里。

我可以使用“服务总线资源管理器”来实际验证所有消息是否都在死信队列中并保留在那里。

这主要是一个测试示例,但人们希望“ReceiveBatch”能够在确定性模式下工作,而不是以非常(糟糕)的随机方式工作......

0 投票
1 回答
52 浏览

wcf - 使用 SQL Azure 与 Azure 中的 WCF 服务失去连接

我们有多实例 WCF 服务(超过 2 个),它接收来自 ServiceBus 主题的请求(订阅中可以有超过 10000 个请求)。

请求的性质是我们主要在 out 数据库中进行插入。极少的处理。我们的数据库是 SQL Azure 中的 P1。

一段时间后,我们不断地用完连接并收到超时。我已将池大小增加到 1000,连接超时时间增加到 120 秒。我们已经检查过,连接池肯定会被正确处理掉。

知道我们应该从哪里开始挖掘吗?

谢谢

0 投票
2 回答
374 浏览

c# - Service Bus Queue how to map Task to Task

I'm using adapter for Service Bus Queue. Therefore, I shouldn't use any class of Queue for return type. But I'm stucked on ReceiveAsync() method. How can I map Task<BrokeredMessage> to Task<MyAdapterClass> ?

Here is adapter Class for BrokeredMessage

And I want Method like this

On Driver project I want to use task like this:

0 投票
1 回答
480 浏览

azure - 从 Azure 网站访问 Azure 服务总线队列

部署到云后,我无法从 Azure 网站访问 Azure 服务总线队列。在本地主机上运行时,如果工作正常,我可以向队列发送消息,但如果我部署应用程序,在远程服务器上创建 QueueClient 时出现异常:

“套接字连接被中止,因为对套接字的异步发送未在分配的超时 00:00:59.4820817 内完成。分配给此操作的时间可能是较长超时的一部分。”

我正在使用QueueClient.CreateFromConnectionString(connectionString)方法。调试器显示 connectionString 变量一切正常。

连接字符串是:

Endpoint=sb://[removed].servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=[removed]

我试图将“Copy Local = True”设置为所有引用但没有成功。我正在使用 WindowsAzure.ServiceBus 2.6.4 nuget。

此外,如果队列存在,则不会在NamespaceManager.QueueExists(name)上引发异常,但如果不存在,则会在NamespaceManager.CreateQueue(name)上引发异常。

有人遇到过这样的问题吗?提前感谢您的任何提示。

更新 1:

为了澄清起见,我提供了代码块和跟踪输出:

产生输出:

  • 连接到应用程序日志...

  • 2015-03-29T01:40:29 欢迎您,您现在已连接到日志流服务。

  • 应用程序:2015-03-29T01:40:41 PID[1952] 错误开始

  • 应用程序:2015-03-29T01:40:44 PID[1952] 错误端点=sb://[removed-before-posting].servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=[removed-before-posting]

  • 应用程序:2015-03-29T01:41:48 PID [1952] 错误套接字连接被中止,因为在分配的超时时间 00:00:59.5586593 内未完成对套接字的异步发送。分配给此操作的时间可能是较长超时的一部分。

更新 2

使用 Azure 存储 API 或 SQL 服务器时没有连接问题。

更新 3

网站实例和服务总线命名空间都是在北欧地区创建的。

0 投票
1 回答
1496 浏览

node.js - Azure ServiceBus 令牌已过期

我正在使用 NodeJS 访问 Azure ServiceBus,它运行了好几天。突然间,我开始收到一个错误

Subscription Deletion Error :Error: 401 - ExpiredToken: . TrackingId:xxxxxx-xxxxxxx,TimeStamp:4/8/2015 12:32:54 PM

我正在使用连接字符串连接到 ServiceBus

只有一个共享访问策略“RootManageSharedAccessKey”具有“管理、发送、收听”权限

这有什么问题?

0 投票
1 回答
1458 浏览

azure - 在接收之前查看消息

我是 Azure 的新手,在过去的几周里学习了 can & service 总线。

我正在尝试从 Azure 服务总线队列中读取消息。QueueClient 接收方法会将消息从队列中拉出,我最初不想这样做。因此,我使用 Peek() 方法在 while 循环中一次浏览队列中的所有消息。然后我将消息的correlationId 与我在本地数据库表中内部维护的Correlation Id 进行比较。

仅当相关 ID 匹配时,我才会继续接收消息。但是,为了使用 messageSequencenumber 接收消息,我了解到我必须先延迟消息,获取存储在列表或其他东西中的 messageid,然后使用 QueueClient Receive() 方法接收消息,最后将消息标记为完全的。

但是由于我正在使用 Peek() 浏览消息,这不允许我推迟消息。我被困在这里使用 messageId 接收消息。

我也不能在收到之前完成一条消息。

你能建议任何方法来实现这一点吗?

0 投票
1 回答
482 浏览

node.js - 如何长轮询 Azure 服务总线主题/订阅

我无法澄清是否可以将长轮询选项与主题/订阅模型一起使用。使用服务总线队列是可能的,但我必须创建数千个单独的队列以使每个客户端都能接收自己的消息。那么有可能吗?如果可以的话,你能指点我一个实现的例子吗?

谢谢。

0 投票
2 回答
526 浏览

c# - 为什么 azure 服务总线订阅报告活动消息但 onmessage 没有检索到

我有一个 azure 服务总线主题/订阅。当我查询订阅时,我被告知有 11,646 条活动消息。

但是,消息循环(如通过 subscription.onMessage 实现的)没有检索到任何内容。

如果我提交一条消息,计数将增加一,我从循环中接收它,当我完成消息时,计数减少一。

在您跳转到“deadletter”之前,deadletter 队列中没有任何内容。

0 投票
1 回答
1408 浏览

c# - 未找到 Azure 服务总线队列终结点错误

我创建了一个服务总线队列。这个网址是:

我还为此创建了共享访问策略。策略名称是 EventPolicy。

当我尝试使用此策略和 URL 连接到服务总线队列时,我收到以下错误:

40400:未找到端点

我究竟做错了什么?这是我正在使用的代码:

0 投票
1 回答
385 浏览

azure - 具有服务总线队列的工作角色不断准确地接收相同的消息 10 次

具有服务总线队列的 Worker 角色不断接收相同的消息 10 次......看起来像消息队列没有被删除或重复计数正好为 10 时发生了什么。

我正在使用 configs.QClient.OnMessage 来接收排队的消息..