问题标签 [azure-storage-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 回答
2413 浏览

azure-storage-queues - 天蓝色队列上的多个消费者

我有多个消费者,在多台机器上运行,从 azure 存储队列中读取。如果第一个消费者从队列中读取第一条消息并使其不可见 5 分钟,那么第二个消费者会从队列中读取下一条消息还是被阻塞?

0 投票
1 回答
446 浏览

android - 向 Azure 存储队列发送消息时出现 Random StorageException(并非总是如此)

当我尝试向 Azure 存储的云队列发送一些消息时,我随机收到以下异常。我正在使用 0.5.1 版的 azure android 存储客户端库。我没有使用 SAS,而是使用 Azure 帐户名称和密钥。请帮我解决这个问题。

com.microsoft.azure.storage.StorageException:服务器未能对请求进行身份验证。确保 Authorization 标头的值正确形成,包括签名。在 com.microsoft.azure.storage.core.StorageRequest.materializeException(StorageRequest.java:307) 在 com.microsoft.azure.storage.core.ExecutionEngine.executeWithRetry(ExecutionEngine.java:181) 在 com.microsoft.azure.storage .queue.CloudQueue.exists(CloudQueue.java:887) 在 com.microsoft.azure.storage.queue.CloudQueue.createIfNotExists(CloudQueue.java:526) 在 com.microsoft.azure.storage.queue.CloudQueue.createIfNotExists(CloudQueue .java:501)

编辑: 这是我导致异常的代码。正如我所说,有时它工作正常,异常随机发生。

0 投票
1 回答
2931 浏览

azure - Azure 队列存储:在消息中发送文件

我正在评估 Azure 队列存储以在两个分离的应用程序之间进行通信。

我的要求是在队列消息中发送一个文件(平面文件,大小:从小到大)。

根据我在队列中读取的单个消息不能超过 64KB,因此在消息中发送可变大小的文件是不可能的。

我能想到的另一个解决方案是使用队列存储和 blob 存储的组合,即在队列消息中添加对文件的引用(在 blob 存储上),然后在需要时从 blob 中读取文件(使用参考/地址队列消息)。

我的问题是,这是一个正确的方法吗?还是有任何其他优雅的方法来实现这一目标?

谢谢,桑迪普

0 投票
2 回答
244 浏览

azure - 2015 年 Azure 队列存储正确调用模式?

以高性能方式写入 Azure 队列存储的正确调用/代码模式是什么?

现在,伪代码是

使用 StorageCredentials 和 CloudStorage 帐户属性创建静态类。在应用程序启动时,将配置文件中的值读取到仅限 {get;} 的属性中。

使用带有我的应用程序消息类型的输入参数的异步任务方法创建类。该方法序列化类型,创建新的 CloudQueueMessage、新的 CloudQueueClient、新的 CloudQueue 引用。如果需要配置信息,则从静态类中读取。然后我的代码:

在我看来,好像我在代码中有一些冗余,并且不确定是否/如何将连接汇集到队列中,以及我是否需要重试逻辑,就像使用数据库(SQL Server 等)连接一样。

我试图了解可以以任何方式减少或优化哪些队列访问步骤。

所有想法都表示赞赏。

使用 .NET 4.5.2、C#。代码在云服务(工作者角色)中执行。

谢谢。

0 投票
2 回答
1536 浏览

azure-webjobs - 在 Azure Webjobs SDK 中设置 nextVisibleTime

我正在使用 Azure Webjobs 处理来自队列的消息。

我看到 Webjobs SDK 在 10 分钟后再次处理任何失败的消息,如果失败 5 次,它会将其移动到毒队列 ( 1 )。

我还可以看到队列中消息的 nextVisibleTime ,即插入时间(2)之后的 10 分钟。

我想使用 AzureSDK 错误处理消息,但我不能等待 10 分钟才能再次处理消息。

有什么办法可以将 nextVisibleTime 设置为几秒钟?

在 Azure 应用服务中创建 .NET WebJob

如果该方法在完成之前失败,则不删除队列消息;在 10 分钟的租约到期后,该消息被释放以再次被拾取和处理。

如何将 Azure 队列存储与 WebJobs SDK 结合使用

注意:StackOverflow 中有类似的问题,但没有答案:

0 投票
1 回答
102 浏览

azure - 使用 Azure 存储队列处理清理作业

为了处理每 8 小时运行一次的清理作业,目前我们已实现为:

  1. 使用 Azure 调度程序创建计划作业,该调度程序在触发时将消息放入存储队列。
  2. 以这样一种方式实现客户端,即它会在收到消息时连续轮询并处理。客户端的示例实现是:

    /li>

但问题是我们正在无限期地等待,即使我们知道我们只会在 8 小时后收到消息,而且根据文档,每次尝试从队列中读取消息都会产生成本。

如何优化这一点,以便在每个可配置的时间而不是连续循环中动态生成侦听器?

0 投票
2 回答
277 浏览

php - Azure PHP SDK 抛出带有套接字错误的致命异常

我的 PHP 脚本从我的数据库中读取数据并将消息发送到队列,以便工作角色(以及其他 LAMP 机器)可以提取它们并并行工作。

但是,我的脚本通常以致命错误结尾,并在我的 apache 服务器上的 error_log 中显示以下消息。此错误位于发送方。

在我看来,套接字由于某种原因引发了一个未处理的异常,从而使脚本崩溃。如果您同意,您是否建议修复 SDK 是个好主意?

0 投票
2 回答
2527 浏览

azure-webjobs - Azure 存储队列和多个 WebJobs 实例:QueueTrigger 会在触发时设置消息租用时间吗?

场景:producer发送消息到Storage Queue,一个WebJobs在QueueTrigger上处理消息,每条消息只能处理一次,可以有多个WebJob实例。

我一直在谷歌搜索,从我读过的内容来看,我需要编写处理消息的函数是幂等的,这样消息就不会被处理两次。我还读到消息的默认租用时间为 10 分钟。

我的问题是,当在一个 WebJob 实例上触发 QueueTrigger 时,它是否在消息上设置了租用时间,以便另一个 WebJob 无法获取相同的消息?如果是这样,为什么我需要考虑消息可以被处理两次的可能性?还是我对此有误解?

0 投票
1 回答
109 浏览

azure - Azure 存储队列 WebJob 永不停止

我有一个在 Azure 上运行的 WebApp,WebApp 的目的是处理来自 Azure 存储队列的作业。它设置为始终开启。问题是,当我在 Azure 管理门户中停止 WebApp 时,作业实际上并没有停止。

我实例化了这项工作:

处理队列的函数是:

我有跟踪日志记录,所以我可以看到这项工作实际上从未停止过。

0 投票
2 回答
1435 浏览

javascript - azurestorage 和 NodeJS 中的错误 getaddrinfo

我正在做和应用程序将文件发送到 Azure 存储容器,然后将消息发送到 Azure 队列。

当我达到大约 1000~1020 条消息时,我无法发送更多文件和消息。我也注意到,当我尝试检查队列中有多少消息时,我遇到了错误。

错误是:

我的代码是:

发送消息的函数是:

我真的迷路了。谢谢你。