我不知道它是否是故意完成的,或者Azure的性能比AWS差.每当我冷启动Azure功能时,它都需要将近一分钟. 使用AWS,相同的冷启动功能不到一秒钟(接近250毫秒). 我看到的是,Azure将所有功能代码
使用AWS,相同的冷启动功能不到一秒钟(接近250毫秒).
我看到的是,Azure将所有功能代码存储在Azure存储帐户中,并通过网络加载它,从而产生这种延迟.这与消费计划有关.
如果我使用App Service Plan来实现功能,那么在现代应用程序中甚至可以使用它.它可以减少到3秒,但甚至不能接近AWS执行的操作.
我可以通过Azure提高性能的另一种方法是什么,以便我可以快速冷启动我的功能?
我是Azure Functions团队的成员.我可以向你保证,我们并不是故意让 JavaScript变慢.它只是带来了一些我们仍在努力解决的挑战.如您所述,您获得的60秒冷启动性能是由于加载大量小文件时产生的网络延迟,这是node.js应用程序的典型情况.
我们目前的建议是利用Azure-Functions-Pack.它使用webpack来显着减少应用程序加载的文件数量.
我们正在进行一些改进,旨在使手动运行Function Pack的过程变得不必要.我们的目标是在2017年晚些时候的某些生产中进行一些改进.