Azure Function 与 Azure 虚拟机上 运行 计算密集型函数的成本比较?
Cost comparison of running computationally intensive function on Azure Function vs Azure Virtual Machines?
如果我查看 运行 一个 Azure 函数的定价示例,与 运行 一个虚拟机 运行 宁那些相同功能的定价示例,这是我在Azure 定价网站:
运行 3M 个函数,每个函数需要 1 秒,需要 500MB 内存:18.00 美元(调用成本 + 计算机成本)
运行 Azure 最便宜的虚拟机至少 500MB 内存 3M 秒:
(B1S 实例,$0.008/小时):$6.67
我想知道这种比较在最简单的情况下是否公平(函数不执行很多 i/o,或不使用其他 Azure 服务)——特别是无论 Azure 使用什么机器运行 Azure 函数将 运行 那些相同的 3M 函数,每个函数的速度与 B1S 虚拟机实例相同?换句话说,在给定相同内存要求的情况下,B1S 实例的单位时间效率是否与 Azure 函数 运行ning 机器一样?
您必须查看您的使用情况。请求是否以稳定的速度不断出现?还是分散开来?
使用虚拟机,您按时间付费 运行,它不依赖于它在做什么。
使用 Azure 函数消费计划,您按请求付费。因此,如果没有请求,则不收费。
https://azure.microsoft.com/en-us/pricing/details/functions/(您的 18 美元来自此页面?)
当函数有 500 MB 可用时,您的代码可以使用所有内存。当 VM 有 500 MB RAM 时,操作系统会使用很大一部分。
编辑:
正如 Ken 在对 VM 的评论中提到的那样,您需要照顾服务器,因此您还需要考虑该成本。
在 3M 调用完成后关闭 VM 的稳定连续使用情况下,计算能力是相同的。但是 VM 有额外的成本也需要考虑。
请注意,当您关闭 VM 时,您仍然需要为磁盘存储付费。
如果我查看 运行 一个 Azure 函数的定价示例,与 运行 一个虚拟机 运行 宁那些相同功能的定价示例,这是我在Azure 定价网站:
运行 3M 个函数,每个函数需要 1 秒,需要 500MB 内存:18.00 美元(调用成本 + 计算机成本)
运行 Azure 最便宜的虚拟机至少 500MB 内存 3M 秒: (B1S 实例,$0.008/小时):$6.67
我想知道这种比较在最简单的情况下是否公平(函数不执行很多 i/o,或不使用其他 Azure 服务)——特别是无论 Azure 使用什么机器运行 Azure 函数将 运行 那些相同的 3M 函数,每个函数的速度与 B1S 虚拟机实例相同?换句话说,在给定相同内存要求的情况下,B1S 实例的单位时间效率是否与 Azure 函数 运行ning 机器一样?
您必须查看您的使用情况。请求是否以稳定的速度不断出现?还是分散开来?
使用虚拟机,您按时间付费 运行,它不依赖于它在做什么。
使用 Azure 函数消费计划,您按请求付费。因此,如果没有请求,则不收费。
https://azure.microsoft.com/en-us/pricing/details/functions/(您的 18 美元来自此页面?)
当函数有 500 MB 可用时,您的代码可以使用所有内存。当 VM 有 500 MB RAM 时,操作系统会使用很大一部分。
编辑: 正如 Ken 在对 VM 的评论中提到的那样,您需要照顾服务器,因此您还需要考虑该成本。
在 3M 调用完成后关闭 VM 的稳定连续使用情况下,计算能力是相同的。但是 VM 有额外的成本也需要考虑。
请注意,当您关闭 VM 时,您仍然需要为磁盘存储付费。