通过流量管理器和 Azure Functions(作为代理)为全球用户提供最靠近的认知服务(或自定义API)

本实战是一个中等复杂度的综合性实战,涉及到的内容有TrafficManager,AzureFunctions,域名/域名解析等几个内容。

本案例基础介绍:

https://www.bilibili.com/video/av86424146/

本案例实战:

https://www.bilibili.com/video/av86424146/

Azure上认知服务(人脸,语音,翻译等)很多对外提供API的访问方式,如果我需要做一个全球型的人脸识别或者翻译的项目,则可能最终会在Global多个区域部署相应的认知服务,人脸识别设备或者翻译app访问最靠近用户的区域的认知服务即可最快的得到响应。

其中将用户导流向最靠近用户的区域的服务为TrafficManager;

TrafficManager的设计原理导致了它最终给到用户的是后端服务的IP地址而不是进行流量/请求转发,所以,如果最终你要访问的网站或API或者认知服务不能通过 IP方式访问或者不能够设置使用自定义域名访问,则可通过本案例的方式,即用Azure Functions 作为代理,通过配置自定义域名的方式间接访问你的目标。

假设你有一个API,该API 部署在了 IP地址为 A的一台虚拟机上,通过设置主机头,导致了该API只能通过域名的形式访问,比如域名设置成了api.5gn.link, 并且不能通过 IP 地址 A 进行访问。本案例适用于这种情况,案例中我们使用了AzureFunctions,但实际上并不是唯一选择,也可以使用VM等支持设置自定义域名的服务即可。

全文请参见:

Azure Traffic Manager- 可以在全球 Azure 区域内以最佳方式分发流量

流量管理器-性能方式:

在国家或区域的两个或更多位置部署终结点,将流量路由到“最靠近”你的位置,即可改善许多应用程序的响应能力。 “性能”流量路由方法提供这种能力。

“最靠近”的终结点不一定是地理距离最近的终结点。 “性能”流量路由方法通过测试网络延迟来确定最靠近的终结点。 流量管理器维护一份Internet 延迟表,用于跟踪 IP 地址范围与每个 Azure 数据中心之间的往返时间。

流量管理器在 Internet 延迟表中查找传入 DNS 请求的源 IP 地址。 然后,流量管理器在处理该IP 地址范围的请求时具有最低延迟的Azure 数据中心内选择一个可用终结点,并在DNS 响应中返回该终结点。

流量管理器定期更新 Internet 延迟表,反映全国 Internet 的变化以及新的 Azure 区域。 但是,由于Internet 上的负载会实时变化,应用程序性能也会随之变化。 “性能”流量路由不会监视给定服务终结点上的负载。 但是,如果某个终结点变得不可用,则流量管理器不会在DNS 查询响应中包括该终结点。

本案例示意图:

本案例前置条件:

拥有控制权并备案的域名,本文以5gn.link做为演示,该域名托管在阿里云。

1. 在中国区创建 流量管理器,functionproxy.trafficmanager.cn,配置为TCP, 443;

2.在中国区创建Functions,chinafunction.chinacloudsites.cn;(略,在UkSouth 和WestUS2 分别创建Functions)

3. 通过Portal 修改 Functions,创建简单的Http触发的Functions(实际上Functions应该调用对应区域的认知服务或自定义API)

4.为Functions设置自定义域名 api.5gn.link

5. 申请SSL证书,并配置到Functions上

6.将流量管理器终结点中添加 chinafunction.chinacloudsites.cn(略,UKSouth和WestUS2)

在公众号阅读文章:https://mp.weixin.qq.com/s/ymRR_Boz13uEOg_9OUgWTA

在语雀阅读文章:https://www.yuque.com/seanyu/azure/bbe1xs

原文地址:https://www.cnblogs.com/shuzhenyu/p/12254628.html

时间: 2024-10-25 06:13:36

通过流量管理器和 Azure Functions(作为代理)为全球用户提供最靠近的认知服务(或自定义API)的相关文章

Azure 认知服务 (4) 计算机视觉API - 读取图片中的文字 (OCR)

<Windows Azure Platform 系列文章目录> 微软Azure认知服务的计算机视觉API,还提供读取图片中的文字功能 在海外的Windows Azure认知服务的读取图片功能,已经集成了用户界面,可以直接读取图片功能. 具体的链接是:https://azure.microsoft.com/zh-cn/services/cognitive-services/computer-vision/ 请注意不要在生产环境中使用这个URL地址,因为服务器是在海外Azure数据中心.网络传输会

Azure 认知服务 (3) 计算机视觉API - 分析图像,使用C#代码

