- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
功能即服务(FaaS)平台介绍..doc
..
功能即服务(FaaS)平台介绍
功能即服务是在容器之上构建无服务器功能的框架。在去年10月份开始这个项目,用来理念论证,理解是否可以在Docker Swarm上运行Alexa skills或者Lambda功能。在一开始的一些成功之后。
本文直接介绍无服务器计算,然后介绍在之前500次commit里FaaS的3大特性,最后展望未来。
从第一次commit开始,FaaS持续推进,在GitHub上获得了2500多个star,同时还出现了一个开发者和黑客的小型社区(/alexellis/faas/blob/master/community.md),我们会在聚会中发表演讲,编写自己的很cool的功能,并且贡献代码。我自己的一大收获是在4月份Austin举办的Dockercon上获得了Moby‘s Cool Hacks keynote分会场的一个席位。大家想要将Docker设计用来完成的事情的边界进一步扩展。
无服务器是什么?
架构还在演进
“无服务器”这个词并不是很恰当——我们实际讨论的是事件驱动系统的一种全新架构模式。基于此,无服务器功能常常被用来作为服务间的连接,或者用在事件驱动的架构里。在过去,我们称之为服务总线。
无服务器功能
无服务器是一段小型的,无关联的,并且可重用的代码:
它是短暂的
它不是daemon(长期运行的)
它不发布TCP服务
它没有状态
利用已有服务或者第三方资源
几秒内完成执行(基于AWS的Lambda)
我们还需要区分开无服务器产品和IaaS供应商以及开源软件项目。
一方面,IaaS供应商提供无服务器产品,比如Lambda,Google Cloud Functions以及Azure Functions。另一方面,有FaaS这样的框架,让编排平台,比如Docker Swarm或者Kubernetes做重量的事情。
IaaS供应商提供的无服务器产品是完全受控的,因此它提供了高度的便捷性和基于秒/分钟的计费方案。另一面是,用户需要跟踪供应商的发布和支持周期。开源的FaaS想要提供一些多样性以供大家选择。
FaaS的差异化在哪里?
FaaS基于业界标准的Cloud Native技术构建:
FaaS项目的差异化在于,任意流程都可以通过watchdog(/alexellis/faas/tree/master/watchdog)组件和Docker容器成为无服务器的功能。这意味着如下三点:
用户可以运行任意语言编写的代码
可以运行任意时间
可以在任何地方运行
转向无服务器化并不意味着用另一种编程语言重写代码。只需继续使用业务和团队需要的东西即可。
示例:比如,cat或者sha512sum可以作为一种不需要变更的功能,通过stdin/stdout通信。Windows功能也可以通过Docker CE支持。
这是FaaS和其他开源无服务器框架的主要区别,它们依赖于每种所支持的语言的特定运行时。
下面介绍DockerCon之后的三大主要特性,包括CLI
(/alexellis/faas-cli)和功能模板,Kubernetes支持以及异步处理。
1. 全新的CLI
易于部署
我给FaaS项目添加了CLI,让部署功能更为简易和脚本化。在这之前,用户可以使用API Gateway的UI或者curl。CLI让大家可以在YAML文件里定义功能,随后部署到API Gateway上。
Finnian Anderson在Practical Dev/dev.to上(/RNejhxu)写了一篇介绍FaaS CLI的很好的文章。
Utility脚本和Brew
有安装脚本可以用,John McCabe在brew上维护了项目的recipe。
$?brew?install?faas-cli
或者
$?curl?-sL?/?|?sudo?sh
模板
CLI的模板是你唯一需要用所选的编程语言编写handler的地方,CLI会使用模板将其打包成Docker容器——FaaS会处理所需的步骤。
提供了Python和Node.js的模板,但是你可以轻松创建自己的。
CLI支持三种操作:
-action build:从模板在本地创建Docker镜像
-action push:将模板推送到指定的registry或者Hub上
-action deploy:部署FaaS功能。
如果有一个单节点的集群,那么不需要推送镜像就可以部署。
YAML格式的CLI配置配置示例:
provider:??
name:?faas
gateway:?http://localhost:8080
functions:??
url_ping:
lang:?python
handler:?./sample/url_ping
image:?alexellis2/faas-urlping
Pyt
您可能关注的文档
- 全口径债务监测平台系统操作培训(填报用户)课件.ppt
- 全国2016年1、4、7、10月自学考试学前教育科学研究必考试题和答案..doc
- 全国2016年4月至2018年4月行政组织理论00319试卷..doc
- 全国2018年4月高等教育自考心理卫生与心理辅导答案与试..doc
- 全国学前教育管理信息系统,常见问题..doc
- 全国建筑市场监管与诚信信息平台课件.ppt
- 全国水利信息化规划(金水工程规划)..doc
- 全国自考2016年10月00018计算机应用基础历年试题(含答案)..doc
- 全国高等教育自学考试《幼儿园教育基础》复习备考资料(学前教育-专科-12339-郑三元-高等教育出版社)..doc
- 全新大学进阶英语Unit 1 The Pursuit of Dreams课件.ppt
- 2024-2025学年桑植一中高一入学分班考试语文作文押题及范文分析.docx
- 2024-2025学年上海市进才中学高一入学分班考试语文作文押题及范文分析.docx
- 中国滴水水表行业市场情况研究及竞争格局分析报告.pdf
- 2024-2025学年上海师大附中高一入学分班考试语文作文押题及范文分析.docx
- 2024-2025学年清华大学附属实验学校高一入学分班考试语文作文押题及范文分析.docx
- 2024-2025学年上海市控江中学高一入学分班考试语文作文押题及范文分析.docx
- 2024-2025学年上海静安外国语中学高一入学分班考试语文作文押题及范文分析.docx
- 2024-2025学年宁波外国语学校高一入学分班考试语文作文押题及范文分析.docx
- 2024-2025学年南通中学高一入学分班考试语文作文押题及范文分析.docx
- 2024-2025学年宁波市鄞州中学高一入学分班考试语文作文押题及范文分析.docx
文档评论(0)