这套方案和平台的迁移方案有什么区别?
Midway Serverless 从 v1.1 版本开始提供了一套应用迁移到 Serverless 容器的方案,而各个平台也已经有自己的方案,比如阿里云的 customRuntime 接入方案,以及腾讯云的各种 Component 组件。
这其中的区别有几个:
- 1、Midway Serverless 提供的平台迁移方案和函数部分相同,是跨平台的,即方案不受限于阿里云或者其他云平台,代码和应用时期一致,不需要(或者很少)做修改
- 2、复用函数的运行时适配能力,可以和函数享受同样稳定的能力,这套适配能力由 Midway Serverless 本身提供,代码开源,也方便排查和定位问题,或者增强能力
- 3、Midway Serverless 这套能力比较通用,私有化部署或者适配其他应用框架非常容易
一些能力限制
- 1、平台网关的限制,比如阿里云和腾讯云网关,超时时间,POST 大小、文件上传等,和函数是一样的,即函数不能做的事情,在这套应用部署方案中依旧不能做
- 2、应用的包部署不宜过大,如果比较大,可以使用云平台的对应方案来解决,比如阿里云的 NAS,或是腾讯云/AWS 的 Layer
- 3、应用在函数容器中的带状态的部分,由应用本身处理,这套方案不负责解决这个问题
- 4、应用在函数容器中部署模型为单进程,稳定性由弹性容器本身来解决
- 5、应用中有 long runing 或者定时任务的部分,在无流量情况下不会触发,请使用其他方案代替。
- 6、应用中 socket 等非 HTTP 协议,不会生效