<!DOCTYPE html>
<html lang="zh-Hans">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="renderer" content="webkit">
    <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=5">
    <title>史上最全|35个平台、框架、数据库细说什么是Serverless | 云图网</title>
    <meta name="keywords" content="apache,App,c,Cloud,DDoS,ddos攻击,Docker,functions,go,google,https,JavaScript,Kubernetes,microsoft,serverless,shell,Web,图像,图片,开源,微服务,微软,操作系统,服务器,游戏,漏洞,虚拟机">
<meta name="description" content="爷爷，啥是虚拟机？ 准备好如何回答这个问题吧，没准几十年后就得在饭桌上回答儿孙们，因为未来的开发人员可能永远都不需要启动实例，也不需要去碰大型服务器。 （回忆脸）虚拟机呀，就是一切开始的地方，一旦任何人在一台独特又普通的物理机上运行多个操作系统，就如同打开了一扇新世界的大门。 又过了一段时间，如同亚马逊这些老牌公司，开…">
<meta property="og:type" content="article">
<meta property="og:url" content="https://blog.ytso.com/tech/pnotes/256521.html">
<meta property="og:site_name" content="云图网">
<meta property="og:title" content="史上最全|35个平台、框架、数据库细说什么是Serverless">
<meta property="og:image" content="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070107313.png">
<meta property="og:description" content="爷爷，啥是虚拟机？ 准备好如何回答这个问题吧，没准几十年后就得在饭桌上回答儿孙们，因为未来的开发人员可能永远都不需要启动实例，也不需要去碰大型服务器。 （回忆脸）虚拟机呀，就是一切开始的地方，一旦任何人在一台独特又普通的物理机上运行多个操作系统，就如同打开了一扇新世界的大门。 又过了一段时间，如同亚马逊这些老牌公司，开…">
<link rel="canonical" href="https://blog.ytso.com/tech/pnotes/256521.html">
<meta name="applicable-device" content="pc,mobile">
<meta http-equiv="Cache-Control" content="no-transform">
<link rel="shortcut icon" href="https://imgcdn.ytso.com/wp-content/uploads/2024/10/20241015181503433.jpg">
<link rel='dns-prefetch' href='//cdnjs.cloudflare.com' />
<style id='wp-img-auto-sizes-contain-inline-css' type='text/css'>
img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}
/*# sourceURL=wp-img-auto-sizes-contain-inline-css */
</style>
<link rel='stylesheet' id='stylesheet-css' href='https://blog.ytso.com/wp-content/themes/justnews/css/style.css?ver=6.21.5' type='text/css' media='all' />
<link rel='stylesheet' id='material-icons-css' href='https://blog.ytso.com/wp-content/themes/justnews/themer/assets/css/material-icons.css?ver=6.21.5' type='text/css' media='all' />
<link rel='stylesheet' id='remixicon-css' href='https://cdnjs.cloudflare.com/ajax/libs/remixicon/4.2.0/remixicon.min.css?ver=6.9.4' type='text/css' media='all' />
<link rel='stylesheet' id='font-awesome-css' href='https://blog.ytso.com/wp-content/themes/justnews/themer/assets/css/font-awesome.css?ver=6.21.5' type='text/css' media='all' />
<style id='wp-block-library-inline-css' type='text/css'>
:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}.has-text-align-center{text-align:center}.has-text-align-left{text-align:left}.has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap!important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style*=border-top-color]){border-top-style:solid}html :where([style*=border-right-color]){border-right-style:solid}html :where([style*=border-bottom-color]){border-bottom-style:solid}html :where([style*=border-left-color]){border-left-style:solid}html :where([style*=border-width]){border-style:solid}html :where([style*=border-top-width]){border-top-style:solid}html :where([style*=border-right-width]){border-right-style:solid}html :where([style*=border-bottom-width]){border-bottom-style:solid}html :where([style*=border-left-width]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}}
/*wp_block_styles_on_demand_placeholder:69c82550b04bd*/
/*# sourceURL=wp-block-library-inline-css */
</style>
<style id='classic-theme-styles-inline-css' type='text/css'>
/*! This file is auto-generated */
.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}
/*# sourceURL=/wp-includes/css/classic-themes.min.css */
</style>
<link rel='stylesheet' id='wpcom-member-css' href='https://blog.ytso.com/wp-content/plugins/wpcom-member/css/style.css?ver=1.7.19' type='text/css' media='all' />
<script type="text/javascript" src="https://blog.ytso.com/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js"></script>
<script type="text/javascript" src="https://blog.ytso.com/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1" id="jquery-migrate-js"></script>
<link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://blog.ytso.com/xmlrpc.php?rsd" />
<meta name='description' content='爷爷，啥是虚拟机？ 准备好如何回答这个问题吧，没准几十年后就得在饭桌上回答儿孙们，因为未来的开发人员可能永远都不需要启动实例，也不需要去碰大型服务器。 （回忆脸）虚拟机呀，就是一切开始的地方，一旦任何…' />
<meta name='keywords' content='apache,App,c,Cloud,DDoS,ddos攻击,Docker,functions,go,google,https,JavaScript,Kubernetes,microsoft,serverless,shell,Web,图像,图片,开源,微服务,微软,操作系统,服务器,游戏,漏洞,虚拟机' />
<style>:root{--theme-color: #08c; --theme-hover: #07c; --logo-height: 32px; --logo-height-mobile: 26px; --menu-item-gap: 28px; --member-login-bg: url('https://blog.ytso.com/loginwall.jpg'); --header-bg-color: #fff; --header-bg-image: none; --theme-border-radius-s: 3px; --theme-border-radius-m: 5px; --theme-border-radius-l: 8px; --theme-border-radius-xl: 12px; --thumb-ratio-default: 480 / 300; --thumb-ratio-post: 480 / 300; --post-video-ratio: 860 / 482;}</style>
<link rel="icon" href="https://imgcdn.ytso.com/wp-content/uploads/2024/10/20241015181503433.jpg" sizes="32x32" />
<link rel="icon" href="https://imgcdn.ytso.com/wp-content/uploads/2024/10/20241015181503433.jpg" sizes="192x192" />
<link rel="apple-touch-icon" href="https://imgcdn.ytso.com/wp-content/uploads/2024/10/20241015181503433.jpg" />
<meta name="msapplication-TileImage" content="https://imgcdn.ytso.com/wp-content/uploads/2024/10/20241015181503433.jpg" />
    <!--[if lte IE 11]><script src="https://blog.ytso.com/wp-content/themes/justnews/js/update.js"></script><![endif]-->
</head>
<body class="wp-singular post-template-default single single-post postid-256521 single-format-standard wp-theme-justnews lang-cn el-boxed header-fixed">
<header class="header header-fluid">
    <div class="container">
        <div class="navbar-header">
            <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target=".navbar-collapse" aria-label="menu">
                <span class="icon-bar icon-bar-1"></span>
                <span class="icon-bar icon-bar-2"></span>
                <span class="icon-bar icon-bar-3"></span>
            </button>
                        <div class="logo">
                <a href="https://blog.ytso.com/" rel="home">
                    <img src="https://imgcdn.ytso.com/wp-content/uploads/2021/12/20211207181156143.png" alt="云图网">
                </a>
            </div>
        </div>
        <div class="collapse navbar-collapse mobile-style-0">
            <nav class="primary-menu"><ul id="menu-justnews-footer-menu" class="nav navbar-nav wpcom-adv-menu"><li class="menu-item current-post-ancestor current-post-parent active"><a href="https://blog.ytso.com/category/industrynews">业界资讯</a></li>
<li class="menu-item current-post-ancestor active menu-item-style menu-item-style-1 dropdown"><a target="_blank" href="https://blog.ytso.com/category/tech" class="dropdown-toggle">技术专区</a>
<ul class="dropdown-menu menu-item-wrap menu-item-col-5">
	<li class="menu-item"><a href="https://blog.ytso.com/category/tech/cloud">云计算</a></li>
	<li class="menu-item"><a href="https://blog.ytso.com/category/tech/ai">人工智能</a></li>
	<li class="menu-item"><a href="https://blog.ytso.com/category/tech/safety">信息安全</a></li>
	<li class="menu-item"><a href="https://blog.ytso.com/category/tech/bigdata">大数据</a></li>
	<li class="menu-item"><a href="https://blog.ytso.com/category/tech/dev">研发管理</a></li>
	<li class="menu-item"><a href="https://blog.ytso.com/category/tech/webdev">大前端</a></li>
	<li class="menu-item"><a href="https://blog.ytso.com/category/tech/opensource">开源</a></li>
	<li class="menu-item"><a href="https://blog.ytso.com/category/tech/aiops">智能运维</a></li>
	<li class="menu-item current-post-ancestor current-post-parent active"><a href="https://blog.ytso.com/category/tech/pnotes">编程笔记</a></li>
	<li class="menu-item"><a href="https://blog.ytso.com/category/tech/wp">WordPress</a></li>
</ul>
</li>
<li class="menu-item"><a href="https://blog.ytso.com/category/enterprise-strategic-planning">企业战略规划</a></li>
<li class="menu-item"><a href="https://blog.ytso.com/category/download">下载专区</a></li>
<li class="menu-item"><a href="https://blog.ytso.com/category/it%e6%b1%9f%e6%b9%96%e5%8f%b2">江湖史</a></li>
<li class="menu-item"><a href="https://blog.ytso.com/category/notes">随笔记录</a></li>
</ul></nav>            <div class="navbar-action">
                <div class="navbar-search-icon j-navbar-search"><i class="wpcom-icon wi"><svg aria-hidden="true"><use xlink:href="#wi-search"></use></svg></i></div><form class="navbar-search" action="https://blog.ytso.com/" method="get" role="search"><div class="navbar-search-inner"><i class="wpcom-icon wi navbar-search-close"><svg aria-hidden="true"><use xlink:href="#wi-close"></use></svg></i><input type="text" name="s" class="navbar-search-input" autocomplete="off" maxlength="100" placeholder="输入关键词搜索..." value=""><button class="navbar-search-btn" type="submit" aria-label="搜索"><i class="wpcom-icon wi"><svg aria-hidden="true"><use xlink:href="#wi-search"></use></svg></i></button></div></form>                    <div id="j-user-wrap">
                        <a class="login" href="https://blog.ytso.com/login">登录</a>
                        <a class="login register" href="https://blog.ytso.com/register">注册</a>
                    </div>
                                            <a class="wpcom-btn btn-primary btn-xs publish" href="https://blog.ytso.com/contribute">
                            <i class="fa fa-edit"></i> 投稿                        </a>
                                </div>
        </div>
    </div><!-- /.container -->
</header>

<div id="wrap">    <div class="wrap container">
        <ol class="breadcrumb" vocab="https://schema.org/" typeof="BreadcrumbList"><li class="home" property="itemListElement" typeof="ListItem"><a href="https://blog.ytso.com" property="item" typeof="WebPage"><span property="name" class="hide">云图网</span>首页</a><meta property="position" content="1"></li><li property="itemListElement" typeof="ListItem"><i class="wpcom-icon wi"><svg aria-hidden="true"><use xlink:href="#wi-arrow-right-3"></use></svg></i><a href="https://blog.ytso.com/category/industrynews" property="item" typeof="WebPage"><span property="name">业界资讯</span></a><meta property="position" content="2"></li></ol>        <main class="main">
                            <article id="post-256521" class="post-256521 post type-post status-publish format-standard hentry category-industrynews category-pnotes tag-apache tag-app tag-c tag-cloud tag-ddos tag-docker tag-functions tag-go tag-google tag-https tag-javascript tag-kubernetes tag-microsoft tag-serverless tag-shell tag-web tag-960 tag-1066 tag-199 tag-326 tag-178 tag-140 tag-13058 tag-222 tag-12788 tag-307 entry">
                    <div class="entry-main">
                                                                        <div class="entry-head">
                            <h1 class="entry-title">史上最全|35个平台、框架、数据库细说什么是Serverless</h1>
                            <div class="entry-info">
                                                                <time class="entry-date published" datetime="2022-05-18T20:53:28+08:00" pubdate>
                                    2022年5月18日 20:53                                </time>
                                <span class="dot">•</span>
                                <a href="https://blog.ytso.com/category/industrynews" rel="category tag">业界资讯</a>, <a href="https://blog.ytso.com/category/tech/pnotes" rel="category tag">编程笔记</a>                                                            </div>
                        </div>
                        
                                                <div class="entry-content text-indent text-justify">
                            <div class="aw-upload-img-list active">
	<a href="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070107313.png" target="_blank" data-fancybox-group="thumb" rel="lightbox noopener"><noscript><img decoding="async" src="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070107313.png" class="img-polaroid" title="91CRieYWKmP_BqDmb9hi.png" alt="91CRieYWKmP_BqDmb9hi.png" /></noscript><img decoding="async" src="https://blog.ytso.com/wp-content/themes/justnews/themer/assets/images/lazy.png" data-original="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070107313.png" class="img-polaroid j-lazy" title="91CRieYWKmP_BqDmb9hi.png" alt="91CRieYWKmP_BqDmb9hi.png" /></a>
</div>
<p><strong>爷爷，啥是虚拟机？</strong></p>
<p>准备好如何回答这个问题吧，没准几十年后就得在饭桌上回答儿孙们，因为未来的开发人员可能永远都不需要启动实例，也不需要去碰大型服务器。</p>
<p>（回忆脸）虚拟机呀，就是一切开始的地方，一旦任何人在一台独特又普通的物理机上运行多个操作系统，就如同打开了一扇新世界的大门。</p>
<p>又过了一段时间，如同亚马逊这些老牌公司，开启了云计算的革命，在任何地方用一张信用卡即可用它们提供的几近无限的虚拟机，啥？你娃说还不够？后来又出现一头鲸鱼，那是容器的黄金时代，最开始的几年是挺难的，因为人们得花一些时间才能真正理解这个概念，然后，然后就是Serverless了……</p>
<p>那些孩子们可不会听这些老掉牙的唠叨，他们都去玩虚拟现实游戏去了，独留你在那里长吁短叹不断追忆。</p>
<p><strong>功能即服务</strong></p>
<p>FaaS是理解Serverless的基础概念，其定义为——<br />代码是在事件驱动的、短暂的和无状态的环境中运行，完全由第三方托管，本文会介绍一些AWS jargons及服务以方便阅读和理解。</p>
<p>代码：虽然它还是那个代码，但仍有细微的差别，必须将所有需要的东西打包，如：External Libraries、ZIP文件，另外功能应该有一个被称之为处理程序的执行入口点。</p>
<p>事件驱动：在FaaS中，每件事都会触发某种行为，举例说明，调整上传图片的大小，不需要写代码对它进行接收、存储、重新调整大小再次存储，可以触发一些代码，每次将新文件发到S3存储库时，都会对图像进行调整。还有各种事件：数据库中插入行，观察日志流、在队列中获取新消息、甚至HTTP请求等。</p>
<p>短暂的环境：FaaS在每次调用功能时，就会构建一个全新的环境，调用处理完成后即销毁，虽然有点悲剧，但并非没有道理：第一次运行非活跃的功能是有延迟的被称之为冷启动，若过多调用功能，环境可能会进行多个执行，消除冷启动后，不会产生这个问题，另外还有成本：只按执行时间付费。</p>
<p>无状态：在功能调用之间没有任何状态，不能在本地或内存中保存信息，处理请求的所有上下关系必须保证每次执行时可用。</p>
<p>完全由第三方托管：无需管理服务器，截止目前，大多数Serverless厂商都提供了完整的维护服务，虽然无需搭建基础设施，但弊端是被厂商控制和锁定。</p>
<p>Serverless只需集成外部服务以及开发它们之间的接口，无需担忧服务器方面的管理，这也正是用事件驱动架构的关键，这段代码应该自己写还是交给第三方？某个部分能否被一个事件触发？功能是否具有正确执行所需的上下关系等等，这些问题必须要经过大量的思考和迭代实践。</p>
<p><strong>Serverless平台</strong></p>
<p>本文中，收集了一些公司、产品、工具以及Serverless典型的框架。可以看到这个行业随着时间的推移呈指数增长。所以从下图开始，将公司分为几个类别：<br /><a href="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070107887.jpg" target="_blank" data-fancybox-group="thumb" rel="lightbox noopener"><noscript><img decoding="async" src="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070107887.jpg" class="img-polaroid" title="/uploads/fox/24121955_0.jpg" alt="/uploads/fox/24121955_0.jpg" /></noscript><img decoding="async" src="https://blog.ytso.com/wp-content/themes/justnews/themer/assets/images/lazy.png" data-original="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070107887.jpg" class="img-polaroid j-lazy" title="/uploads/fox/24121955_0.jpg" alt="/uploads/fox/24121955_0.jpg" /></a><br />AWS Lambda<br /><a href="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070107462.jpg" target="_blank" data-fancybox-group="thumb" rel="lightbox noopener"><noscript><img decoding="async" src="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070107462.jpg" class="img-polaroid" title="/uploads/fox/24121955_1.jpg" alt="/uploads/fox/24121955_1.jpg" /></noscript><img decoding="async" src="https://blog.ytso.com/wp-content/themes/justnews/themer/assets/images/lazy.png" data-original="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070107462.jpg" class="img-polaroid j-lazy" title="/uploads/fox/24121955_1.jpg" alt="/uploads/fox/24121955_1.jpg" /></a><br />Lambda是AWS Serverless 推出的一个事件驱动平台，运行代码以响应事件和自动管理代码所需的计算资源。IBM Bluemix OpenWhisk<br /><a href="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070108436.png" target="_blank" data-fancybox-group="thumb" rel="lightbox noopener"><noscript><img decoding="async" src="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070108436.png" class="img-polaroid" title="/uploads/fox/24121955_2.png" alt="/uploads/fox/24121955_2.png" /></noscript><img decoding="async" src="https://blog.ytso.com/wp-content/themes/justnews/themer/assets/images/lazy.png" data-original="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070108436.png" class="img-polaroid j-lazy" title="/uploads/fox/24121955_2.png" alt="/uploads/fox/24121955_2.png" /></a><br />IBM OpenWhisk是一个分布式的、事件驱动的计算服务。OpenWhisk运行应用程序逻辑，以应对事件或直接通过HTTP调用网络或移动应用。<br />Google Cloud Functions<br /><a href="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070108706.jpg" target="_blank" data-fancybox-group="thumb" rel="lightbox noopener"><noscript><img decoding="async" src="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070108706.jpg" class="img-polaroid" title="/uploads/fox/24121955_3.jpg" alt="/uploads/fox/24121955_3.jpg" /></noscript><img decoding="async" src="https://blog.ytso.com/wp-content/themes/justnews/themer/assets/images/lazy.png" data-original="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070108706.jpg" class="img-polaroid j-lazy" title="/uploads/fox/24121955_3.jpg" alt="/uploads/fox/24121955_3.jpg" /></a><br />Google Cloud Functions是一个轻量级的、基于事件的异步计算解决方案，允许开发人员构建小型专用功能响应云事件，不需要管理服务器或运行时的环境。<br />Azure Functions<br /><a href="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070108159.png" target="_blank" data-fancybox-group="thumb" rel="lightbox noopener"><noscript><img decoding="async" src="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070108159.png" class="img-polaroid" title="/uploads/fox/24121955_4.png" alt="/uploads/fox/24121955_4.png" /></noscript><img decoding="async" src="https://blog.ytso.com/wp-content/themes/justnews/themer/assets/images/lazy.png" data-original="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070108159.png" class="img-polaroid j-lazy" title="/uploads/fox/24121955_4.png" alt="/uploads/fox/24121955_4.png" /></a><br />Azure Functions是一项PaaS服务，用户无需为峰值用量做准备或者为传统的维护操作担忧。通过多种语言（例如 JavaScript、C# 和 F#）以及脚本选项（例如 Python、PHP、Bash、Batch 和 PowerShell）创建功能；一切都在基于 Web 的易用界面中实现。<br />Webtask<br /><a href="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070108369.png" target="_blank" data-fancybox-group="thumb" rel="lightbox noopener"><noscript><img decoding="async" src="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070108369.png" class="img-polaroid" title="/uploads/fox/24121955_5.png" alt="/uploads/fox/24121955_5.png" /></noscript><img decoding="async" src="https://blog.ytso.com/wp-content/themes/justnews/themer/assets/images/lazy.png" data-original="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070108369.png" class="img-polaroid j-lazy" title="/uploads/fox/24121955_5.png" alt="/uploads/fox/24121955_5.png" /></a><br />Webtask是简单、轻量级、安全的方式独立运行的后端代码，可有效减少后端需求。支持可扩展性，通过多租户系统的自定义代码，是安全可靠的解决方案。</p>
<p><strong>Serverless开源框架</strong></p>
<p>LeverOS<br />一个开源云平台，简化了复杂的基础设施和微服务框架，功能强大，便于开发人员后期开发。<br />Funktion(Fabric8 / RedHat)<br />为Kubernetes实现了基于事件的Lambda样式编程模型。Funktion的一个子集被称为RedHat“fabric8.io”。<br />Fission.io<br />Kubernetes Serverless框架，专注于开发者的生产力的提高。<br />OpenLambda<br />OpenLambda是Apache Serverless项目,基于Linux容器。OpenLambda的目标之一是探索Serverless计算的新方法。经过尝试发现OpenLambda还为时过早，不得不做一些修改和调整工作。<br />Iron.io<br />Iron.io开发了一个框架，用于事件驱动的计算和运行Serverless应用，近期已经开源。专注于交付调用API实现负载均衡和消息队列的灵活性，确定在何处部署现有的内部安全流程作业处理。<br />Kubeless (By Bitnami)<br />Kubernetes原生的Serverless Framework。<br />Openwhisk (By IBM)<br />IBM OpenWhisk运行应用程序逻辑，以应对事件或直接通过HTTP调用网络或移动应用。OpenWhisk是开源项目，管理(服务)版本称为IBM Bluemix。<br />Serverless框架/库<br />Serverless Inc<br />Serverless框架，允许部署自动伸缩，pay-per-execution、事件驱动的功能，不受限于公有云、私有云、混合云。Serverless Inc目前支持AWS Lambda，Apache OpenWhisk，微软Azure，扩展以支持其他云提供商。<br />Stdlib<br />作为FaaS库StdLib提供了一种简单的方法来创建、分发和发现Web服务。<br />SPARTA<br />SPARTA转换一个二进制文件注册lambda函数进入一组独立可寻的AWS Lambda功能。此外,SPARTA微服务作者提供一个机会来满足其他要求,比如在AWS执行自定义,额外的基础设施需求,监控和报警信息。<br />Stackhut (nstack)<br />StackHut将代码转变成云API。编写业务逻辑，而不管理服务器逻辑，Python和JavaScript在云中转化为可伸缩的API，方便任意集成。<br />Gestalt (Galactic Fog)<br />Gestalt是一组微服务框架，可以帮助公司构建面向未来的云原生应用。框架由三个主要的元数据层组成，负责跟踪和管理所有IT资源，基础架构层是一个可插入的容器和Lambda管理引擎，集成层是一套现成的微服务，旨在解决最常见的企业集成问题。<br />Effe<br />用来构建Serverless的开源架构，可运行在单个Lambda的功能上。<br />APEX<br />Apex可以轻松地构建、部署和管理AWS Lambda功能。通过节点可使用由AWS Lambda(如Golang)所不支持的语言，js shim注入到构建中，为测试功能、回滚部署、查看度量、跟踪日志、连接到构建系统以及更多的功能提供了各种工作流相关工具。<br />Distribyte<br />Distribyte的目标是引入Serverless的优势，允许应用程序在计算调用之间无缝地存储数据，并将数据添加到Mix Unlocks中，也可以在现有的Serverless的范围之外使用。<br />Serverless API 框架<br />Multicolour<br />REST API生成器，目标是为公司节省90%的成本和开发API的时间，连接功能非常强大，即使是Node.JS生态系统中最成熟的框架也无法匹敌。<br />Deployd<br />通过提供满足复杂应用程序需求的重要功能，使构建API变得简单。<br />Kong<br />可扩展的开源API层(API网关，或API中间件)。可以在任何RESTful API上运行，通过插件扩展，这些插件提供了核心平台之外的额外功能和服务。<br />TYK<br />一个快速、可扩展和开源API网关，提供了一个API管理平台，有API网关、API分析和API管理仪表板。<br />API Umbrella<br />位于API之前的代理，可以无缝地添加诸如API Key、速率限制和对任何API的分析等功能。<br />Fusio<br />开放源码的API管理平台，可以帮助构建和管理REST API。提供了所有工具快速构建不同数据源的API，同时可以自定义创建响应。<br />Kappa<br />命令行工具，可以让AWS Lambda更容易部署、更新和测试功能。开发Lambda功能有很多步骤，Kappa在试图解决这个问题。<br />Zappa<br />可以轻松地让所有的Python WSGI应用在AWS Lambda + API网关上构建和部署，将其看作Python应用的“Serverless”Web托管。这意味着无限扩展、零宕机、零维护、以及当前部署成本的一小部分。<br />Zapier<br />Zapier的自定义代码操作允许扩展Zapier的平台，使用Web上最常用的普遍的编程语言：Javascript做任何事情，运行代码响应Zapier支持的任何触发。<br />Stamplay<br />一个基于API的开发平台，授权Web开发人员在记录的时间内构建和发布全功能且基于云的Web应用。<br />Serverless 数据库<br />FireBase<br />Firebase是一个移动平台，可以帮助快速开发高质量的应用，扩大用户群，提高收益，它由互补的功能组成，方便根据需要进行混合匹配。<br />FaunaDB<br />一个分布式、多租户、多模型的数据库系统，具有强大的查询语言。<br />当然，还有 Amazon DynamoDB，Google Cloud Spanner，Microsoft Azure’s CosmosDB 和其它Serverless数据库。<br />Serverless 监控工具<br />IOpipe<br />高保真的度量和监控服务，允许在Amazon Lambda功能中，更好的查看的日常维护和开发Serverless应用程序。<br />Dashbird<br />Dashbird用来查看AWS Lambda的功能。可以清楚地看到服务器栈上发生的事件。该平台提供自动化的监控、日志和调用数据等服务。<br />Serverless 安全工具<br />Snyk<br />在Serverless环境中，Snyk可以帮助理解和保护依赖项，从查询、修复和监控节点中已知漏洞的工具开始。<br />Serverless 的优点<br />成本：目前Serverless最大的优势是可以降低成本，例如，在功能运行时，只需要支付从AWS中传输的数据，每100万次请求大约需要0.20美元，因为它是按需付费的，此外，服务器维护管理的费用也被降低到接近0的水平。<br />交付时间：在集成和低成本的支撑下，交付到市场的速度快了许多倍。<br />无限的规模：Serverless在任何时间都可以处理任何数量的请求，自动伸缩内置到架构中，无需计划和设置，不过一定要注意的是DDOS攻击。<br />打包和部署：不再有分层的Dockerfile和入口，Lambda只需要一个包含代码以及库的ZIP文件即可，部署也是如此。</p>
<p><strong>总结</strong></p>
<p>在将Serverless应用到生产环境之前，不能照搬方法，还需根据自身的实际情况做一些改变，同时还需要一个团队，愿意去面对快速发展的事物，用一些时间去学习钻研和实践测试。不管怎样，已知的一些大公司如：Netflix、Localytics、VidRoll和Square Enix等公司都已应用了Serverless，这是未来的发展趋势，正逐步进入到各个行业领域当中。<br /><a href="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070110702.gif" target="_blank" data-fancybox-group="thumb" rel="lightbox noopener"><noscript><img decoding="async" src="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070110702.gif" class="img-polaroid" title="/uploads/fox/24121955_6.gif" alt="/uploads/fox/24121955_6.gif" /></noscript><img decoding="async" src="https://blog.ytso.com/wp-content/themes/justnews/themer/assets/images/lazy.png" data-original="http://ytso-blog-oss-img.oss-accelerate.aliyuncs.com/wp-content/uploads/2022/05/17/20220518070110702.gif" class="img-polaroid j-lazy" title="/uploads/fox/24121955_6.gif" alt="/uploads/fox/24121955_6.gif" /></a><br /> <br /> <br /> </p>
<blockquote>
<p>原    文：<a href="https://cheesecakelabs.com/blog/what-is-serverless-all-about" rel="nofollow noopener" target="_blank">What is Serverless all about?</a><br />译    文：<a href="https://mp.weixin.qq.com/s?__biz=MzA3MDg4Nzc2NQ==&mid=2652135881&idx=1&sn=5c98f9a1dc1d9fa9f039717629c871b9&chksm=84d531f3b3a2b8e5e5a2cecb331a9c18765f39e26f345364f650b453aa7d7903dd08c0f02ac2&scene=0#rd" rel="nofollow noopener" target="_blank"> 数人云</a><br />作    者：Jonatas Baldin、Tal Kimhi</p>
</blockquote>
<p></p>
<div class="entry-readmore"><div class="entry-readmore-btn"></div></div>                                                        <div class="entry-copyright"><p>原创文章，作者：ItWorker，如若转载，请注明出处：https://blog.ytso.com/tech/pnotes/256521.html</p></div>                        </div>

                        <div class="entry-tag"><a href="https://blog.ytso.com/tag/apache" rel="tag">apache</a><a href="https://blog.ytso.com/tag/app" rel="tag">App</a><a href="https://blog.ytso.com/tag/c" rel="tag">c</a><a href="https://blog.ytso.com/tag/cloud" rel="tag">Cloud</a><a href="https://blog.ytso.com/tag/ddos" rel="tag">DDoS</a><a href="https://blog.ytso.com/tag/ddos%e6%94%bb%e5%87%bb" rel="tag">ddos攻击</a><a href="https://blog.ytso.com/tag/docker" rel="tag">Docker</a><a href="https://blog.ytso.com/tag/functions" rel="tag">functions</a><a href="https://blog.ytso.com/tag/go" rel="tag">go</a><a href="https://blog.ytso.com/tag/google" rel="tag">google</a><a href="https://blog.ytso.com/tag/https" rel="tag">https</a><a href="https://blog.ytso.com/tag/javascript" rel="tag">JavaScript</a><a href="https://blog.ytso.com/tag/kubernetes" rel="tag">Kubernetes</a><a href="https://blog.ytso.com/tag/microsoft" rel="tag">microsoft</a><a href="https://blog.ytso.com/tag/serverless" rel="tag">serverless</a><a href="https://blog.ytso.com/tag/shell" rel="tag">shell</a><a href="https://blog.ytso.com/tag/web" rel="tag">Web</a><a href="https://blog.ytso.com/tag/%e5%9b%be%e5%83%8f" rel="tag">图像</a><a href="https://blog.ytso.com/tag/%e5%9b%be%e7%89%87" rel="tag">图片</a><a href="https://blog.ytso.com/tag/%e5%bc%80%e6%ba%90" rel="tag">开源</a><a href="https://blog.ytso.com/tag/%e5%be%ae%e6%9c%8d%e5%8a%a1" rel="tag">微服务</a><a href="https://blog.ytso.com/tag/%e5%be%ae%e8%bd%af" rel="tag">微软</a><a href="https://blog.ytso.com/tag/%e6%93%8d%e4%bd%9c%e7%b3%bb%e7%bb%9f" rel="tag">操作系统</a><a href="https://blog.ytso.com/tag/%e6%9c%8d%e5%8a%a1%e5%99%a8" rel="tag">服务器</a><a href="https://blog.ytso.com/tag/%e6%b8%b8%e6%88%8f" rel="tag">游戏</a><a href="https://blog.ytso.com/tag/%e6%bc%8f%e6%b4%9e" rel="tag">漏洞</a><a href="https://blog.ytso.com/tag/%e8%99%9a%e6%8b%9f%e6%9c%ba" rel="tag">虚拟机</a></div>
                        <div class="entry-action">
                            <div class="btn-zan" data-id="256521"><i class="wpcom-icon wi"><svg aria-hidden="true"><use xlink:href="#wi-thumb-up-fill"></use></svg></i> 赞 <span class="entry-action-num">(0)</span></div>
                                                    </div>

                        <div class="entry-bar">
                            <div class="entry-bar-inner">
                                                                <div class="entry-bar-info entry-bar-info2">
                                    <div class="info-item meta">
                                                                                    <a class="meta-item j-heart" href="javascript:;" data-id="256521"><i class="wpcom-icon wi"><svg aria-hidden="true"><use xlink:href="#wi-star"></use></svg></i> <span class="data">0</span></a>                                        <a class="meta-item" href="#comments"><i class="wpcom-icon wi"><svg aria-hidden="true"><use xlink:href="#wi-comment"></use></svg></i> <span class="data">0</span></a>                                                                            </div>
                                    <div class="info-item share">
                                                                                    <a class="meta-item mobile j-mobile-share" href="javascript:;" data-id="256521" data-qrcode="https://blog.ytso.com/tech/pnotes/256521.html">
                                                <i class="wpcom-icon wi"><svg aria-hidden="true"><use xlink:href="#wi-share"></use></svg></i> 生成海报                                            </a>
                                                                                    <a class="meta-item wechat" data-share="wechat" target="_blank" rel="nofollow noopener noreferrer" href="#">
                                                <i class="wpcom-icon wi"><svg aria-hidden="true"><use xlink:href="#wi-wechat"></use></svg></i>                                            </a>
                                                                                    <a class="meta-item weibo" data-share="weibo" target="_blank" rel="nofollow noopener noreferrer" href="#">
                                                <i class="wpcom-icon wi"><svg aria-hidden="true"><use xlink:href="#wi-weibo"></use></svg></i>                                            </a>
                                                                                    <a class="meta-item qq" data-share="qq" target="_blank" rel="nofollow noopener noreferrer" href="#">
                                                <i class="wpcom-icon wi"><svg aria-hidden="true"><use xlink:href="#wi-qq"></use></svg></i>                                            </a>
                                                                                    <a class="meta-item qzone" data-share="qzone" target="_blank" rel="nofollow noopener noreferrer" href="#">
                                                <i class="wpcom-icon wi"><svg aria-hidden="true"><use xlink:href="#wi-qzone"></use></svg></i>                                            </a>
                                                                                    <a class="meta-item douban" data-share="douban" target="_blank" rel="nofollow noopener noreferrer" href="#">
                                                <i class="wpcom-icon wi"><svg aria-hidden="true"><use xlink:href="#wi-douban"></use></svg></i>                                            </a>
                                                                                    <a class="meta-item linkedin" data-share="linkedin" target="_blank" rel="nofollow noopener noreferrer" href="#">
                                                <i class="wpcom-icon wi"><svg aria-hidden="true"><use xlink:href="#wi-linkedin"></use></svg></i>                                            </a>
                                                                                    <a class="meta-item facebook" data-share="facebook" target="_blank" rel="nofollow noopener noreferrer" href="#">
                                                <i class="wpcom-icon wi"><svg aria-hidden="true"><use xlink:href="#wi-facebook"></use></svg></i>                                            </a>
                                                                                    <a class="meta-item twitter" data-share="twitter" target="_blank" rel="nofollow noopener noreferrer" href="#">
                                                <i class="wpcom-icon wi"><svg aria-hidden="true"><use xlink:href="#wi-twitter"></use></svg></i>                                            </a>
                                                                            </div>
                                    <div class="info-item act">
                                        <a href="javascript:;" id="j-reading"><i class="wpcom-icon wi"><svg aria-hidden="true"><use xlink:href="#wi-article"></use></svg></i></a>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                                            <div class="entry-page">
        <error>
    <code>wp_die</code>
    <title><![CDATA[WordPress &amp;rsaquo; Error]]></title>
    <message><![CDATA[&lt;h1&gt;Error establishing a Redis connection&lt;/h1&gt;
&lt;p&gt;To disable Redis, delete the &lt;code&gt;object-cache.php&lt;/code&gt; file in the &lt;code&gt;/wp-content/&lt;/code&gt; directory.&lt;/p&gt;
]]></message>
    <data>
        <status>500</status>
    </data>
</error>
<!--
Performance optimized by Redis Object Cache. Learn more: https://wprediscache.com

Retrieved 1953 objects (283 KB) from Redis using Predis (v2.4.0).
-->
