自定义运行时如何避免僵尸进程?

问题原因

由于代码程序的问题,有时候会产生僵尸进程。

解决方案

创建函数时,如果选择创建Web函数的方式,并配置了启动命令,那么系统中的1号进程就是您的启动命令。所以需要您配置具有回收僵尸进程能力的启动命令。

  • 您可以使用Bash脚本的方式来启动程序。Bash进程有回收僵尸进程的能力。例如,您可以将启动命令配置为/code/start.sh,start.sh的内容如下:

    #! /bin/bash
    python /code/app.py 
  • 在使用Serverless Devs工具或者API时,您也可以不配置启动命令,直接将启动脚本命名为bootstrap即可。在没有配置启动命令的函数中,函数计算平台会尝试使用/code/bootstrap脚本来启动函数。