Serverless 极速部署线上商城

https://developer.aliyun.com/adc/scenario/exp/4bc3fb53a8f9474ca481cdc548978ea4

1. 创建资源

通过体验中心界面点击创建资源,等待资源创建完成。

2. 准备测试程序的 Jar 包资源

1、在远程桌面,双击打开 Firefox ESR 浏览器。

2、复制如下链接,下载测试程序 Jar 包资源:

https://labfileapp.oss-cn-hangzhou.aliyuncs.com/cartservice-provider-1.0.0-SNAPSHOT.jar

https://labfileapp.oss-cn-hangzhou.aliyuncs.com/frontend-1.0.0-SNAPSHOT.jar

https://labfileapp.oss-cn-hangzhou.aliyuncs.com/productservice-provider-1.0.0-SNAPSHOT.jar

3、然后将浏览器下载好的三个 Jar 包拖动到桌面,方便部署时查找。

3. 进入 SAE 控制台

1、打开虚拟桌面的 FireFox ESR 浏览器,在 RAM 用户登录页面,输入云产品资源列表中的子用户名称,然后单击下一步。

2、在用户密码页面,输入云产品资源列表中的子用户密码,然后单击登录。

3、在浏览器中打开新页签,访问如下地址,进入 SAE 控制台。

https://sae.console.aliyun.com/

说明:

由于地域的问题,可能出现授权的问题,您可以直接关闭错误提示框,按如下操作切换所在地域。

4、点击控制台中的应用列表,并确保自己的所在区域为“上海”,可以发现此时已经有了三个测试应用分别是:cartservice、frontend、productservice。

5、需要注意的是,此时这三个 SAE 应用只是 DEMO 应用(为了让大家可以手动体验 SAE 的部署功能),因此,我们接下来需要将真正的微服务应用部署到这三个应用当中去。

4. 部署微服务应用

1、配置创建完毕后,回到应用列表,点击与云资源面板上一致的命名空间名称——进入 cartservice 应用,点击部署应用。

2、点击删除原 Jar 包,然后上传之前所准备的 Jar 包(cartservice-provider-1.0.0-SNAPSHOT.jar)完成程序包的替换。同时,点击一下“使用时间戳为版本号”更新一下版本信息。上述操作完成后,滑到最后,点击确认。

3、此时应用进入变更状态,等待片刻后,应用完成部署。

同理,完成剩下两个应用的部署(frontend -> frontend-1.0.0-SNAPSHOT.jar; productservice-> productservice-provider-1.0.0-SNAPSHOT.jar)

5. 配置 SLB,提供外网访问

1、回到应用列表页面,点击与云资源面板上一致的命名空间名称——打开 frontend 应用。

2、在 frontend 应用的基本信息页面,在应用访问设置区域的公网访问地址中点击编辑公网 SLB 访问。

3、在编辑公网 SLB 访问的对话框的 TCP 协议中,单击操作列下的删除图标。

4、在编辑公网 SLB 访问对话框中,单击 HTTP 协议,在 HTTP 端口输入 80,在容器端口输入 9999,单击确定。

5、等待片刻,SLB 端口变更完成后,即可在浏览器输入相应的 IP 进行访问。如果访问时出现以下界面,则表示三个微服务应用部署成功了。

6. 配置弹性规则

1、接下来,我们将测试 SAE 的弹性功能。回到 SAE 控制台的应用列表,点击与云资源面板上一致的命名空间名称——打开 pruductservice 应用,再点击自动扩缩。

2、在弹性配置界面,选择监控指标弹性,然后完成参数的填入,最后单击确认,完成弹性的设置。

此时,我们得到一条弹性策略,我们需要再点击启用。

7. 触发压测,观察弹性功能

回到我们之前的那个 IP 访问的界面,输入压测触发路径,填入总请求数与最大线程并发数。/product/buy/{requestTotal}/{threadNum}; 可参考如下示例:

1
/product/buy/400/5

在浏览器地址栏填入上述参数后,键盘敲下回车确认访问。

此时我们便可以在 frontend 这个应用的实时日志中,看到压测程序已经触发。

并且,可以在 productservice 应用中,看到新实例被弹出。同时,我们打开应用监控也可以看到应用处理请求的情况。