全部产品

Midway Serverless + RDS MySQL 快速开发 Todo List

更新时间:2020-08-20 13:19:30

什么是云开发平台?阿里云所提供的一站式、全云端的开发平台,打开浏览器就可以开发、调试、上线。进入Serverless云开发平台

什么是Midway FaaS?一个用于构建 Node.js 云函数的 Serverless 框架,帮助开发者专注于产品开发,降低维护成本。欢迎 Star! https://github.com/midwayjs/midway-faas

什么是RDS?阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。

环境需求: 可以上网的浏览器,登陆https://workbench.aliyun.com/

操作步骤: 从账号的创建到一键部署,手把手教你零基础创建一个有前后端交互、数据增删改查等行为的Todo List应用。

  1. 点击主页上的 免费云开发 按钮登陆阿里云账号,没有账号注册后登陆即可。image.png
  2. 填写团队名称,使用规模选1-10即可。img
  3. 点击 创建应用,按图选择“Midway FaaS Mysql 数据库示例”模版进行下一步操作image.png
  4. 输入应用的名称简介等信息确定以后成功创建应用,点击应用卡片上的“开发”进入CloudIDE开发界面。
  5. 按照下图调出命令行,输下面的两行命令安装依赖和构建,详细使用文档可查看README。image.png
  6. 参照文档执行命令安装依赖npm i --registry=https://registry.npm.taobao.org
  7. 创建RDS数据库

    1. 创建数据库实例点此链接,选择规格,购买实例image.png
    2. 查看数据库实例点此链接,查看已购买的实例image.png
    3. 管理数据库连接信息点击上图中的管理按钮,进入数据库详情页面,下图中的外网地址用于下面配置中的 MIDWAY_RDS_HOST 、外网端口用于下面配置中的 MIDWAY_RDS_PORTimage.png
    4. 创建数据库账号点击左侧第二栏 — 账号管理,创建数据库账号,其中数据库账号用于配置 MIDWAY_RDS_USERNAME ,其中密码用于配置 MIDWAY_RDS_PASSWORDimage.png
    5. 创建数据库点击左侧第三栏 — 数据库管理,创建数据库,其中数据库名称用来配置 MIDWAY_RDS_DBNAME ,并对上一步创建的账号进行授权。image.png
    6. 创建数据表点击步骤c中的登录数据库,双击左侧数据库,打卡sql执行页面image.png
  1. CREATE TABLE `todo` (
  2. `id` bigint(20) NOT NULL AUTO_INCREMENT,
  3. `todo` varchar(255) NOT NULL,
  4. `status` int(11) NOT NULL,
  5. `gmt_create` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  6. PRIMARY KEY (`id`)
  7. ) ENGINE=InnoDB DEFAULT CHARSET=utf8
  1. 配置默认为读取环境变量,亦可手动在 config/config.default.ts 文件内进行修改。云开发平台暂时提供一个临时测试的RDS数据库供大家体验,要开发自己的应用,请换成自己的RDS数据库,详见附录1。
  2. 本地研发执行 npm run dev 命令,启动本地研发服务器image.png
  3. 开发完成后,点击左侧的tab,然后进行一键部署image.png
  4. 点击命令行中的二级域名就可以访问了
  5. 继续在线上环境进行部署和发布上线

因为云开发平台是基于Serverless架构,调用的云资源按量付费,并且每个月都有免费的额度,个人使用访问量不大基本不用付钱。

立即免费体验全云端开发,还送百万代金券。

https://workbench.aliyun.com/camp

附录1. 数据库配置
环境变量名 释义
MIDWAY_RDS_HOST RDS 数据库连接地址
MIDWAY_RDS_PORT RDS 数据库连接端口
MIDWAY_RDS_DBNAME RDS 数据库名称
MIDWAY_RDS_USERNAME RDS 数据库账户名称
MIDWAY_RDS_PASSWORD RDS 数据库账户密码