关闭

Serverless架构的演进

标签: 架构Serverless微服务单片架构架构演进
3242人阅读 评论(0) 收藏 举报
分类:

Serverless架构的演进

作者:chszs,未经博主允许不得转载。经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs

Serverless架构风格挑战了软件设计和软件部署基础的现状,以实现最佳开发、最优运营和最优的管理开销。虽然它继承了微服务架构MSA的基本概念,但它已被赋予了新的架构模式,尽可能实现最高效的硬件利用。

尽管Serverless架构有显著的进步,但适应这种架构需要一个周全的过程,把企业解决方案精确映射到Serverless架构上。

这里写图片描述

部署在物理服务器上的软件系统,其初始实现不能最佳地利用底层硬件的计算能力,因为在给定时间内只能有一个操作系统实例运行。随后的改造中,在计算资源中识别时间共享能力之后,多个虚拟计算机能够通过在它们之间切换CPU和I/O操作从而实现在相同硬件上的同时运行。

这种技术演进导致了行业中的许多创新,最重要的是云的诞生。此时,虚拟机是用于部署软件的隔离计算环境中最易于管理的、可扩展的和可编程的单元。Linux容器技术出现在2006年左右,当时Google实现了符合Linux内核特性的控制组。

这里写图片描述

Linux容器自那时以来一直存在。然而,只有规模大、技术上超越的企业,比如谷歌,才能够规模化的使用它。到2012年,在欧洲,一个软件架构师讨论组引入了微服务架构的概念。在2013年晚些时候,Docker巧妙地填补了容器生态系统中的可访问性、可用性和支持服务的空白,因此,容器开始变得流行起来。

Linux容器打开了一个新的视野,将大型单片系统分解成独立的自包含服务,并以细粒度的资源利用来执行它们。为了加快这些进展,容器集群管理系统(如Kubernetes和Mesosphere)在同一时期开始提供端到端的容器即服务(CaaS)的能力。

到2015年晚些时候,AWS通过引入AWS Lambda实现了另一个飞跃,它可以通过按需运行微服务进一步节省软件部署成本,并在无负载时自动停止。这种概念类似于节能车辆中的停止-启动的特性,其自动关闭内燃机以降低燃料消耗。

它是如何工作的?

尽管术语“Serverless”乍一看是荒谬的,但其实际的意义在于,部署软件无需涉及基础设施的建设。Serverless平台可以根据需要自动构建、部署和启动服务的整个过程。用户只需注册所需的业务功能及其资源需求。

这里写图片描述

显然,这样的功能可以分为两种主要类型:由客户端请求触发的功能,和需要通过时间触发器或事件触发的后台执行的功能。

通常,这种Serverless系统可以使用具有动态路由器的容器集群管理器(CCM)来实现,该动态路由器可以按需调整容器。然而,还需要考虑路由器的延迟、容器的创建时间、语言支持、协议支持、功能接口、函数初始化时间、配置参数的传递、提供证书文件等。

尽管这种部署方式要求在没有负载时停止容器,但实际上在服务请求之后很快就停止容器,这种开销也将是昂贵的,因为在短时间间隔内可能有更多的请求进入。因此,更通常的做法是,在Serverless计算容器中将保留预先配置的时间段以便能重用于对服务的更多请求。这类似于PaaS平台中的自动缩放行为。一旦服务被扩展了,实例将被保留一段时间以便能及时处理更多的请求,而不会立即终止它们。

0
0
查看评论

亚马逊AWS的Serverless架构

亚马逊AWS的Serverless架构作者:chszs,未经博主允许不得转载。经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszsServerless平台允许运行应用程序,包括计算、存储和网络——无需启动和管理单个(虚拟)机器。本文主要介绍AWS上的Serverle...
  • chszs
  • chszs
  • 2017-03-03 15:56
  • 2373

Serverless架构

这是来自martinfowler.com的Serverless架构一文的大意翻译。 什么是Serverless? Serverless首先是用于描述我们的应用程序是明显或充分地依赖第三方应用或服务来管理服务器端逻辑和状态,这些应用是典型的富客户端应用,比如单页Web应用或移动应用,它们使用基...
  • libing13810124573
  • libing13810124573
  • 2016-06-21 11:48
  • 683

