在Azure Portal和Visual Studio 2019中创建和使用Azure函数
我们可以使用Azure函数创建一个无服务器解决方案。它需要更少的代码、基础设施和维护成本。
诸如Azure这样的云平台为我们提供了保持应用程序运行所需的最新资源。
Azure函数的特点
你可以用你选择的任何语言编写你的函数代码。Azure函数可以部署在任何支持.NET 框架的平台上。
可扩展性- Azure函数使用可扩展的按需计算技术。这些函数是动态的,所以当请求的数量增加时,新的资源会自动分配给服务。当请求减少时,额外的资源和应用实例会自动终止。
Azure功能很小,不需要服务器--应用程序被设计为执行特定任务。它默认是轻量级的。Azure函数是无服务器的,这意味着它们可以在不使用任何Web服务器或虚拟机的情况下部署和运行。
Azure函数可以部署在各种配置中,包括Linux、Windows和容器。它们是可用的,可以被授权的应用所消费。
Azure功能允许你专注于用无服务器计算来交付业务价值。
Nuget和NPM(Node Package Manager)可分别用于添加依赖性和增强你的应用程序的逻辑。
Azure功能支持使用GitHub、Azure DevOps、Bitbucket和其他CI/CD方法进行持续集成和部署。
它们使用SSL绑定、VNet集成和OAuth提供者来保障你的功能。活动目录、Facebook、Twitter、谷歌和微软可以使用OAuth标准进行认证。
很容易将Azure App Insight(AAI)添加到你的应用中,以监测和分析性能。触发器和绑定也可以让你的无服务器应用对事件作出反应,并与其他服务进行通信。
使用Azure函数的优势
- 它们很小,部署和运行所需的资源很少。
- 它们是无服务器的,这意味着你不需要在云中设置一个网络服务器。
- 在不使用时,该应用是按需计算的,不消耗任何资源。
- 该应用程序是一种按使用付费的服务。如果你不使用它,你不需要支付任何费用。
- 该应用程序只在事件被触发时运行。
- 该应用程序是自成一体的;因此,它对其他应用程序没有影响或干扰。
- 创建和部署一个应用程序很简单。
- Azure应用很容易更新和支持。
流行的Azure服务的例子
- Azure中的活动目录
Azure活动目录(AD)是微软的领先云计算技术之一。
它有助于管理和保护任何人可能使用的身份。该平台有很好的安全措施。
- Azure CDN
Azure内容交付网络(CDN)有助于组织的成长和发展。它的服务器是为适应微软Azure的众多网络应用和云服务而建立的。
许多公司使用Azure CDN,将材料安全地运送到世界各地。
- Azure数据工厂
为了使云计算中的数据传输和移动性自动化,Azure数据工厂接受来自不同来源的数据。
Azure机器学习、Azure HDInsight Hadoop和Azure数据湖分析等Azure服务被用来进行计算。
- Azure SQL
说到数据库管理,Azure SQL是一种服务模式(PaaS)。这意味着它负责大多数后端任务,如监控、打补丁和自我更新。
由于Azure SQL的效率,包括它是必不可少的。它只需要很少的人力参与。
- Azure函数
开发人员使用Azure函数来响应事件并附加到不同的系统。使用Azure Function时,你只需为你使用的资源付费。
通过Azure函数,企业可以执行代码来响应不同的事件,而不需要相应的基础设施。
Azure的组成部分
- 计算
它提供应用程序开发、托管和部署服务。
- 存储
说到云数据存储,Azure存储是一个重要的角色。
它提供了一个随用随付的选项,这样用户只需为他们使用的资源付费。此外,其存储容量几乎是无限的。
- 数据库
这个组件为数据管理提供SQL和NoSQL功能。像SQL Server、Azure Database for MySQL等关系型数据库都受到支持。
也可以使用像Cassandra这样的NoSQL数据库。Cosmos DB(文档DB)由于其速度和改进的性能,是另一个支持的选项。
- 安全和认证
认证、授权、密钥加密和其他与安全有关的任务由该组件处理。它还可以识别和应对安全威胁。
流行的服务包括Azure Active Directory(AAD)、Azure Key Vault和其他。
- 网络
这个组件允许你创建一个虚拟私人网络(VPN)并安全地连接到它。只有授权的服务可以使用在VPN内建立的虚拟机。
可以使用内部和Azure数据中心建立连接。Azure流量管理器也控制数据中心之间的流量。
- 监控
Azure监控服务收集和分析来自云和内部应用的日志,以提高性能。
Azure监控服务协助识别有问题的区域,以提高性能。指标和日志被用来存储应用程序收集的所有数据。
- 网络服务
网络应用服务允许你部署本地创建的网络应用。这些应用程序可以使用Java、.NET、PHP、NodeJS和其他编程语言创建。
它与Windows和Linux都兼容。用户已经不需要担心开发的问题。Azure负责实施和维护。
网络服务在默认情况下被设置为公开的。这使得它们可以从Azure云的任何地方访问。
- 移动服务
这个组件作为移动应用程序的后端。如果你的应用程序收到大量的请求或需要存储大量的数据,这就是你要做的事情。
它提供了一种叫做通知集线器的服务,向手机发送警报。Notification Dash得到了苹果和谷歌的支持。
ARM模板的概念
基础设施即代码可以使用Azure资源管理器(ARM)模板快速交付到Azure环境中。
我们可以在一个JSON文件中提供我们想要的对象,包括它们的名称和属性。
使用ARM API的好处是,它允许人们从单个JSON文件中发布许多资源。
然后,ARM API将指定的属性分配给这些资源。这是通过创建符合这些细节的新对象或改变现有对象(如果资源名称和类型相同)来实现的。
然而,尽管ARM API将资源添加到Azure中,但没有代码或应用程序被添加到资源中。使用ARM模板来部署虚拟机,我们可以使用已经安装的SQL服务器。尽管如此,我们还是不能使用SSDT包来部署或恢复数据库。
Azure功能的用途
- 调度任务
- 通知和提醒
- 发送电子邮件
- 执行备份活动
- 在后台进行计算
Azure函数使用触发器。当事件被触发时,任务在后台运行。因此不是所有的应用都能得到Azure函数应用的支持。
应避免使用Azure函数,如果。
- 一、是多任务。
- 函数代码包含太多的复杂逻辑。
- 用一组Azure函数应用程序代替API。
- 使用来自前端应用程序的数据,同时保存到后端数据库或从后端数据库保存。
Azure函数与Web作业
可以使用Azure App Service的WebJobs. WebJob来自动执行程序或脚本,可分为两组。
连续:它使用WebJob来检查共享文件夹中的新图片,使用一个连续的循环。
触发式:可以按计划运行,也可以手动运行。
一个WebJob可以适应不同的语言。例如,我们可以使用Shell Script来修改WebJob (Windows、PowerShell、Bash)。
我们也可以将该框架与PHP、Python、Node.js、JavaScript和.NET结合起来使用,构建一个应用程序。
Azure功能在很多方面都与网络工作类似,只是在利用一个功能时,你不必关心基础设施的问题。
它们可能是由各种各样的东西带来的,包括。
- HTTPTrigger- 这个函数是在响应HTTP请求时调用的。
- TimerTrigger- 允许在一个设定的时间表上执行任务。
- BlobTrigger- 它支持向你的Azure内存账户添加一个新的blob。
- CosmosDBTrigger- 它发生在NoSQL数据库中,由于新的或修改的文档。
一般来说,Azure函数的适应性更强,使用起来也更直接。另一方面,WebJob在以下情况下是一个优越的选择。
- 脚本应该作为当前应用服务应用程序的一个组成部分来维护。
- 你必须对要执行的对象有完整的命令。
使用Visual Studio 2019创建Azure函数
本节将讨论如何使用Azure门户来构建Azure函数。
在创建Azure函数之前,我们必须首先在Azure门户中构建一个函数应用程序。然后,我们可以使用该函数应用程序来开发各种类型的Azure函数。
使用Azure门户创建函数应用
第1步
要想开始,我们必须首先登录Azure门户。然后,从仪表板中选择Create a Resource 选项。然后,从resource list ,选择Function App 选项。

