手机网站在线生成,wordpress 如何评论,网站用的服务器,开网站建设公司怎么样微软公司于近期发布了Azure Functions以支持AWS Lambda。本文将介绍如何开始使用这个事件驱动服务#xff0c;以及这项服务是否适合您。
无论是超大规模云供应商、软件开放人员还是企业管理员#xff0c;目前最热门的技术之一就是无服务器计算。也就是所谓的功能即服务…微软公司于近期发布了Azure Functions以支持AWS Lambda。本文将介绍如何开始使用这个事件驱动服务以及这项服务是否适合您。
无论是超大规模云供应商、软件开放人员还是企业管理员目前最热门的技术之一就是无服务器计算。也就是所谓的功能即服务这些由事件驱动的服务可允许企业用户在不需要提供虚拟机或容器集群的情况下完成应用程序代码的部署并可以由部署在另一个云服务上的应用通过一个触发事件来触发执行。
云功能是平台即服务PaaS的一个自然延伸。这些云端功能不仅能够让云管理人员和开发人员免于受到服务器与存储设备等细节问题的影响而且完全可以从底层运行时基础设施和操作系统中抽取代码执行。相关功能响应外部触发事件而运行所以它们最适合用于使用微服务和事件驱动组件的部署而不是那些持久性的长期运行应用程序。
从2014年开始亚马逊网络服务就开始通过Lambda来推广无服务器模式但是包括谷歌、IBM和微软在内的其他云供应商们已经推出了功能即服务产品。微软公司于去年11月发布的服务被称为Azure Functions。
微软Azure Functions 101
微软的Azure Functions是基于在Azure App Service PaaS中使用的WebJobs软件开发工具包的。这将有助于用户将应用或脚本程序作为web或移动应用的一部分来运行或者甚至将其公开作为可调用的API。因此微软Azure Functions可以使用WebJobs的功能从而更容易地使用Azure Storage和Azure Service Bus后者是一个发布与订阅的消息队列。
功能包括了用所支持语言开发的执行逻辑部分与描述功能绑定的JSON配置文件例如名称、数据类型以及绑定是发送还是接收数据。
作为一个事件驱动的服务微软Azure Functions非常适合处理数据其中涉及内容包括了从物联网IoT设备、开发微服务、开发集成其他代码模块或云服务或者API开发。以下Azure事件或服务可触发相关功能
存储blob活动例如在容器中添加或更改数据事件枢纽活动例如用于IoT的流数据网络事件例如HTTP请求或webhooksAzure Service Bus以及计划事件的计时器类似于Cron job。
微软Azure Functions还可与以下Azure和第三方发布事件的触发器集成
Azure DocumentDBAzure事件中心Azure移动应用程序Azure通知中心
Azure Service Bus包括可向Service Bus队列发布消息的内部部署的服务
Azure Storage通过webhooks的GitHubTwilio
一个可说明无服务器设计的简单示例是使用微软Azure Functions来响应和处理网络表单。不同于让网络服务始终处于运行状态并等待处理用户输入Azure Functions是按照命令执行任务。一旦激活后该功能可以显示存储在Azure blob中的若干表单中的一个处理已提交的字段并将处理结果保存在SQL或非SQL数据库中。
与AWS Lambda比较
微软Azure Functions与其他无服务器产品类似特别是AWS Lambda。但是它们之间还是有着重大的区别具体包括
处理持久性数据的方法两种服务都使用了无状态容器作为执行机制但是微软Azure Functions还可以在Azure App Service应用程序环境中运行这个环境配有专用虚拟机可让用户存储不同执行之间的状态。
每个云服务支持的事件源有关最新支持列表请参阅Lambda和微软 Azure Functions的开发人员文档。
定价模式两家厂商都是根据总执行时间和功能请求总数来综合定价的。但是具体细节是不同的。请务必查看Lambda 和 Functions 在它们各自网站上的最新费率信息 。
无服务器建议
由于无服务器功能是一个新概念企业用户仍然会采取审慎的态度试用以求找到正式引入使用的正确时机。Functions能够与事件驱动程序一起运行例如处理用户输入或响应异步消息队列中的事件。如同通用PaaS一样Functions有助于用户在几乎不了解初始容量要求的情况下部署新的应用程序但是期望使用量会随着时间推移而发散、爆发和发展。
例如消息队列的常见用途是处理来自外部源的数据例如在将物联网数据保存至数据前对数据进行过滤和归一化处理以及上传多媒体文件时压缩或变更图像或视频文件的格式。企业用户还可以使用Functions将Cron Jobs重新用于云端的批处理任务。