【转】微软Azure Functions使用入门

微软公司于近期发布了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请求或webhooks;
  • Azure Service Bus,以及
  • 计划事件的计时器,类似于Cron job。

微软Azure Functions还可与以下Azure和第三方发布事件的触发器集成:

  • Azure DocumentDB
  • Azure事件中心
  • Azure移动应用程序
  • Azure通知中心

Azure Service Bus,包括可向Service Bus队列发布消息的内部部署的服务

  • Azure Storage
  • 通过webhooks的GitHub
  • Twilio

一个可说明无服务器设计的简单示例是使用微软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重新用于云端的批处理任务。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/437558.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【转】The underlying connection was closed

转自: https://support.microsoft.com/en-us/kb/915599 SUMMARY This article describes error messages that you may receive when you use the Microsoft .NET Framework 1.1 Service Pack 1 (SP1) to make HTTP requests or when you call a Web service. SYMPTOMS Whe…

jvm详解、GC、堆内存参数调优

一些常见面试题: JVM的位置(运行在操作系统上,与硬件没有直接的交互) 一、jvm体系结构(记住背下来) 运行时数据区:有亮色的有灰色的,灰色的就是占得内存非常小,几乎不存…

【转】!Dynamics 365 Online通过OAuth 2 Client Credential授权(Server-to-Server Authentication)后调用Web API

微软动态CRM专家罗勇 ,回复332或者20190505可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me! 本文很多内容来自 John Towgood 撰写的Dynamics 365 Online Authenticate with Client Credentials &#xff0c…

JMM(java内存模型)

这篇文章写得挺好的:https://blog.csdn.net/javazejian/article/details/72772461 在多线程环境下,线程之间的要通信,就不得不提JMM(java内存模型) 在JVM内部使用的java内存模型(JMM)将线程堆栈和堆之间的内存分开 jmm的承诺: 1.原子性 2.可…

【转】Postman 生成接口文档

引言 几个朋友想做一个前后端分离的项目,接口文档的重要性那是不言而喻的。生成接口文档的方法真的太多了,Yapi、Swagger等等。但是想公网上访问接口文档并修改的话,还得购买服务器,部署上去。穷码农,哪有钱购买服务器…

JVM的进阶学习(GC Roots、JVM调优与参数配置、)

1. GC Roots,可达性分析 从GC roots的对象作为起始点,从GC Roots对象开始向下搜索,如果一个对象到GCRoots没有任何引用链相连,则说明对象不可用。即给定一个集合的引用作为根出发,通过引用关系遍历对象图,能…

【转】图解phpstorm常用快捷键

转载自 https://segmentfault.com/a/1190000004225643 查询快捷键 CTRLN 查找类 CTRLSHIFTN 全局搜索文件 ,优先文件名匹配的文件 CTRLSHIFTALTN 查找php类名/变量名 ,js方法名/变量名, css 选择器 CIRLB 找变量的来源,跳到变量申明处 (CTRL 鼠标单击 也可以) CTRL…

HQL写topN、Spark写topN

HQL写topN用窗口函数rank() 、row_number()、dense_rank() 1、rank(),跳跃排序,假如第一第二相同,那么第三个就是3 select * from( select id, cn, score, rank() over(partition by id order by score desc)as ranks from top N ) A where ranks&…

【转】Dynamics 365 CRM 开发架构简介

目录 概览 名词解释连接到Dynamics 365 CRM Web APIOrganization service选择 - Web API vs. Organization service扩展服务端扩展应用端正文 Dynamics 365 CRM提供了多种编程模型,你可以灵活地按需选用最佳模式。 本文是对Dynamics 365 CRM编程模型的综述。 回…

查找算法-(顺序查找、二分查找、插值查找、斐波那契查找)

1)顺序查找或叫线性查找 就是顺序遍历匹配 2)二分查找 package search;public class BinarySearch {/*** 二分查找数组必须有序*//**** param arr 数组* param left 左边索引* param right 右边索引* param findVal 要查找的值* return 找到就返回&…

数据结构 - 哈希表(用数组+链表实现存储员工信息,添加增删查功能)

package hashtab;import java.util.Scanner;public class HashTabDemo {public static void main(String[] args) {//创建一个hashTabHashTab hashTab new HashTab(7);//写一个简单菜单来测试String key "";Scanner sc new Scanner(System.in);while (true){Syste…

数据结构 - 树(二叉树的 前序、中序、后序 遍历)

二叉树遍历(前序中序后序,主要是看父节点的输出顺序) package tree;public class BinaryTreeDemo {public static void main(String[] args) {//先需要创建一颗二叉树BinaryTree binaryTree new BinaryTree();//创建需要的节点HeroNode root…

【转】c# 操作webservice(经典入门教程+MSDN必胜)(有自己修改的部分)

Web Service基本概念 Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。是:通过SOAP在Web上提供的软件(服务),使用WSDL文件进行&#xff0…

数据结构 - 二叉树(前序中序后序查找)

public static int i 1, j 1, k 1;//编写前序查找方法public HeroNode preOrderSearch(int no){System.out.println("前序遍历"(i)"次");if (this.no no){return this;}HeroNode heroNode null;if (this.left ! null){heroNode this.left.preOrderSea…

数据结构 - 二叉树(删除节点)

因为二叉树是单向的,所以要判断当前节点的子节点(左或右)是否是被删除的节点 //递归删除节点//规定:如果是叶子节点就删除节点,如果非叶子节点就删除子树public void delNode(int no){if (this.left !null && this.left.no no){this…

【转】OData – the best way to REST–实例讲解ASP.NET WebAPI OData (V4) Service Client

一、概念介绍 1.1,什么是OData? 还是看OData官网的简单说明: An open protocol to allow the creation and consumption of queryable and interoperable RESTful APIs in a simple and standard way. 这是一个开放的数据查询和服务协议&…

数据结构 - 顺序存储二叉树(前序中序后序遍历)

就是逻辑上是二叉树,物理上是一个数组 需求 package tree;public class ArrayBinaryTreeDemo {public static void main(String[] args) {int arr [] {1, 2, 3, 4, 5, 6, 7};ArrayBinaryTree arrayBinaryTree new ArrayBinaryTree(arr);//arrayBinaryTree.preOrde…

【转】WCF Data Service 使用小结 (一)—— 了解OData协议

最近做了一个小项目,其中用到了 WCF Data Service,之前是叫 ADO.NET Data Service 的。关于WCF Data Service,博客园里的介绍并不多,但它确实是个很好的框架。可以很方便地通HTTP来访问数据库,如果你是做富客户端开发的…

数据结构 - 线索化二叉树(线索化与遍历)

!!(这里我debug很久才理解过来)** 这里8的前驱为null,所以8的leftType1,但是6是没有后继的或者说后继为null但是rightType为0(因为后继是在下一个节点来进行连接的,6没有下一个节点,所以不能实现后继的线索化,所以righ…

【转】WCF Data Service 使用小结(二) —— 使用WCF Data Service 创建OData服务

在 上一章 中,介绍了如何通过 OData 协议来访问 OData 服务提供的资源。下面来介绍如何创建一个 OData 服务。在这篇文章中,主要说明在.NET的环境下,如何使用 WCF Data Service 来创建OData服务。当然,对于 JAVA 或者其它平台&…