更新时间:2025-02-28 GMT+08:00

成本优化

在云原生时代,FunctionGraph作为华为云的无服务器计算服务,为开发者提供了按需执行代码的高效平台。然而,随着业务的不断扩展和复杂度的增加,如何在享受FunctionGraph带来的敏捷与弹性的同时,有效控制成本,成为了关注的焦点。

本章节将深入探讨一系列成本优化策略,旨在帮助用户精打细算,实现FunctionGraph资源的高效利用,从而在保证业务稳定运行的同时,最大限度地降低运营成本。

减小执行内存

FunctionGraph会根据不同内存大小进行计费,为函数配置过高的内存会带来额外的计费。您可以通过函数监控中的运行内存监控来调整您的函数内存配置,具体监控信息请参见查看FunctionGraph的监控数据,具体配置请参见配置函数的常规信息

开启函数动态内存

FuntionGraph支持为函数启用动态内存,开启动态内存可以让函数在处理指定请求时,设置本次处理中函数实例使用的资源规格,从而最小化资源占用,达到更低的成本开销。具体配置请参考配置函数的动态内存

控制函数最大实例数

FunctionGraph支持为函数配置最大实例数,通过控制最大实例数,可以避免函数执行时启用过多实例以增加额外成本。您可以根据函数监控中的弹性实例数来配置合适的最大实例数,具体监控信息请参见查看FunctionGraph的监控数据

配置合理的预留实例数

FunctionGraph预留实例计费取决于预留实例的存活时间,如果启用过多的预留实例将会带来额外的成本支出。您可以通过手动减少预留实例数来控制,或者启用弹性预流实例策略来智能控制预留实例个数。具体配置请参见为函数配置预留实例

开启预留实例闲置模式

FunctionGraph预留实例支持开启闲置模式,闲置模式下将显著减少预留实例的计费。具体配置请参见为函数配置预留实例

优化超时函数

FunctionGraph计费基于函数执行时间和函数执行次数,如果函数存在执行超时会带来额外的收费,及时优化或停止超时函数可以减少对应成本。您可以通过函数监控中的执行时间来判断是否存在超时函数,具体监控信息请参见查看FunctionGraph的监控数据

配置函数的心跳检测

心跳函数用于检测用户函数运行时的异常场景,如函数死锁、函数内存溢出、函数网络异常等。如果心跳请求返回异常,FunctionGraph会认为函数实例异常,将终止此函数实例,从而避免无效的重试带来额外的调用费用。具体配置请参考配置函数的心跳检测