本文介绍如何将Spring Boot微服务部署到函数计算上,配合冷启动加速,快速启动函数以响应业务请求。
使用场景
Spring Boot以其便捷的开发体验和强大的生态系统备受青睐,然而,随着项目规模的增长,Spring Boot微服务的冷启动需要一定的时间,这让部署在函数计算平台变得越加困难。函数计算平台针对大规模复杂Java应用推出冷启动加速功能,快速提高您的微服务冷启动时间。
使用限制
当前仅支持Java自定义运行时函数。
准备工作
需要准备一个Spring Boot微服务,且具备HTTP GET健康检查接口。
操作步骤
一、微服务打包、部署
-
使用Maven打包您准备的Spring Boot微服务为单个jar文件,并将该文件压缩为zip格式压缩包。
-
登录到函数计算控制台,点击创建函数按钮,进入函数创建页面。
-
选择自定义的创建方式,填写函数名称,在运行环境下拉框选择跟您的微服务匹配的Java版本,代码来源选择通过ZIP包上传代码,并上传您在第1步准备的zip压缩包。然后填写微服务的启动命令、监听端口。
-
在高级配置,选择开启冷启动加速,并配置您准备的微服务的HTTP GET健康检查接口路径。
-
点击确定提交函数创建。
二、查看部署进度
在函数创建成功后,函数列表页面,可以看到函数的部署状态。
说明对于开启了冷启动加速的函数,在当前函数创建或更新后,平台会执行冷启动加速初始化:
基于当前函数的配置和代码创建一个冷启动加速辅助函数,该辅助函数对租户不可见。
辅助函数创建成功后,平台会调用辅助函数的健康检查接口直到应用就绪,即健康检查接口响应码返回200。调用频率为每秒1次,最大调用次数为300。调用函数计费规则请参考计费概述。
辅助函数内的应用就绪后,执行后续相关流程。
初始化完毕后,平台自动删除该辅助函数。
三、测试函数
待函数部署成功后,进入对应的函数详情页面,点击测试函数请求您部署的微服务,此时可以看到在3秒左右完成了冷启动以及响应请求。
产品计费
对于开启冷启动加速的函数,在函数创建或更新时,平台会为该创建一个辅助函数并调用该辅助函数健康检查接口,调用函数会占用计算资源,会产生费用,详情请参考计费概述。