本实战是一个中等复杂度的综合性实战,涉及到的内容有TrafficManager,AzureFunctions,域名/域名解析等几个内容。后端
本案例买免费视频基础介绍:api
https://www.bilibili.com/video/av86424146?p=1
网络
本案例免费实战视频:app
https://www.bilibili.com/video/av86424146?p=2
ide
Azure上认知服务(人脸,语音,翻译等)不少对外提供API的访问方式,若是我须要作一个全球型的人脸识别或者翻译的项目,则可能最终会在Global多个区域部署相应的认知服务,人脸识别设备或者翻译app访问最靠近用户的区域的认知服务便可最快的获得响应。性能
其中将用户导流向最靠近用户的区域的服务为TrafficManager;测试
TrafficManager的设计原理致使了它最终给到用户的是后端服务的IP地址而不是进行流量/请求转发,因此,若是最终你要访问的网站或API或者认知服务不能经过 IP方式访问或者不可以设置使用自定义域名访问,则可经过本案例的方式,即用Azure Functions 做为代理,经过配置自定义域名的方式间接访问你的目标。网站
假设你有一个API,该API 部署在了 IP地址为 A的一台虚拟机上,经过设置主机头,致使了该API只能经过域名的形式访问,好比域名设置成了api.5gn.link, 而且不能经过 IP 地址 A 进行访问。本案例适用于这种状况,案例中咱们使用了AzureFunctions,但实际上并非惟一选择,也可使用VM等支持设置自定义域名的服务便可。阿里云
全文请参见:spa
《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