Serverless AI训练营课时1:初识 Serverless(上)(三)
课时1:初识 Serverless(上)(三)
基于Serverless计算的价格将低于Serverful计算,至少不会高于Serverful计算。
Serverless将会接入更多的后台支撑服务,如OLTP数据库、消息队列服务等。
Serverless计算一旦取得技术上的突破,将会导致Serverful服务的下滑。
Serverless将会成为云时代默认的计算范式,将会取代Serverful计算,因此也意味着服务器-客户端模式的终结。
因此,这个领域非常激进,最后一条观点是架构将成为云时代的默认计算范式,将替代所有计算,这也意味着服务器客户端模式的终结。虽然在最初,UC博客对云计算的发展持保留态度,但最终他们认可了云计算成为默认计算范式的可能性。从他们的态度变化中可以看出,架构具有巨大的潜力,只要我们深入研究和探索。架构不仅在学术研究中有高度的价值,也在推动整个行业的发展和进步中起到了重要作用。
在之前,我们讨论了云计算的定义、发展历史以及UC博客对架构的看法和观点。
现在,让我们更具体地探讨一下什么是Severless架构。首先,我们可以思考一个问题,你是否曾经创建过在线线上服务,例如个人博客、实验室网站、小程序或其他类型的在线服务,如果是的话,我们可以回顾一下最初的在线服务是什么样的,然后再比较它们与基于架构的形式之间的差异。
三、架构对比
在传统的Web应用架构中,通常包括客户端、服务端和数据库等元素。在项目开发中,需要购买服务器、选择服务器规格、操作系统、环境配置、服务器软件安装、业务代码上传和监控服务器健康等一系列操作。这些任务需要耗费大量时间和精力。
我们还需要留着团队对服务器的健康进行维护感知,这些流程都是我们需要做的。
然而,在Serverless云原生架构下,整个流程似乎变得更加复杂,但实际上我们可以仔细分析一下。首先,云原生架构中有一个API网关,这个网关扮演了服务器软件的角色,但是它是基于云服务提供的,如阿里云、华为云、百度云、腾讯云等。这些云服务提供了网关,无需我们自己安装服务器软件。这一步可以省略。从左侧过度到右侧,发生了本质的改变,其中包括的网关等业务系统。主张的思想是把更关键的业务交给更关键的人。
接下来,我们考虑架构的其他方面,例如如何处理客户端、API网关以及其他相关元素。
在云原生架构下,我们不再需要关注服务器的购买、规格选择、操作系统配置和服务器软件安装等复杂任务。相反,云服务提供了API网关,这个网关充当了服务器软件的角色。我们可以专注于处理客户端、API网关以及与业务逻辑相关的事项。
所以,云原生架构实际上简化了服务器管理的一些方面,使开发人员可以更专注于应用程序的开发和业务逻辑的实现。同时,云服务还提供了弹性伸缩的能力,使应对流量波动更加容易。这是云原生架构的一个关键优势之一。
在云原生架构中,数据库、身份验证和其他基本能力都由云服务提供,无需我们手动配置和管理。我们只需要关注业务逻辑的实现,通常可以通过编写一些函数来完成。这些函数可以包括搜索、数据库操作和其他业务逻辑。
在传统的外部应用架构中,我们需要考虑的范围更广,包括服务器的购买、操作系统配置、服务器软件安装、数据库管理、身份验证、操作系统等等。而在云原生架构下,这些复杂的底层任务都由云服务提供,使我们可以更专注于编写应用程序的核心功能。
这种变化实际上是一种本质的改变,使开发人员能够更快地开发和部署应用程序,同时具备更高的弹性和可伸缩性,以适应不断变化的需求和流量。这是云原生架构的一个关键优势,它使开发更加灵活和高效。
四、工作流程
在进入架构层面时,实际上只需关注我的业务代码即可,正如我们刚才所讨论的那样。如果突然有大量流量涌入,是否会导致我的服务器崩溃。
或者说,你的系统是否存在安全隐患,或者在你的系统中是否存在问题,可能会被用户发现,然后导致我的服务器受到攻击。
实际上,从架构的角度来看,它主张将更专业的事情交给专业人士处理。开发者只需要关注他们自己的业务逻辑即可。因此,对我来说,我确实可以关注更少的事情,从而获得更多的回报。
让我们来看一下整个架构的工作原理。在最左侧是开发者,开发者编写完代码后,可以将其上传到函数计算这样的架构中心。上传后,可以通过API或SDK对其进行调用或触发。
同样,还可以使用一些云产品事件,比如我们刚才提到的API网关,它是一个典型的云产品。在没有请求时,函数不会启动相应的实例。一旦有请求到来,函数将启动相应的实例来处理请求,因此架构具有弹性缩放的概念。底层的服务和服务器运维等操作都由云厂商来处理,因此在安全性和服务器稳定性方面都有更好的保障。
在我们刚才的描述中,传统的服务架构会一直产生费用,只要服务器运行,即使在没有人使用或流量很低的晚上也是如此。但在架构中,当所有东西都部署好后,实际上是不会产生费用的,只有当你的实例被触发或项目运行时,才会收费。
如果你的服务在晚上没有人使用并处于停止状态,那么此时不会产生费用。因此,架构除了具有弹性,还采用按量付费的模式,这也是刚才所提到的两个特点。
Severless具有哪些特点:
这种基本的云产品通常都具备一些基础的安全能力。首先,这是非常基本的,也就是说,在使用云函数之前,云服务本身已经具备了一些基本的安全能力。这是第一点,它可以帮助您保护您的应用。从传统的角度来看,如果您只使用单台服务器,您认为它具备了足够的安全性,或者说,它的安全性主要取决于什么,或许您需要采取一些额外的措施。