第2步
要构建一个功能应用,我们现在必须在Create Function App 部分提供以下选择。
生成一个新的Resource Group ,或从头加入一个现有的。
函数应用程序的名称包含在这个字段中。
接下来,在Code 和Docker Container 之间选择。这个选项指定了我们要运行我们的函数应用程序的环境。我们将使用代码进行演示。
然后我们必须选择在构建Azure函数时使用哪种语言。我们选择的编程语言是.NET。
当你从菜单中选择Runtime Stack ,该编程语言的最新版本会在版本下拉中自动选择。
我们必须选择一个数据中心所在的地区。
在输入上述字段的数值后,我们必须点击Create + Review 按钮。
然后按下Create Button 按钮。

第3步
一旦功能应用程序被部署,它将出现如下图所示。

第4步
如果我们复制Function App的URL并将其粘贴到浏览器标签中,将显示我们的Function App已经启动并运行。
我们的Function App现在已经可用了。在这个Function App中,我们必须开发我们的第一个Azure Function。
使用Azure Portal创建Azure Function
第1步
导航到Function App区域,从left-side menu 面板中选择Function 选择。

第2步
要创建我们的第一个Azure函数,我们需要遵循以下步骤。
- 选择
Add Button选项。 - 从
Development Environment的下拉菜单中选择Develop in Portal。 - 从
Template List,选择HTTP Trigger Template。 - 然后提供正确的函数名称。
- 从下拉菜单中选择
Add Button。

第3步
在函数部署完毕后,选择code + Test 。在Azure门户内,它将给我们一个Azure函数的测试环境。
首先显示的是该函数的默认代码模板,即一个基于C#的函数。如果我们想更新代码,这是我们可以做的。
要运行结果,从下拉菜单中选择Test/Run 。
如何使用Visual Studio 2019制作一个Azure函数
首先,打开Microsoft Visual Studio 2019,然后从下拉菜单中选择Create New Project 。
从New Project Template List 中选择Azure Functions Project Template ,然后点击next 按钮。

现在键入项目名称,然后按Create 按钮。
从下拉菜单中选择Azure Function Templates 。然后从下拉菜单中选择Create Button 。

现在Create your solutions ,然后按F5 。它将运行该项目,结果如下。

现在复制突出显示的URL,并将其粘贴到你的浏览器中,检查输出结果。
http://localhost:7071/api/Function1
为了传递名称参数,请对URL做如下修改。
http://localhost:7071/api/Function1?name=Debasis%20Saha
输出应该改变。
结论
本教程讨论了Azure Functions 中所涉及的内容,并将Azure Function 与网络作业进行了比较。这个分步指南将使你能够在Azure Portal和Visual Studio 2019中处理Azure Functions。