Tho*_*dal 10 azure azure-functions
我在消费计划上运行一个Azure功能.我已经选择了无服务器功能的消费计划以及最小化成本.该函数使用来自服务总线主题的消息,并将一些输出写入blob存储.
保持功能运行最近30天大约是10美元.这是非常可以接受的,因为该函数有很多消息要消耗.将输出写入blob存储大约是20美元.也可以接受.我不明白的是,功能的底层存储帐户的费用在同一时期约为70美元.消耗主要是命中文件写操作单元和文件协议操作单元.存储帐户创建为本地冗余通用v1.
有谁能解释这里发生了什么?查看存储帐户时,会有一些blob.我认为问题在于表存储.检查存储帐户时,有如下表格:
$MetricsCapacityBlob
$MetricsHourPrimaryTransactionBlob
AzureWebJobsHostLogs201804
通过删除AzureWebJobsDashboard应用程序设置,我已禁用我的功能中的日志记录.执行此操作后,AzureWebJobsHostLogs*表似乎不再接收新行.但$ Metrics*表仍然会收到新数据.如果对这些表的写入导致我在Portal中的Costs Management视图中看到的所有文件写入活动,我都不知道.
这里发生了什么?是否真的需要从无服务器代码维护这些表,并且表访问的价格是函数本身价格的x7听起来是否正常?
有趣且不寻常的是,您的存储成本要高得多。我认为仪表板日志记录可能是罪魁祸首,因此如果您在接下来的几天内看到仪表板日志记录在关闭后出现下降,那就很好理解了。
我会花更多的时间在 Azure 门户的成本分析部分,看看您是否可以获得有关存储使用的哪个方面导致大部分成本的更多详细信息。即是关于表操作、blob 操作等。此屏幕截图显示了“成本历史记录”视图以及每米的细分。请注意此屏幕截图中的工具提示:
$Metrics 表不是由 Azure Functions 编写的,而是由 Azure 存储本身生成的。如果这些指标对您的总体成本有显着贡献,我会感到惊讶。但如果你想尝试,我认为你可以通过这个用户体验禁用它们:

为了给您提供关于预期存储成本与函数执行成本的比率的基准,您可能需要查看我在这篇博文中写的成本:https: //blogs.msdn.microsoft.com /appserviceteam/2017/09/19/processing-100000-events-per-second-on-azure-functions/
您会注意到,存储成本低于函数成本,其中包括由于事件中心处理需要将检查点写入存储而导致的大量存储操作。我会注意到,这些测试是在仪表板注销的情况下运行的(再次让我怀疑这是主要的成本驱动因素)。所以不,您的存储成本是函数成本的 7 倍是不正常的!
| 归档时间: |
|
| 查看次数: |
1404 次 |
| 最近记录: |