首页 文章

Azure - 从Web角色中访问与worker角色相同的blob

提问于
浏览
3

我是Azure的新手,我想创建一个简单的.Net应用程序(在C#中),其中包含一个Web角色和一个辅助角色来上传和调整图像大小 . 我已经在网络角色中取得了成功 . 它会创建一个blob,然后在那里上传图片,然后显示它们 .

我现在要做的是:如果任何图片太大,发送消息会将队列抛给worker角色,然后在worker角色中调整它们的大小 . 我的问题是我无法看到如何访问在Web角色中创建的相同blob(首先我想在本地开发模拟器中访问它) . 如果我在worker角色属性 - > settings页面中添加一个新条目,它会给我一个完全不同的blob连接字符串,不是吗?

谢谢你的帮助 .

1 回答

  • 4

    要从多个角色访问同一存储帐户,您需要将连接字符串添加到 Cloud 项目中的所有角色:

    enter image description here

    要初始化客户端,您可以编写类似这样的内容(同样,这将对您的所有角色都相同):

    CloudStorageAccount storageAccount = CloudStorageAccount.Parse(
        CloudConfigurationManager.GetSetting("MyStorageAccount"));
    

    每当您的Web角色向队列发送消息以通知工作者角色应该调整图像大小时,只需包含URL或容器名称blob路径 . 使用此信息,您的工作者角色将能够获取blob并执行所需的处理 .

    我建议你看一下官方的Windows Azure培训套件 . 实验室中的一个实际操作完成了您正在尝试使用留言簿应用程序(在Web角色上传图像,在工作者角色中创建缩略图,...)的所有内容:HOL-IntroToCloudServices Ex2-UsingWorkerRolesAndQueues

相关问题