蓝盟IT外包,说明什么是服务器less

发布者:上海IT外包来源:http://www.lanmon.net点击数:1232

蓝盟IT小贴士,来喽!
部署MVC架构的Web应用程序后的典型情况。 上图中的整个蓝色部分是服务器端边界,负责应用或代码的在线运维。 Serverless需要解决的问题的边界是服务器端的边界,也就是服务器端的运维。
那么,我们先来看看服务器端运维的发展史,即从头到尾的发展史。 假设有Web应用程序。 开发这个Web应用程序涉及开发工程师和运输工程师两个角色。 研究开发工程师只关心应用的商业逻辑。 具体而言,整个MVC架构的Web应用的开发,从服务器端接口View层到业务逻辑Control层、数据存储Model层,Web应用整体的版本管理和在线bug修复运维工程师只关心适用的服务器端运维的事务. 他负责部署在线小程序Web应用程序、绑定域名和监视日志。 当用户访问量大时,他将扩展这个应用程序。 用户访问量小时,他会缩小这个应用程序。 服务器停止时,他又重新启动或更换服务器。
servlet时代。 最初,研发工程师不需要在意与部署相关的事情。 每当研发工程师发布新应用程序时,运维工程师都负责引进在线的最新代码。 运输维工程师必须管理迭代版本的发布、分支合并、在线应用和问题回滚。 如果在线出现故障,则必须获取日志并将其发送给开发工程师。
Serverfull时代完全隔离了研究开发和运输维度。 这种完全隔离的优点很明显:研发工程可以专注于自己的业务,但运维工程师成为工具人,关于大量的运维工作,处理大量的琐事。
DevOps时代。 运维工程师发现很多事情是重复的工作,在网上发生故障的情况下,必须自己抓住日志发送给研发工程师,效率很低。 因此,运维工程师开发了一系列运维控制台,让研发工程师处理导入在线和日志捕获的工作。
这使得运维工程师变得简单一点,但架构优化和资源扩展方案必须负责。 除了开发任务外,开发工程师还从运输维控制台发布新版本,以解决在线故障。 此时是开发兼运维DevOps,研发工程师兼任部分运维工程师的工作,但这部分工作应该由研发工程负责(例如版本管理、在线故障等)。 而且运维工程师把这一部分的工作工具化,更有效率,有less的倾向。工业时代。 运维工程师还可以根据研发工程师的开发流程,进一步提高运维控制台,实现代码的自动发布:代码扫描-测试-灰度验证-在线。 这样,开发工程师只需将最新的代码合并到Git仓库指定的develop分支中,剩下的由代码自动发布的流水线负责。 这时,研发工程师也不需要运维。 没有运维NoOps,研究开发工程师也回到了最初。 你只要关心自己的应用业务就行了。
运维工程师还可以发现资源优化和可扩展性方案,并利用性能监视流量来估计解决方案。 这样运维工程师的运维工作也全部自动化了。 那么,对于研发工程师来说,运维工程师的存在感越来越弱,运维工程师要做的事情越来越少,被自动化工具取代了。 这就是Serverless。
未来。 实现无运维后,运维工程师必须进行更基础的服务,建设基础设施,提供更智能、更省资源、更周到的服务。 研发工程师完全不用为运输维度的事情烦恼,可以集中精力处理自己的业务,提高用户体验,考虑业务价值。
无运维NoOps不是说服务器端运维不存在了,而是通过全知全能的服务,涵盖了引进研发所需的所有需求,使研发工程师的认识越来越少。 另外,NoOps是理想的状态,我们可以无限逼近NoOps,因此可以说是less而不是ServerZero。
Serverless的Server定义了Serverless解决问题的边界,即服务器端的运维。less说明了Serverless解决问题的目的,即无运输NoOps。 因此,Serverless应该被称为服务器端无运行维,这是Serverless需要解决的问题。
什么是无服务器
Serverless要解决的是使运维工程师的工作彻底透明化。 研发工程师只关心业务逻辑,不需要关心运输维和在线的各种问题。 为了实现这种状态,意味着将网络服务器整体的运维工作极端抽象。 越是抽象的东西,包含的信息量越大,所以很难定义。
但是,一般来说,Serverless的意思是以下两个。

狭义的Serverless  (最常见的)是指Serverless  computing架构=FaaS架构=Trigger  (事件驱动) FAS  (函数即服务) BAS  (BAS  )广义的Serverless是指服务器端的无运维,即具有Serverless特性的云服务。

文/上海蓝盟   IT外包专家

IT外包
>
400-635-8089
立即
咨询
电话咨询
服务热线
400-635-8089
微信咨询
微信咨询
微信咨询
公众号
公众号
公众号
返回顶部