<Windows Azure Platform 系列文章目录> 在上一节中Azure 认知服务 (2) 计算机视觉API - 分析图像,笔者介绍了如何使用API测试控制台进行调试. 本章将介绍如何使用C#代码调用分析图像功能. 我们需要准备: 1.Azure China账户 2.计算机视觉API的API Key 3.分析的图片URL:https://leizhangstorage.blob.core.chinacloudapi.cn/azureblog/analyzeimagesample.j

微软Azure云之企业Exchange 2016部署16&mdash;配置流量管理器

本节我们来使用Azure流量管理器来对主副站点的进行负载均衡,如下图红框处: 利用Azure流量管理器(Traffic Manager),可以将用户流量分配到Azure全球不同的数据中心.服务终结点的流量管理器支持包括Azure虚拟机.Web应用程序和云服务,也支持外部非Azure的Web站点. 为了对分布在全球不同数据中心的云服务进行负载平衡,可以将传入流量定向到最近的服务.尽管"最近"可能直接对应于地理距离,但也可能对应于以最短滞后为请求提供服务的位置.使用性能负载平衡方法可以基于

Microsoft Azure中TrafficManager (流量管理器)的路由方式

目前Azure的流量管理器有三种可供选择的路由方式.尽管你可以在任何时间去选择任何路由方法,每个流量管理器的配置文件在同一个时间段只能使用一个路由方法. 值得注意的是,所有的流量路由的方法均包括端点监控.配置流量管理器配置文件指定最适合需求的流量路由方式之后,你需要配置监控设置.当监控配置正确,流量管理器将监视端点的状态,包括云服务和网站,不会发送流量到它认为是不可用的端点. 这三种流量管理器流量路由的方法是:(为了便于理解,这里都举出场景) 1,故障转移:你在相同或不同的Azure数据中心均有

13.Azure流量管理器(上)

使用Azure 流量管理器可以控制用户访问流量导向不同位置的数据中心.流量管理器支持包括访问Azure VM.Web应用和云服务.也可将流量管理器用于非Azure数据中心的其他数据中心.流量管理器根据流量路由方法和不通位置的数据中心提供服务端的运行状况,使用域名系统 (DNS) 将客户端请求定向到最合适的就近数据中心提供服务端.流量管理器提供多种流量路由方法和数据中心提供服务端监视选项来满足不同的应用程序需求和自动故障转移模型.流量管理器能够灵活应对故障,包括整个 Azure 区域的故障.流量管

14.Azure流量管理器(下)

接下来开始创建流量管理器 创建流量管理器配置文件 在名称中,提供配置文件的名称.此名称必须在 trafficmanager.cn 区域中唯一,并会生成 DNS 名称 (trafficmanager.cn),该名称用于访问流量管理器配置文件. 在路由方法中,选择您需要的路由方法,这里我选择地理 在资源组位置中,选择资源组的位置.此设置指的是资源组的位置,对全局部署的流量管理器配置文件没有影响. 创建 接下来添加流量管理器的数据中心提供服务端 创建第一个Azure终结点(我理解的就是数据中心提供服务

使用Azure Functions 在web 应用中启用自动更新(一)分析基于轮询的 Web 应用的限制

1,引言 上一篇介绍了使用使用 Visual Studio 开发 "Azure Functions" 函数,此篇介绍 “Azure Functions” 的测试以及直接从 Vistual Studio 在 Azure 上的部署 ”Azure Functions“应用. 接着上一篇,本篇介绍在 “Azure Functions” 中实现一个函数,该函数仅在 Azure Cosmos DB 中的数据发生变化时运行. 在基于计时器的轮询原型中,无论底层数据是否发生了更改,客户端应用程序都会联

使用VS code 创建 Azure Functions,从blob触发,解析,发送至Service Bus

更多内容,关注公众号:来学云计算 场景: 某设备定时于每天23:00左右将一天的运行日志.devicelogtxt上传到Azure Blob,期待Blob文件上传后, 自动通过Azure Functions 解析文件并将文件内容写入到服务总线Service Bus的队列中. 上传的文件格式为: 步骤: 下载并安装VS Code: 下载VS Code 扩展:Azure Account/Funxtions/Nuget: 将VS Code Azure 调整成Azure-China: 在VS Code上

用代理模式 保持用户关闭链接的习惯

package cn.itcast.jdbc.datasourse; import java.sql.Array;import java.sql.Blob;import java.sql.CallableStatement;import java.sql.Clob;import java.sql.Connection;import java.sql.DatabaseMetaData;import java.sql.NClob;import java.sql.PreparedStatement;i