无服务器计算:哪种服务适合您?源代码

2022-12-21 0 717

无服务器计算:哪种服务适合您?源代码

无服务器计算是软件架构的新兴趋势。 2017 年是无服务器计算非常激动人心的一年,采用率将在 2018 年继续呈爆炸式增长。在这里,我们来看看无服务器计算的好处,并比较无服务器提供商。

“无服务器”的流行解释是功能即服务 (FaaS),开发人员可以上传在无状态计算容器内运行的代码,这些容器由各种事件触发,是短暂的,由云平台完全管理。 FaaS 消除了管理、配置、扩展或管理您自己的服务器的可用性的需要。 最受欢迎的 FaaS 产品是 AWS Lambda、Microsoft Azure Functions 和 Google Cloud Functions。 (在无服务器计算 101 中了解有关无服务器计算基础知识的更多信息。)

无服务器有什么用?
无服务器计算最常用于以下应用程序:
微服务
移动后端
机器人
机器学习 (ML) 接口
物联网 (IoT)
现代流处理
服务整合
无服务器架构的好处
Serverless 是解决时间消耗、成本、编码不集中以及伸缩困难等问题的一个很好的解决方案。 无需更新最新的软件包版本或处理服务器停止工作而必须更换时出现的问题。 Serverless 简化了部署和打包,并消除了系统管理的需要。

节省成本是无服务器计算的主要好处之一。 如果您购买的是真实或虚拟服务器,即使它处于闲置状态,您也需要付费。 使用无服务器,提供商的服务器资产可以在您的服务器不工作时为其他客户的请求提供服务。 如果您的提供商是合理的,这意味着您只需为实际使用的内容付费。 如果任何进程遇到错误,您不必担心,因为只有相关容器会关闭,其余的 Web 请求将继续不间断地处理。

无服务器提供商的比较
在无服务器计算领域,目前有三个重量级选手:AWS Lambda、Azure Functions 和 Google Cloud Functions。 每个都有自己的一组特性和功能,所以让我们看一下它们各自提供的功能。

AWS 拉姆达
AWS Lambda 支持 Java(兼容 Java 8)、C#、JavaScript 和 Python。 开发人员可以创建一个可以添加到 PHP、Go 或 Ruby 项目的包装器,它允许在触发时执行代码。

AWS 将 Lambda 放置为充当其他云服务的网关。 日志分析、图像处理和备份可以通过与 S3 和 Kinesis 集成来执行,由这些 AWS 服务中的活动触发。 DynamoDB 集成为在实时生态系统之外执行的操作提供了另一层触发器。 Lambda 充当移动、网络或物联网应用程序的完整后端服务。 它通过 Amazon 网关接收来自客户端的请求,并将这些请求转换为 API 调用,这些 API 调用稍后将转换为运行特定功能的预定义触发器。

Lambda 允许开发 Lambda 框架。 开发人员可以使用由公司和个人创建的开源代码,帮助构建和部署事件驱动功能。 这些框架为开发人员提供了一个可以插入代码的模板,并带来了与其他亚马逊服务的内置集成。 (有关 AWS 的更多信息,请查看您是否错过了 Amazon Web Services?)

Azure 函数
Microsoft 允许使用本机语言(C# 和 F#)进行函数编码。 开发人员还可以使用 JavaScript 或 Python 编写函数。 Azure 在其门户中提供具有门户功能的 IDE,可帮助您制作原型和部署功能。 Azure 与 Bitbucket 和 GitHub 集成,允许简单配置持续集成过程和在云中部署代码。

Azure Functions 支持多种类型的事件触发器。 Cron 作业为计划任务启用基于计时器的事件,而 Microsoft 的 SaaS 服务(例如 OneDrive 或 SharePoint)上的事件可以配置为触发 Functions 中的操作。 用于实时处理数据或文件的常见触发器增加了运行使用 Cortana 作为信息提供者的无服务器机器人的能力。

谷歌云功能
谷歌是最后一个登场的无服务器提供商。 它目前的支持有些有限,只允许用 JavaScript 编写函数,并且只在谷歌的内部事件总线上触发事件:Cloud Pub/Sub。 还支持 HTTP 触发器,以及来自 Firebase 的移动事件。

谷歌仍然缺少与存储和其他云服务的一些重要集成,这些集成有助于触发与业务相关的问题,但这不是问题所在。 Google 将项目限制为少于 20 个触发器。

监控是通过 Stackdriver 日志记录工具启用的,该工具非常方便且易于使用,但不提供无服务器用户可能需要的所有信息和指标。

无服务器定价比较
在选择服务时,服务价格与功能一样重要。 这是他们目前的情况。

AWS Lambda 定价
每月 100 万次免费请求和每月 400,000 GB 秒的计算时间
每 100 万个请求 0.20 USD
每 GB 秒计算 0.00001667 美元,每次执行四舍五入到最接近的 100 毫秒
Azure 函数定价
每月 100 万次免费请求和每月 400,000 GB 秒的计算时间
每 100 万个请求 0.20 USD
每 GB 秒计算 0.00001667 美元,每次执行四舍五入到最接近的 100 毫秒
Google Cloud Functions 定价
每月 200 万次免费请求和每月 400,000 GB 秒的计算时间
每 100 万个请求 0.40 USD
每 GB 秒计算 0.0000025 美元,每次执行四舍五入到最接近的 100 毫秒
如您所见,AWS 和 Azure 的定价相同,而 Google Cloud Function 在免费套餐中每月提供双倍的请求。 确定哪个计划最适合您取决于您打算如何(以及多少)使用它。

结论
无服务器计算鼓励正确的编码,并由于其按使用付费模型而推动有效和快速的执行。 组织可以通过减少运行时间来降低无服务器服务的月度支付成本。 能够减少函数运行时间并编写最小的独立代码段的开发人员将能够更好地利用无服务器计算并显着降低其组织的成本。

Serverless Cost Calculator 允许根据预测的执行次数和平均执行时间来估算成本,并且可以通过清楚地显示潜在的节省来帮助希望在其组织中引入 Serverless 的开发人员。

申明:本文由第三方发布,内容仅代表作者观点,与本网站无关。对本文以及其中全部或者部分内容的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。本网发布或转载文章出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,也不代表本网对其真实性负责。

七爪网 行业资讯 无服务器计算:哪种服务适合您?源代码 https://www.7claw.com/50021.html

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务