00:01
前面我们介绍了LA的由来,了解了SRS架构的基本理念和设计思想,了解了它的诸多优点和缺点,那这就结束了吗?当然不是,SRS还有很多特性我们并没有涉及到,包括像运行机制、开发方式等等,还有一些其他的优缺点,那当然你对前面的内容呢,也可能处于似懂非懂的状态,没关系,接下来我们会在具体的应用实践当中深入感受SRS的架构理念,补充对servers其他特性的讲解,关于S的一切我们会在接下来的案例中一一呈现,前面说S是与云厂商绑定的,所以我们需要选择一家云平台服务厂商来进行实战的演练,那我。
01:02
用过阿里云AWS还有腾讯云提供的,相比于其他厂商呢,我个人比较推荐使用腾讯云,并不是其他厂商不好啊,只是针对于初学者,腾讯云呢,提供了非常友好的手册以及教程啊,当然这是相对而言,那如果你使用过小程序的云开发,那么你对腾讯云也会感到非常的熟悉,腾讯云的开发文档呢,我这里也给大家做一个展示,就像你看到的,在腾讯云开发的文档中心中,有关云开发的所有内容呢,全部都在这里有所展示,那么我们要使用云开发,那首先呢,我们需要先前往腾讯的云官方来去注册这样的一个账号,当然如果你有账号的话呢,可以直接略过,然后选择登录就可以了,但是一定注意,不管你是新账号还是老。
02:02
账号一定要做意的一件事情就是完成实名认证,如果没有完成实名认证呢,啊,是不允许你去申请这些服务的,至于登录和注册的整个过程呢,我就不再去演示了,大家自行完成就可以,那我这里呢也已经使用了一个实名认证的账户登录了,那登录之后我们怎么去开发或者是开通使用它的rize呢?首先我们在产品这个地方呢,来基础这里能够看到下面有一个rless,这里呢一定要注意,这里的serverless呢,只是指的它一个开发框架,那其中的云函数呢,指的就是我们的fast,而我们真正在使用时呢,会用到它的用户验证,存储数据库以及云函数,那腾讯呢也做的非常的不错,在整个的sola的服务当中呢,给我们提供了一个叫做云开发,也就是cloud base这样的一个内容。那它呢,是包含了整个我们在。
03:02
在使用应用时所需要使用的所有服务,其中呢包含了用户验证,数据库存储缓存等等,所以呢,我们在使用时呢,最好是直接选择云开发的cloud base就可以了,那点开它呢,我们就可以直接在这里选择免费开通就可以,那前面呢,我们也已经说过,云开发的最大一个特点就是你不使用没有请求,没有使用它的服务器资源呢,是不收费的,所以开通呢本身也就是免费的,那么我们点击进行免费开通,因为目前呢,我是一个新的环境,所以呢也没有任何的开通的服务,那么这里呢,他就告诉我说欢迎使用腾讯云的云开发,我们直接呢去快速开通,我们目前呢选择的是上海,然后这个环境名称呢。
04:02
我们可以随便起一个名字,比如这里呢,我们就叫一个拉钩零一,好,然后第一次开通的话呢,它会让我们有一个开通免费资源的,那每个月呢,都会去赠送一定的使用量,那我肯定是选择开通,好现在呢,我就开始去授权,并且开通,OK,那此时呢,他会跑到我的这个访问管理这里来啊,让我去开通这个服务授权,那我点击同意就可以了,好,那现在呢,他让我去验证我的手机号,那肯定是需要验证的,因为这个操作呢,还是比较敏感的啊好,输入验证码之后呢,我们就已经开通好了,它会自动的跳转到我的开发的控制台这里,那么在控制台这里呢,我们能够看到,首先在前面,好,我先把它关掉,在前面的这里会有一个这。
05:02
地区的选择,那就目前来说呢,腾讯云会有两个地区的可选项,一个呢是广州,一个是上海,那我呢还是选择上海,因为相比于广州来说,我距离上海更近好,那环境的创建呢,是需要我们有几分钟的等待时间的,等待创建完成之后,我们能够看到这样的一个环境,并且是我们的拉钩零一这样的一个环境的名字,那要使用云服务就点进这个云环境,那在云环境的控制台当中,我们能够看到最基础的这些服务,包括用户的管理,数据库,云存储,云函数,静态托管,托管以及运维服务,日志管理,还有监控警告,还有呢就是一些额外的扩展能力了。那么现在呢,回到我们最核心的内容上来,Summer,最重要的呢就是fast和bus,那bus呢,是语音平台给我提供的一系列服务,而对于fast来说呢,是我们运行。
06:02
代码的一个环境,那么现在我们来看一下这个云函数,也就是我们的fast这里如何去创建一个运行环境,并且我们尝试写一段代码,试一试,看一看能不能正常的去运行我们写的代码,那如何去使用呢?点进到这个云函数当中,我们去选择新建一个云函数,那这里呢,每一个函数都有一个函数的名字,按照惯例呢,一般都会在这里写一个hello word,那这里呢,我们也叫hello就可以了。好,那么下面呢,在选择运行环境时呢,我们能看到实际上选的是我们所使用的编程语言,那这里我们当然要选择note GS,但是呢,我们发现它的版本呢,停留在了10:15这个版本上,而据我所知,最新的稳定版呢,是已经发布到了14这个版本,而当我们点击进行选择时呢?它这里会有pd Python go Java。
07:02
那并没有我们所熟悉的no基S14这个版本,那原因呢,就在于每一种编程语言在service的运行环境当中呢,都要去做大量的适配,而最新的版本出来之后呢,云服务器有大量的工作要去做,所以呢更新是相对来说比较慢的,那么这一点呢,也是service的一个缺点,就是我们没有办法去使用比较新的一些语言特性,那这里呢也需要注意,那再往下呢,就是我们在使用或者是运行这个函数时所能够调用的最大内存,那请注意,如果你预计在运行过程中需要更大的内存,那么这里呢,你可以选择更大的这个选项,但是一般情况下呢,我们是用不到这么大的内存的,同时呢,呃,因为它是按量付费,那你选择的内存的上限越大,那也就有可能造成你的费用也就越高。
08:02
那这里呢,我们就选择一个比较相对适中的256就可以了,好我们去点击下一步,那此时呢,就会把我们的函数相关的配置给我们展示出来,那这里呢,也会给我们一个默认的一段代码,那我们先点击确定,一会儿呢再来看这个代码到底是什么含义,好我们稍等一会儿,那就进入到了这个函数创建的这个提示这里就能看到了,那我们点击进进入到函数当中,那在函数代码这里呢,我们就能够看到刚刚的这套代码了,那同时呢,我们就可以在这里进行一个编辑,那腾讯云呢,给我们提供的是一个基于浏览器的这样的一个编辑器,它呢和我们的Vs code有点类似,但是这样的编程方式呢,肯定不是我们日常开发所使用的方式,但是现在呢,我们先借助这个编辑器呢,来做一点小测试,那在这个代码当中呢,我们来看一看,首先我们能看到呢,是这样的一个文件。
09:02
叫做index JS,那这个文件呢,实际上就是我们函数的叫入口文件,那index这个入口文件中呢,有一个非常重要的函数的名字叫做main函数,那也就是说呢,每一个函数会有一个入口文件以及入口函数,那这个入口函数和入口文件呢,是可以更改的,但是呢,我们一般不建议更改,函数呢,是接收到了两个参数,一个叫做event,一个叫context,这两个分别代表了什么含义呢?Event对象指的是触发函数的事件,比如呢,像小程序端调用时呢,Event是小程序调用云函数时传入的参数,在使用HTTV请求的形式去调用时呢,那event就是一个集成的请求体,Context对象包含了此次的调用信息和函数的运行状态,可以使用context去。
10:02
了解服务运行的情况,那接下来呢,我们做一个简单的更改,我们呢就把这些代码呢,直接全部都删除掉,然后在这里呢,改成一个hello word and拉勾,好,那我们直接按CTRLS就可以进行保存了,那保存函数代码之后,如何执行这些代码,或者叫如何访问它呢?那前面我们说过,Fast产品的一大特性是事件驱动的,想要让函数代码运行,我们需要创建一个事件的触发器,我们比较熟悉的就是HTP的触发器了,就是发送一个HTTP请求,让函数去运行,那么在腾讯云这里呢,它叫做HTTP的访问服务,那回到我们的控制台的环境这里,就能够看到这里有一个访问服务了,在访问服务这里我们就能够看到,可以点。
11:02
可以新建,然后就可以创建这样的触发路径了,好,我们点击这个域名呢,它会给我们一个星,或者是我们现在默认给的这样的一个域名,我们直接点击,然后触发路径呢,可以随便写,那这里呢,我们就以斜杠开头,设置一个hello,然后呢,再让你去选择这个关联的资源,那在关联资源这里呢,我们一定记得要选择云函数,然后开始去选择我们刚刚所使用的这个函数实例叫hello,那么这里有一个健全开关啊,那现在呢,我们暂时先把它关掉,就是不要开,然后我们点击确认,好,那此时呢,我们就能够看到有一个提示叫做创建触发路径成功,但是呢,你会发现页面中啊并没有什么反应啊,没关系,我们刷新一下,好刷新完成之后呢,哎,我们就能够看到有一个这。
12:02
的触发路径叫hello的这样一个触发器了,但是呢,你也会看到这里的状态呢,是正在创建过程钟,那预计呢需要等待三到五分钟,那这个过程呢,相对来说还是有点慢的,不过呢也没有关系,等它创建完成之后呢,我们就可以去访问这个默认域名了,但是呢,一定要记得在默认域名的后面一定要加上这个hello就可以了,那我们现在呢,先来点击啊,它当然是一个没有此页面,没关系,那我们先去输入hello,然后现在呢依然没有啊,我们就需要等待它的创建成功,触发器创建成功之后呢,我们就可以回到刚刚的请求这里,那刚才呢,我的浏览器啊,已经重新的帮我发送请求了,那现在呢,我再去刷新也是能够正常发送请求,但是现在我们拿到的值呢,好像和我们预想的不太一样,那这是什么原因造成的呢?我们回到云函数当中,我们来去检查一下。
13:02
看我们的代码好,在函数代码这里呢,诶我们发现啊,我们刚刚改过的代码呢,好像是没有生效的,那现在呢,我们再来一次更改,比如呢,我还是删掉之后呢,在这里加一个暗的拉勾,那很明显和我们的Vs code有点类似,那这里呢,会如果没有保存的话呢,会有这样的一个小点儿,那如果我保存了之后呢,哎,它就小小点呢,就消失了,你觉得你已经保存了,但实际上呢,啊并没有,怎么样才算是保存呢,它下面有一个保存按钮啊,你就只有点击这个保存按钮,才是真正的保存到了云函数的代码当中,那么看到这里我们的函数更新成功,还才算是更新成功了,那当然还有一个问题呢,就是说你现在是打印了这个函数,那我们在发送HTP请求时呢?我们接到的这个值并不是conso log打印的值。
14:02
那你想在请求中获取到返回值是你想要的值,那么你需要通过return进行返回,所以呢,更简单的方式呢,就是我们把这些代码直接呢放到这个return这里,那前面这个代码呢,其实也就没有必要再次存在了,好,我们同样的保存,然后下面不要忘记再一次的点击这个保存,那直到能够看到这边的提示,就算更新成功了,好,更新成功之后,我们再回到浏览器的请求这里,我们再一次的刷新啊,就能够看到有一个hello word拉钩,那这就是我们云函数的最简单基本的一个使用方式。
我来说两句