开发者社区 > 云原生 > Serverless > 正文

请教下,函数计算里面的健康检查功能,如果开启的话,实例还能被冷冻么,我设置了PreFreeze 回调

请教下,函数计算里面的健康检查功能,如果开启的话,实例还能被冷冻么,我设置了PreFreeze 回调,发现PreFreeze 回调完成后,健康检查的日志一直在打印

展开
收起
白夜行fighting 2023-03-10 16:16:42 398 0
7 条回答
写回答
取消 提交回答
  • 函数实例已经被冷冻了,那么可以忽略该实例上的健康检查日志。只有当您需要在函数实例被冷冻前执行一些必要的清理操作时,才需要使用PreFreeze回调函数。

    2023-03-12 17:59:57
    赞同 展开评论 打赏
  • 天下风云出我辈,一入江湖岁月催,皇图霸业谈笑中,不胜人生一场醉。

    在每次函数计算服务决定冷冻当前函数实例前,函数计算服务会调用HTTP GET /pre-freeze路径,扩展开发者负责实现相应逻辑以确保完成实例冷冻前的必要操作,例如等待指标发送成功等

    2023-03-11 23:37:25
    赞同 展开评论 打赏
  • 公众号:网络技术联盟站,InfoQ签约作者,阿里云社区签约作者,华为云 云享专家,BOSS直聘 创作王者,腾讯课堂创作领航员,博客+论坛:https://www.wljslmz.cn,工程师导航:https://www.wljslmz.com

    首先实例肯定还能被冷冻的,但是有一定的风险。

    2023-03-11 19:25:00
    赞同 展开评论 打赏
  • 如果开启了函数计算的健康检查功能,实例仍然可以被冷冻。PreFreeze 回调完成后,健康检查的日志会一直打印,这是正常的行为。您可以通过查看日志来了解实例的健康状况,以便更好地管理和维护实例。

    2023-03-11 08:47:37
    赞同 展开评论 打赏
  • 坚持这件事孤独又漫长。
    • 阿里云函数计算的健康检查功能是一种监控机制,当服务实例容器状态出现异常时,函数计算会自动检测实例,并进行实例替换和重启等操作,保证服务的可靠性和稳定性。因此,即使开启了健康检查,函数实例在冷冻状态下仍然有被替换的风险。

    • 在调用 PreFreeze 回调函数期间,函数计算将等待全部计算执行完成。这意味着,在 - - PreFreeze 回调函数返回后,函数实例仍然处于“激活”状态,并可接收垃圾回收的操作。如果此时发生健康检查事件,函数计算将在检查实例的状态后启动替换操作,此操作可能会在执行 PreFreeze 回调时创建的计算中断之间进行。

    • 因此,建议在 PreFreeze 回调函数中避免阻塞等待过程,并尽可能释放所有资源,以便能够快速进入冷冻状态,减少实例替换的风险和时间。

    • 至于健康检查的日志一直在打印,可能是由于 PreFreeze 回调函数中正在执行的某些操作导致其超时或无法正常退出。可以尝试检查并修复 PreFreeze 回调函数代码中存在的问题,或通过屏蔽或优化可能产生性能瓶颈的操作来解决问题。最后,可以使用阿里云函数计算的调试功能来对函数实例进行调试,定位问题并进行解决。

    2023-03-10 22:35:29
    赞同 展开评论 打赏
  • 是这样的 这个目前不收费 不会产生费用。

    此答案来自钉钉群“阿里函数计算官网客户"

    2023-03-10 18:28:56
    赞同 展开评论 打赏
  • 月移花影,暗香浮动

    在函数计算中开启健康检查功能,实例是否会被冻结取决于实例是否正在被调用。当实例正在运行时,健康检查会继续执行。如果实例已经没有在执行任何操作了,函数计算会将实例冻结。在实例冻结的状态下,健康检查的返回结果可能不一定准确,建议你在实际使用中结合其他监控手段,如云监控进行实例状态的监测。

    关于你所遇到的 PreFreeze 回调的问题,你可以进一步查看实例日志和代码,确定 PreFreeze 回调是否执行完毕,以及是否存在死循环、阻塞等情况。

    2023-03-10 16:27:39
    赞同 展开评论 打赏
滑动查看更多

快速交付实现商业价值。

相关产品

  • 函数计算
  • 相关电子书

    更多
    Hologres Serverless之路:揭秘弹性计算组 立即下载
    Serverless开发平台: 让研发效能再提升 立即下载
    Serverless 引领云上研发新范式 立即下载