sologgfun
V2EX  ›  问与答

有没有搞 serverless 的大佬,请问一个 nodejs 超时时间的小问题

  •  
  •   sologgfun · May 18, 2021 · 1293 views
    This topic created in 1996 days ago, the information mentioned may be changed or developed.

    场景:runtime 需要执行用户的函数,因此需要控制用户函数的执行时间

    方案 1:使用 setTimeout,这个是肯定不行的,如果用户是同步函数要执行完才会执行到 setTimeout 的回调

    方案 2:使用 runInNewContext,这个 node 方法可以控制同步函数的超时跳出,但是异步就没有办法监控了,而且这个很影响性能

    问题:nodejs 如果控制用户函数的执行时间呢?

    求大佬点拨一下

    4 replies  •  2021-05-19 00:51:53 +08:00
    EPr2hh6LADQWqRVH
    EPr2hh6LADQWqRVH
    May 18, 2021❤️1
    1
    去外面控制,进程层次控制,进程调度搞一下
    ch2
    ch2
    May 18, 2021❤️1
    2
    一般是用 docker 控制的
    sologgfun
    sologgfun
    OP
    May 18, 2021
    3
    @avastms
    @ch2
    这样吗 okok
    ysc3839
    ysc3839
    May 19, 2021 via Android
    4
    JavaScript 似乎没有内置沙盒功能吧?你要限制运行时间的话只能起一个新的运行环境来跑。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1529 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 43ms · UTC 18:11 · PVG 02:11 · LAX 10:11 · JFK 13:11
    ♥ Do have faith in what you're doing.