背景介绍首先介绍一下本文中出现的几个重要概念:函数计算:函数计算是一个事件驱动的服务。通过函数计算,用户无需管理服务器的运行等,只需编写代码上传即可。函数计算以弹性伸缩的方式准备计算资源和运行用户代码,用户只需为实际代码运行消耗的资源付费。有关函数计算的更多信息,请参阅。Fun:Fun是一款支持Serverless应用部署的工具,可以帮助您轻松管理函数计算、API网关、日志服务等资源。它通过一个资源配置文件(template.yml)协助您开发、构建和部署。有关Fun参考的更多文档。Litemall是基于SpringBoot、Vue、微信小程序等技术开发的商城系统。包括SpringBoot后台+Vue管理员前台+微信小程序用户前台+Vue商城移动端。更多参考资料。本文演示如何将商城应用的SpringBoot后台、Vue管理员前台、Vue商城移动端三个组件迁移到函数计算。下面是一个已经应用到函数计算上的示例效果演示。效果演示管理后台效果演示打开http://litemall.mofangdegisn.cn显示登录页面:使用默认账号登录,完成后进入后台管理页面:可以添加商品分类,将商品放在后台管理页面上架、用户管理、系统管理等。轻商城在移动端的效果演示用手机打开网址http://litemall.mofangdegisn.cn/vue/index.html,就可以打开轻商城:可以浏览里面的商品轻商城,将喜欢的商品加入购物车(暂不支持支付):架构图项目部署准备从阿里云获取基本信息:accountId可以从安全设置页面获取,ak信息可以从安全信息管理页面下载Fun工具:我们将使用Fun工具完成项目部署。建议直接下载二进制可执行程序。配置Fun工具:下载完成后,执行funconfig配置aliyunaccountId、ak、region等信息。如果域名没有注册过,这里的地区只能选择海外集群。如果域名已经备案,则没有限制。域名:例如本文使用的litemall.mofangdegisn.cn域名。在域名所在的控制台添加CNAME域名解析,记录值填写为1911504709953557.cn-hangzhou.fc.aliyuncs.com,然后将这里的1911504709953557替换为自己的accountid,cn-hangzhou替换为你自己在上一步配置的区域。Mysql:可以是自己搭建的MYSQL数据库,也可以使用aliyunRDS数据库。准备好MYSQL用户名和密码。如果只是demo示例,可以设置rds白名单为0.0.0.0/0,申请外网地址。如果是非示例场景,需要为函数计算配置VPC接入。可以参考这里的教程配置VPC访问RDS。本文例子是demo性质的,所以使用0.0.0.0/0方法。克隆项目执行以下命令克隆项目:gitclonegit@github.com:tanhe123/litemall.git如果没有安装Git,也可以点击页面的DownloadZip直接下载代码并解压it:为域名创建一个CNAME,为我们准备好域名,添加CNAME记录到导入数据库中在MYSQL数据库上创建一个名为litemall的数据库,然后在litemall-db中导入litemall_table.sql和litemall_data.sql这两个文件/sql进入数据库。如果你使用的是aliyunRDS,可以通过以下方法直接导入:修改template.yml中的配置,修改template.yml中的SPRING_DATASOURCE_DRUID_URL为数据库地址,修改SPRING_DATASOURCE_DRUID_USERNAME为数据库用户名,修改SPRING_DATASOURCE_DRUID_PASSWORD为用户名称和密码。最后将template.yml中的域名litemall.mofangdegisn.cn替换为自己的域名。安装商城Vue管理员后台+Vue商城移动端npm依赖。对于linux或者mac,可以直接在项目中执行./install.sh,该命令会分别进入litemall-admin和litemall-vue执行cnpminstall。编译Java项目并部署如果我们要使用的域名是http://litemall.mofangdegisn.cn,执行如下命令:DOMAIN=http://litemall.mofangdegisn.cn./deploy.sh需要替换掉以上域名与用户自己的域名执行后,完成部署。打开配置好的域名看看效果。小结通过本文介绍的技术,我们实现了商城应用快速部署到函数计算上。本文作者:tanhe123阅读原文为阿里云内容,未经许可不得转载。
