Serverless Computing(函数计算) 在百度云的实现

Serverless Computing(或称为函数计算CFC)如今已是各大云平台的标准功能。中小型应用(包括Web, Rest API, 定时任务等)都可以通过函数计算实现。其灵活性强,扩展性高,费用相对低。

  1. 灵活性强,扩展性高
    显然一个原子服务就可以定义成一个函数,多个函数之间可以自由组合,自然灵活可扩展。当然,前提是代码得实现
  2. 费用低
    相比租服务器而言,函数计算是用几次付几次的钱,比租赁整台服务器价格低也是自然的。

说说缺点:

  1. 每个云平台对函数计算都有自己的API/Framework,互相不通用。因此如果需要切换平台,代价会比较大。
  2. 只适用简单的计算(数据增删改查,Http访问等),对于复杂运算(CPU密集型、需要第三方库)的情况,支持度较差。

废话不多说,以下介绍如何在baidu智能云平台通过函数计算实现Rest API,及Web App。
注册登录百度云
https://cloud.baidu.com/

搜索:函数计算

文档:
https://cloud.baidu.com/doc/CFC/s/Mjzmg3s6y
https://cloud.baidu.com/doc/CFC/s/tkti93q2i

创建函数

选择空白函数

填写基本信息及NodeJS代码

添加触发器,这里选择Http触发器,get方法

随后就可以通过地址访问该函数
https://an4xae58vrd9r.cfc-execute.bj.baidubce.com/demo/20211004

默认的nodejs代码返回数据类型text/plain

如果想要返回html,请参考以下代码

exports.handler = (event, context, callback) => {
    callback(null, {
	    "statusCode": 200,
	    "headers": { "Content-Type": "text/html; charset=utf-8" },
	    "body": "<html><body><div style='width:300px; height:300px; background:red;' /></body></html>"
	});
};

这样就可以得到一个网页,示例地址如下:
https://an4xae58vrd9r.cfc-execute.bj.baidubce.com/demo/20211003

后面我会再测试如何host React App

posted @ 2021-10-04 09:43  老胡Andy  阅读(304)  评论(0编辑  收藏  举报