成本优化
在云原生时代,FunctionGraph作为华为云的无服务器计算服务,为开发者提供了按需执行代码的高效平台。然而,随着业务的不断扩展和复杂度的增加,如何在享受FunctionGraph带来的敏捷与弹性的同时,有效控制成本,成为了关注的焦点。
本章节将深入探讨一系列成本优化策略,旨在帮助用户精打细算,实现FunctionGraph资源的高效利用,从而在保证业务稳定运行的同时,最大限度地降低运营成本。
减小执行内存
FunctionGraph会根据不同内存大小进行计费,为函数配置过高的内存会带来额外的计费。您可以通过函数监控中的运行内存监控来调整您的函数内存配置,具体监控信息请参见查看FunctionGraph的监控数据,具体配置请参见配置函数的常规信息。
开启函数动态内存
FuntionGraph支持为函数启用动态内存,开启动态内存可以让函数在处理指定请求时,设置本次处理中函数实例使用的资源规格,从而最小化资源占用,达到更低的成本开销。具体配置请参考配置函数的动态内存。
控制函数最大实例数
FunctionGraph支持为函数配置最大实例数,通过控制最大实例数,可以避免函数执行时启用过多实例以增加额外成本。您可以根据函数监控中的弹性实例数来配置合适的最大实例数,具体监控信息请参见查看FunctionGraph的监控数据。
配置合理的预留实例数
FunctionGraph预留实例计费取决于预留实例的存活时间,如果启用过多的预留实例将会带来额外的成本支出。您可以通过手动减少预留实例数来控制,或者启用弹性预流实例策略来智能控制预留实例个数。具体配置请参见为函数配置预留实例。
开启预留实例闲置模式
FunctionGraph预留实例支持开启闲置模式,闲置模式下将显著减少预留实例的计费。具体配置请参见为函数配置预留实例。
优化超时函数
FunctionGraph计费基于函数执行时间和函数执行次数,如果函数存在执行超时会带来额外的收费,及时优化或停止超时函数可以减少对应成本。您可以通过函数监控中的执行时间来判断是否存在超时函数,具体监控信息请参见查看FunctionGraph的监控数据。
配置函数的心跳检测
心跳函数用于检测用户函数运行时的异常场景,如函数死锁、函数内存溢出、函数网络异常等。如果心跳请求返回异常,FunctionGraph会认为函数实例异常,将终止此函数实例,从而避免无效的重试带来额外的调用费用。具体配置请参考配置函数的心跳检测。