【问题标题】:Writing to a file asynchronously from Azure Functions从 Azure Functions 异步写入文件
【发布时间】:2017-04-29 08:06:13
【问题描述】:

我有一个从 Blob 上传触发的 Azure 函数,说 Blob 包含一个带有多行的文本文件,每行都包含一个人的信息。该函数读取文件并将 KeyValuePair 每行插入到 Azure 队列中。

然后我有另一个 Azure 函数,它由我前面提到的队列触发,当第一个函数将数千个 KeyValuePair 存储到队列中时,该函数被大规模异步执行。

我想要做的是,当每个 KeyValuePair 由第二个函数处理时,我想写入一个响应文件,该文件的格式将与第一个函数中的输入文件相同;每行包含一个人的信息。因此,第二个函数的每次执行都会在响应文件中写入一个新行(这也是一个 blob)。您将如何实现这一目标?

【问题讨论】:

    标签: c# azure azure-blob-storage azure-functions azure-storage-queues


    【解决方案1】:

    听起来您可以使用Append Blobs 为每个队列项添加一行文本。

    这是您可以使用的示例绑定(注意inout 方向):

    {
      "type": "blob",
      "name": "appendBlob",
      "path": "container/{name}.txt",
      "connection": "AzureWebJobsStorage",
      "direction": "inout"
    }
    

    我假设您已经有一个很好的方法来知道前一个文件应该何时结束以及新文件应该何时开始,这可能是队列消息的一部分。

    附带说明,队列处理的顺序无法保证,因此输出文件中的行与输入文件相比可能具有不同的顺序。

    【讨论】:

    猜你喜欢
    • 2017-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-28
    • 2012-08-31
    相关资源
    最近更新 更多