你需要了解的未来技术趋势——serverless怎样改变未来架构

什么是serverless?     serverless并不是不需要服务?而是你无需关注服务。举个例子,现在你开发一个应用,需要关心缓存、mq、web容器,serverless环境下,你只需要关注代码层面的东西。如果想用mq,只需调用函数解决,无需关注mq...
  • douliw
  • douliw
  • 2016-06-09 18:40
  • 9001

什么是Serverless无服务器架构?

Serverless不代表再也不需要服务器了,而是说:开发者再也不用过多考虑服务器的问题,计算资源作为服务而不是服务器的概念出现。Serverless是一种构建和管理基于微服务架构的完整流程,允许你在服务部署级别而不是服务器部署级别来管理你的应用部署,你甚至可以管理某个具体功能或端口的部署,这就能让...
  • libing13810124573
  • libing13810124573
  • 2016-06-21 11:50
  • 1546

Serverless架构的优缺点

Serverless架构或Serverless计算是软件架构风格向分布式系统发展结果,而当前建立一个系统的标准是面向服务架构(SOA)或者是SOA之微服务架构。 在微服务架构中,应用/服务被开发出来然后部署,每个服务组相关一些函数,在Serverless架构中,函数是被开发并部署到独立的平台,...
  • libing13810124573
  • libing13810124573
  • 2016-06-21 11:55
  • 2751

Serverless,后端小程序的未来

自从2014年AWS推出Lambda服务后,Serverless一词越来越热,已经成为一种新型的软件设计架构,即Serverless Architecture。作为一种原生于公共云的架构,Serverless有什么优缺点?是否能应用于传统企业程序?是否适合私有云场景?是否像很多文章宣称的一样,会成为...
  • chenhaifeng2016
  • chenhaifeng2016
  • 2017-05-08 17:04
  • 1405

与Serverless 的第一次亲密接触

Servrless概念Serverless 是一个架构上的概念,从字面上理解就是无服务器架构。Serverless最初是用于描述依赖第三方服务实现对逻辑和状态进行管理的应用,典型的例子是单页 Web 和移动 App 这种富客户端应用,他们一般都使用基于云端的数据库(例如Parse、Firebase)...
  • FL63Zv9Zou86950w
  • FL63Zv9Zou86950w
  • 2017-11-02 11:03
  • 1720

Serverless

Serverless        周末在家里闲着看一些新的东西Serverles。还是原来的套路,是什么?干什么用的?       Serverless,字面的意思是无服务。  ...
  • u013793732
  • u013793732
  • 2016-08-06 12:43
  • 462

Serverless架构的演进

Serverless架构的演进作者:chszs,未经博主允许不得转载。经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszsServerless架构风格挑战了软件设计和软件部署基础的现状,以实现最佳开发、最优运营和最优的管理开销。虽然它继承了微服务架构MSA的基本概念...
  • chszs
  • chszs
  • 2017-03-05 12:29
  • 3242

Serverless架构模式简介

Serverless架构模式简介 一.  简介       Serverless是一种无服务的架构,类似aws lambda。Serverless与跟传统架构不同,由开发者实现的服务端逻辑运行在无状态的计算容器中,它是由事件触发,短暂的(可能只存...
  • chenglinhust
  • chenglinhust
  • 2017-05-06 11:48
  • 2464
    个人资料
    • 访问:5957118次
    • 积分:52112
    • 等级:
    • 排名:第64名
    • 原创:795篇
    • 转载:23篇
    • 译文:24篇
    • 评论:1190条
    一名路过的黑客

    大家好,我是黑客,专门盗账号的。现在这个人的帐号被我盗了,但看这个人平时的博客空间,一直过着艰苦努力、持之以恒的技术研究生活,勤奋刻苦,积极分享,无私奉献,我被深深的感动了,这是一个纯粹的人,人品这样的高尚,希望大家看到我这条消息后,可以私聊他,多鼓励他,不缺钱的就多给他一些经济上的资助,让他再接再厉!就这样吧,我下线了,眼框湿湿的难受。

    文章存档