问题标签 [azure-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 投票
2 回答
429 浏览

azure - 如何自动启动 Azure 队列?

我想构建一个 Azure 应用程序,它有两个辅助角色并且没有 Web 角色。当工作角色第一次启动时,我只希望其中一个角色一次执行以下操作:

  • 下载并解析一个主文件,然后根据主文件的内容将多个“子”任务排入队列
  • 将单个主文件下载“子”任务排入队列以在第二天运行

然后每个“子”任务将由两个工作人员完成,直到任务队列耗尽。把整个事情想象成“启动泵”

如果我通过调用网络角色在队列中手动添加第一个“主”任务,这种事情真的很容易,但在自动启动模式下似乎真的很难做到。

在这方面的任何帮助将不胜感激!

谢谢.....

0 投票
4 回答
1400 浏览

azure - Azure 表存储数据一致性

假设我在 Azure 表存储中有表

Azure Queue 中的消息显示Add 10 to Amount

现在让我们说一个工人角色

  1. 从队列中获取此消息
  2. 从表中获取行
  3. 金额 += 10
  4. 更新表中的行
  5. 失败

一段时间后,消息再次在队列中可用。所以下一个工人角色:

  1. 从队列中获取此消息
  2. 从表中获取行
  3. 金额 += 10
  4. 更新表中的行
  5. 从队列中删除消息

这些动作导致Amount += 20而不是Amount += 10

我怎样才能避免这种情况?

0 投票
3 回答
2587 浏览

azure - (过度)使用 Azure 队列的最佳实践

我正处于设计基于 Azure 的应用程序的早期阶段。考虑到我可能预期的需求的可变性,Azure 吸引我的一件事是可伸缩性。因此,我试图保持松散耦合,以便在需要时添加实例。

我看到的为 Azure 构建应用程序的建议包括将 Web 角色逻辑保持在最低限度,并在辅助角色中完成处理,使用队列进行通信以及某种后端存储,如 SQL Azure 或 Azure Tables。这对我来说似乎是个好主意,因为我可以毫无问题地扩展应用程序的一个或两个部分。但是我很好奇是否有任何最佳实践(或者如果有人有任何经验),什么时候最好让网络角色直接与数据存储对话,而不是通过队列发送数据?

我正在考虑我有一个简单的从网络角色插入的情况 - 虽然我可以将它设置为一条消息,将它发送到队列中,并让一个工作角色拿起它并进行插入,它似乎有很多双重处理。但是,我也很欣赏,从长远来看,这可能会更好,以防万一 Web 角色不堪重负或插入需要更复杂的逻辑。

我意识到这可能是一个答案是“这完全取决于情况,检查你的性能指标”的情况 - 但如果有人有任何想法,我会非常感激!

0 投票
1 回答
201 浏览

azure - 管理大量 Azure 队列

我的应用程序的一部分包括一个“聊天”系统。我为每个用户维护一个队列。发送给用户的消息被放置在队列中,用户的软件会定期轮询休息服务以获取新消息,此时队列被抽出消息,并将它们返回给用户。

该系统非常简单,运行良好,并且可以完成我需要做的所有事情。

我的问题是;我有数百个(很快数千个)队列将应用程序的队列列表弄得乱七八糟。

我还有其他队列,令我感到不安的是,我无法像使用 blob 存储中的东西那样“组织”它们。

我是否遗漏了什么,或者我应该忽略队列列表,并依赖于我在用户来来去去时正确管理队列的创建和删除这一事实?

0 投票
2 回答
176 浏览

visual-studio-2010 - 是什么导致我的 Azure 队列代码发生线程争用?

我刚刚针对我的 Azure 代码运行了 Visual Studio 2010 线程分析器,并注意到我遇到了很多争用。我的代码被阻塞的频率比它运行的频率高!

我的工人根本没有自定义线程逻辑。这是一个简单的 While 循环,它询问各种队列是否有工作。我创建了 QueueRepositoryClass 的实例,然后调用 GetQueueMessage 函数。

看起来由于某种原因,多个线程正在访问我的 GetQueueMessage 方法并使用相同的 queueClient 实例。也许是我使用 CloudStorageAccount 对象的结果?还是 CreateCloudQueueClient 扩展方法?

0 投票
1 回答
140 浏览

azure - 多个 Azure 队列

我正在尝试解决以下问题的最佳实施/方法

我有客户使用我们的 win forms 应用程序,该应用程序有一个插件,该插件将连接到 Azure 队列,以检查是否有等待连接客户的发票在会议前间隔。如果有,那么插件会将发票下载到客户本地数据库中。有很多客户在使用这个应用程序,所以他们都会连接到队列中。他们都需要下载自己的发票

我想如何实现这一点是通过为每个客户命名队列(客户 GUID 将识别队列)。因此,所有客户都将使用相同的帐户密钥/名称连接到队列。现在的问题是每个客户在 dll 中都有他们可以反映和检索的帐户密钥/名称(智能客户)。那么有没有一种方法可以加密密钥/名称,或者是否有更好的解决方案可以建议

0 投票
1 回答
774 浏览

azure - Windows Azure - Web 角色无法访问本地开发队列存储

我有一个在我的解决方案中的多个角色项目之间共享的类库。其中两个项目是 Web Role 和 Worker Role。

它们都具有相同的配置设置:

他们每个人都在调用这个函数:

当它在 Worker Role 中执行时,它可以正常工作;我已经确认正确读取和写入队列消息。当它在 Web 角色中执行时,对 queue.CreateifNotExist() 的调用会崩溃,并显示错误“响应在此上下文中不可用”。我已经尝试搜索有关可能导致此问题的信息,但到目前为止,我的搜索努力没有结果。如果我可以提供任何其他信息,请告诉我。

0 投票
1 回答
895 浏览

windows - 从 Azure 队列中删除消息时出现异常?

我正在尝试使用 Windows Azure,我遇到了一些必须简单的事情,但我就是看不到它。

我有这个小测试来玩 Azure 队列:

它可以很好地发送消息 - 我可以在 SQL 表中看到它。但是,当它遇到“testQueue.DeleteMessage(received)”方法时,我得到了这个:

这似乎是 Azure SDK 内部某个地方的失败。

我正在使用 VS 2010、.NET 4.0、Azure SDK V1.2、64 位 Win 7。开发者商店服务正在运行;我可以看到消息进入队列,但我无法删除它们。

有人见过这样的吗?

0 投票
3 回答
502 浏览

azure - 是否可以在 Windows Azure 中创建公共队列?

在 Windows Azure 中,可以创建公共 Blob 容器。匿名客户端可以通过 REST API 访问这样的容器。

是否也可以创建一个可公开访问的队列?

创建容器操作的文档解释了如何x-ms-blob-public-access为 Blob 容器指定公共访问级别(使用 HTTP 标头)。但是,创建队列操作的文档没有列出类似的选项,这让我相信这是不可能的——但我真的很想得到纠正:)

0 投票
1 回答
932 浏览

azure - 将 Azure webrole 部署到云,但不理解数据连接字符串(用于队列)

我已经编写并成功地将一个测试应用程序部署到了天蓝色的云中,但是现在我已经向应用程序添加了一个队列,所以我迷失了。

目前我使用配置字符串:

然后使用以下代码创建/打开队列:

这在本地模式下工作正常,但是,我不知道如何更改 DataConnectionString 以使用云!

我努力了:

但这不起作用 - 它不会在本地运行。帮助当然不胜感激!

谢谢