Azure Web作业 : BlobTrigger vs QueueTrigger resource usage

标签 azure

我创建了一个 WebJob 项目来将图像从 Azure 备份到 Amazon,该项目使用 BlobTrigger 属性作为方法中的第一个参数

    public static async Task CopyImage([BlobTrigger("images/{name}")] ICloudBlob image, string name, TextWriter log)
    {
        var imageStream = new MemoryStream();
        image.DownloadToStream(imageStream);
        await S3ImageBackupContext.UploadImageAsync(name, imageStream);
    }

然后我在文档 How to use Azure blob storage 中了解到 BlobTrigger 是基于“尽力而为”的基础上的。并将其更改为 QueueTrigger。

两者都工作得很好:-)所以这不是问题而是问题。由于我部署了更改,WebJob 的 CPU 和内存使用情况如下

CPU Memory usage

有人可以解释一下内存和 CPU 使用率下降的原因吗?数据导出也下降了。

最佳答案

非常有趣。

我认为你是唯一能回答这个问题的人。

对 blob 和队列版本进行远程分析,看看哪种方法消耗了 CPU 时间:
https://azure.microsoft.com/en-us/blog/remote-profiling-support-in-azure-app-service/

对于内存消耗,您可能需要获取内存转储:
https://blogs.msdn.microsoft.com/waws/2015/07/01/create-a-memory-dump-for-your-slow-performing-web-app/

关于Azure Web作业 : BlobTrigger vs QueueTrigger resource usage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38793391/

相关文章:

azure - 如何传入 CosmosDBTrigger 的存储帐户连接字符串?

security - 为什么 Azure AD 在 Multi-Tenancy 场景中无法登录非管理员?

azure - 如何将powershell中的对象复制到azure中的变量

node.js - 在 Azure 上的多个实例之间维护 Node.js session

azure - Azure MSI 身份验证的瞬时错误处理

azure - 如何批量添加Azure端点?

powershell - 使用 powershell 将带有模板参数的操作添加到 azure api

azure - 使用 MQTT 通过 Websockets(端口 443)而不是端口 8883 将 ESP32 连接到 Azure Iot Hub

mongodb - 将 mongo-go-driver 与 Azure Cosmos DB 结合使用的事务出现意外行为

c# - 如何在 Azure Functions 中使用 NuGet 包?