Serverless Computing(函数计算) 在百度云的实现
Serverless Computing(或称为函数计算CFC)如今已是各大云平台的标准功能。中小型应用(包括Web, Rest API, 定时任务等)都可以通过函数计算实现。其灵活性强,扩展性高,费用相对低。
- 灵活性强,扩展性高
显然一个原子服务就可以定义成一个函数,多个函数之间可以自由组合,自然灵活可扩展。当然,前提是代码得实现 - 费用低
相比租服务器而言,函数计算是用几次付几次的钱,比租赁整台服务器价格低也是自然的。
说说缺点:
- 每个云平台对函数计算都有自己的API/Framework,互相不通用。因此如果需要切换平台,代价会比较大。
- 只适用简单的计算(数据增删改查,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