Azure 辅助角色未运行?
Posted
技术标签:
【中文标题】Azure 辅助角色未运行?【英文标题】:Azure Worker Role not Running? 【发布时间】:2011-08-21 08:33:03 【问题描述】:我是 Azure 的新手,所以这可能很明显是我遗漏的。我创建了一个新的 Azure 云服务项目并添加了一个 Web 角色和辅助角色。在 Web 角色中,我将文件上传到 Blob 存储。那部分工作正常。作为该过程的一部分,我向 azure 消息队列添加了一条消息。在我的工作角色中,我正在检查队列中的消息。问题是工人角色似乎没有工作。在调试模式下,我设置了一个断点,它永远不会被击中。我是否缺少启动工作者角色或其他什么的步骤?
【问题讨论】:
你运行 Azure 云项目了吗? 我有一个带有 Web 角色和辅助角色的 Azure 云项目。我不确定你的问题是什么? 你执行了哪个VS项目? 可能是网络角色项目。所以也许我需要执行 Azure 云项目。你说的是这个吗? 今晚我回家后试试。我觉得这可能很简单,因为我看到了很多使用 web 角色和工作者角色的简单示例。 【参考方案1】:您需要运行 Azure 项目本身,而不是单个角色。 这将启动 Azure 开发结构中的所有角色。
【讨论】:
【参考方案2】:您能否分享您的工作角色的 OnStart() 方法的代码。我能想到的一件事是您角色的 OnStart() 方法正在终止,这不应该发生。在您的工作角色的 OnStart() 方法中应该有一个无限循环,您需要在其中重复调用检查队列状态的函数。
【讨论】:
感谢您的回复。稍后我将使用我的示例进行更新,但基本上我使用了默认的工作角色模板,因此无限循环位于 OnStart 方法中。我在循环中放了一个断点,它从未进入。我想也许还有一些我不知道的需要“连接”的东西。 OnStart() 肯定会终止。 Run() 方法是您永远不会退出的方法。您必须从 OnStart() 返回 true,否则您的角色将永远不会响应。【参考方案3】:如果您运行 Azure 项目,它将自动启动角色。如果要调试,请启用智能跟踪并在开发结构中调试您的应用程序。
【讨论】:
以上是关于Azure 辅助角色未运行?的主要内容,如果未能解决你的问题,请参考以下文章