c# - 在 Azure 辅助角色中读取/写入临时文件

标签 c# .net azure azure-blob-storage azure-worker-roles

我们有一个 Multi-Tenancy 系统,由 Azure Web 角色、辅助角色和桌面/移动应用程序组成。每个客户端应用程序都允许上传路由到特定于租户的 Azure Blob 存储帐户的图像。

Azure 辅助角色轮询这些文件并处理它们。我们使用第三方 SDK 进行需要文件系统路径或流的处理。直接从 blob 存储提供流很简单,但 SDK 还希望吐出我们的应用程序使用的物理元数据文件。

这是一个问题,因为 SDK 是一个黑匣子并且不提供替代方案。有没有办法在工作角色中为临时文件提供本地存储。每个工作角色迭代仅需要此存储几秒钟,并且如果角色被回收或关闭,则可能会被回收/丢弃。此外,这些文件相当大(500MB 以上),因此不需要 blob 延迟。

搜索发现了一些黑客的解决方法,其中最好的似乎是包装 blob 存储,让我们的角色将其作为文件系统访问。

有没有一种方法可以简单地访问类似于 Web Role App_Data 文件夹的文件系统?

最佳答案

您可以在 Azure 辅助角色中使用 RoleEnvironment.GetLocalResource() 来获取本地文件存储的命名句柄:

RoleEnvironment.GetLocalResource()

这将避免对可能随时间变化的特定文件路径进行硬编码等。

祝你好运!

关于c# - 在 Azure 辅助角色中读取/写入临时文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36782839/

相关文章:

powershell - Azure 帐户将超时,我无法在 Powershell 中重新进行身份验证

c# - 使用 C# 访问网页的内容

c# - 如何使wpf文本 block 自动调整大小

c# - 明确声明默认字段值是一种不好的做法吗?

c# - RhinoMocks 期望返回任何值

c# - 如何连接 Debug.Writeline() 和 Debug.Write() 的替代目的地

时间:2019-05-09 标签:c#qr条码读取(unicode)

.net - 无法从 Azure 连接到 Nexmo API

Azure key 保管库权限

azure - 我可以使用 Azure Oauth 应用程序的 client_id 和 client_secret 获取用户配置文件吗?