前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何用Serverless搭建Mock server

如何用Serverless搭建Mock server

原创
作者头像
WoodyWoody
发布2022-01-18 11:55:14
8970
发布2022-01-18 11:55:14
举报
文章被收录于专栏:Woody的专栏

前言

什么是Serverless

无服务器Serverless是一种云原生开发模型,可使开发人员专注构建和运行应用,而无需管理服务器。

云函数(Serverless Cloud Function,SCF)则是腾讯云提供的无服务器执行环境,可以在无需购买和管理服务器的情况下运行代码。

什么是Mock Server

现在的业务系统很少有孤立存在的,它们或多或少需要使用或依赖其他服务,这给我们的联调和测试造成了麻烦。

为了应对这种情况,我们常会搭建一个临时的server,模拟那些服务,提供模拟数据进行联调和测试。

这个临时的server就是 mock server 。

因此mock server通常具有以下特点:

  1. 快速搭建、无需写代码
  2. 能模拟任何数据
  3. 低成本
  4. 简单配置

也正是这些特点,均符合serverless的特点,因此我们使用serverless来做这件事情再合适不过了。

接下来我们就用腾讯云的云函数为例,来讲解一下如何快速搭建Mock Server。

如何用云函数快速搭建Mock Server

目前市面上有很多Mock server工具,开源的不开源的都有。

这里就用Moco作为例子来教大家快速部署一个Mock Server。

Moco是一个开源框架,这是它的Github链接

准备工作

首先去Moco的github页面下载准备好的jar文件。

其次需要自己准备一个定义response的JSON文件,如下。里面的内容需要根据自己的业务去定义要返回的mock数据是什么。

代码语言:javascript
复制
[
  {
    "response" :
      {
        "text" : "Hello, Moco"
      }
  }
]

最后在云函数中运行需要一个启动文件,文件名必须是scf_bootstrap,内容如下:

代码语言:javascript
复制
#!/bin/bash
/var/lang/java8/bin/java -jar moco-runner-1.2.0-standalone.jar http -p 9000 -c foo.json

其中端口号必须是9000,JSON配置文件名如果不是foo.json则需要改成自己的文件名。

然后把这个三个文件打包成一个zip文件,如下图。

部署Mock Server

打开云函数的控制台,新建一个云函数。如下图。

  • 选择从头开始
  • 选择Web函数
  • 运行环境选择Java8
  • 在函数代码那里上传刚才打包好的zip文件
Untitled.png
Untitled.png

最后,点击完成即可。

然后,你到函数管理界面就可以看到访问路径了。如下图。

向URL发送HTTP请求就能获得你在JSON文件中定义的response。

1.png
1.png

一键部署

上面的方式是不是已经很快捷了。但是还有更快的,没有错!

Mock server已经上架到云函数的官方模版中了。

如下图,在模版中搜索mock就可以看到,一键就可以部署一个Mock server了。

34.png
34.png

用Serverless搭建Mock Server的优势

用Serverless搭建Mock Server具有下面几个优势。

快速搭建

所有开发团队都希望只花极少的时间就能快速搭建一个Mock Server。

因此使用Serverless不用关注和维护服务器,所以可以快速搭建运行一个mock server。

极低成本

由于Mock server只用于测试,如果我们购买服务器来搭建,会增加不少金钱成本和维护成本。

而Serverless按量收费和免运维的特点,则可以既节约了金钱成本,又节约了维护成本。

通常我们调用Mock Server的次数都很少,而云函数是按调用次数收费的,每个月有10万次免费调用次数。所以使用云函数则可以免费薅羊毛。

无需运维

我们不需要像管理服务器那样需要去配置端口、防火墙等。

只需要上传mock server就结束了。

最后

Serverless还可以做很多类似的事情,因为它的高性能、自动伸缩、按量计费等特性,让它成为了很多解决方案中的性价比首选。

未来我会继续探索serverless的更多实用的场景与大家分享。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
    • 什么是Serverless
      • 什么是Mock Server
      • 如何用云函数快速搭建Mock Server
        • 准备工作
          • 部署Mock Server
            • 一键部署
            • 用Serverless搭建Mock Server的优势
              • 快速搭建
                • 极低成本
                  • 无需运维
                  • 最后
                  相关产品与服务
                  云函数
                  云函数(Serverless Cloud Function,SCF)是腾讯云为企业和开发者们提供的无服务器执行环境,帮助您在无需购买和管理服务器的情况下运行代码。您只需使用平台支持的语言编写核心代码并设置代码运行的条件,即可在腾讯云基础设施上弹性、安全地运行代码。云函数是实时文件处理和数据处理等场景下理想的计算平台。
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档