函数计算,这个冷启动时间是不是有点离谱啊,我代码esbuild成一个文件了
还有这里的调度时间是不是不可靠啊
TTF浏览器端提示500多ms 但是日志这边显示开销时间才100多ms
函数计算提供了按量模式和预留模式两种实例使用模式。按量模式是指函数实例的分配和释放完全由函数计算系统负责,您只需要根据实例执行请求的时间按需付费。按量模式降低了管理应用资源的难度,但也造成了冷启动,延时等性能问题。
冷启动是指在函数调用链路中的代码下载、启动函数实例容器、运行时初始化、代码初始化等环节。当冷启动完成后,函数实例就绪,后续请求就能直接被执行。
优化按量模式的冷启动
冷启动的优化用户和平台配合完成。函数计算已经对系统侧的冷启动做了大量优化。对于用户侧的冷启动,建议您从以下几方面优化:
精简代码包
开发者要尽量缩小代码包。去掉不必要的依赖。例如,在Node.js中执行npm prune命令,在Python中执行autoflake 。另外,某些第三方库中可能会包含测试用例源代码,无用的二进制文件和数据文件等,删除无用文件可以降低函数代码下载和解压时间。
选择合适的函数语言
由于语言理念的差异,Java运行时冷启动时间通常要高于其他语言。对于冷启动延迟敏感的应用,在热启动延迟差别不大的情况下,使用Python轻量语言可以大幅降低长尾延迟。
选择合适的内存
在并发量一定的情况下,函数内存越大,分配的CPU资源相应越多,因此冷启动表现越优。
降低冷启动概率
使用定时触发器预热函数。
使用Initializer回调,函数计算会异步调用初始化接口,消除掉代码初始化的时间,在函数计算系统升级或者函数更新过程中,您对冷启动无感知。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。