Azure Front Door(一)为基于.net core 开发的Azure App Service 提供流量转发
一,引言
之前我们讲解到使用 Azure Traffic Manager、Azure LoadBalancer、Azure Application Gateway,作为项目的负载均衡器来分发流量,转发访问请求。尤其之前在介绍到 Azure Traffic Manager是一种具有基于DNS的流量负载均衡器,可以在全球区域内以最佳方式分发流量,同时提高高可用性和响应性。流量管理器的配置路由方式可以是 “Geographic”(基于地理位置的路由策略),也就是在不同的地址位置上部署服务器以就近相应用户的请求。
今天我们尝试通过新的Azure Resource-----Azure Front Door,使用 Front Door,可将全球使用者应用程序和企业应用程序转换为可靠、高性能且个性化的新型应用程序,其内容可以通过 Azure 向全球受众提供。Front Door 提供了多种流量路由方法和后端运行状况监视选项来满足不同应用程序需求和自动故障转移方案。 与 zure Traffic Mnager Profile 类似,Azure Front Door 可以灵活应对故障,包括整个 Azure 区域的故障。
-------------------- 我是分割线 --------------------
1,Azure Front Door(一)为基于.net core 开发的Azure App Service 提供流量转发
二,正文
1,提前创建Azure App Service 作为后端服务
还记得我们的之前讲解的Terraform 系列文章吗?我们可以学以致用,直接触发Azure DevOps Pipeline 创建Azure 基础设施资源。
而图中的 “CnBateBlogWeb01” 和 “CnBateBlogWeb02” 正是我们本篇文章中所需要的前置条件-----“backend”
2,创建 Azure FrontDoor
登陆 Azure Portal 上,点击 “create resource”,在搜索框中搜索 “Front Door”
点击图中的 “Create”
输入相关参数
Resource group 选择创建一个新的:“Web_Test_FD_RG”
Resource group location 选择:“East Asia”
点击 "Next:Configuration"
接下来就需要配置 Azure Front Door 的前端host,后端池,以及路由规则了
首先我们先配置 “Frontends/domains”,点击图中圈中的 “+”
Host name:“cnbateblogweb”
SESSION AFFINITY (会话相关性) 选择默认:“Disabled”
WEB APPLICATION FIREWALL (WEB 应用程序防火墙) 选择默认:“Disabled”
点击 “Add” 进行添加前端主机
接下来我们需要添加后端池,我们继续点击图中圈中的部分
输入后端池相关参数
Name:“cnbateblogweb-backendpool”
点击图中圈中的部分,给后端池添加后端服务
Backend host type:“App service”
Backend host name 选择:“cnbateblogweb01.azurewebsites.net”
其余参数都走默认,不需要修改
点击 “Add”
使用同样的方式,我们再添加一个类型为 “app service” 的后端
回到添加后端池页面,我们划到页面最底部,我们看到 LOAD BALANCING 的相关配置
Latency sensitivity(延迟敏感度)默认为:0
对应官方的解释:
- 延迟: 基于延迟的路由确保将请求发送到在敏感度范围内可接受的最低延迟的后端。 基本上,用户请求将发送到 "最近" 的后端,这与网络延迟有关。
那我就可以理解为根据地理位置的不同,Azure Front Door 会将用户请求转发到最近的后端服务上。
最后我们需要配置路由信息,我们点击图中圈中的部分
Name:“cnbateblogweb-rule”
Frontends/domains 确保是刚刚我们添加的前端 “cnbateblogweb.azure.net”
Backend pool 确保是刚刚我们添加好的后端池 ”cnbateblogweb-backendpool"
点击 “Add”
配置完 前端,后端池,路由规则之后,我们点击 “Review + create”
预校验完成,我们点击 “create” 进行创建。
等待创建完成之后,我们点击 “Go to resource”,跳转到该资源
选择 “Overview” 页面,复制 Front host 的 url
通过浏览器访问 Azure Front Door 的URL,我们可以看到就近将我们的请求转发到 “CnBateBlogWeb01” 的App Service 上
3,番外话题
博主在配置完 Azure Front Door 之后,直接复制 Azure Front Door 的 URL 到浏览器中访问时,出现了很诡异的时候
竟然提示如下图所示:
经过查看官方文档说明:
所以,大家在练习的时候,如果也出现类似的问题,稍微等待5,6分钟后再尝试访问。
-------------------- 我时分割线 --------------------
Bingo,成功。Azure Front Door 将流量就近转发到东南亚的测试我就不再演示了,大家可以通过不可描述的方式或者创建东南亚的虚机来访问。
今天的分享到此结束,撒花!
三,结尾
ok,今天的分析到此结束,关于 Azure Front Door 的 Routing method 我们只介绍了 “延迟” 路由方式,其他的三种:“优先级”、“加权”、“会话相关性”,大家可以先自行看着微软的官方介绍,尝试实践一下。
下一篇,我们将实践操作另外三种路由方式的 Azure Front Door,期待中........
参考资料:Azure Front Door
作者:Allen
版权:转载请在文章明显位置注明作者及出处。如发现错误,欢迎批评指正。
Azure Front Door(一)为基于.net core 开发的Azure App Service 提供流量转发的更多相关文章
- 基于.NET Core开发的个人博客发布至CentOS小计
早些时候,使用 .NET Framework 开发网站,只能部署在 Windows 服务器上面,近两年 .NET Core 如火如荼,乘此机会赶紧上车,最近将自己利用 .NET Core 开发的个人博 ...
- 基于.Net Core开发的物联网平台 IoTSharp V1.5 发布
很高兴的宣布新版本的发布, 这次更新我们带来了大量新特性, 最值得关注的是, 我们逐步开始支持分布式, 这意味着你可以通过多台服务器共同处理数据, 而不是原来的单机处理, 我们也将遥测数据进行分开存储 ...
- 我的开源权限管理项目BeCore (基于.net core开发)
首先 谢谢大家还记得我.. 新年快乐 祝大家工作顺利 事事顺心 人见人爱 车见车载 冬不寒 下雨有伞 全身哪都不疼 就是有人疼 ~~ Github地址:https://github.com/baby8 ...
- Azure Front Door(二)对后端 VM 进行负载均衡
一,引言 上一篇我们讲到通过 Azure Front Door 为我们的 Azure App Service 提供流量转发,而整个 Azure Front Door 在添加后端池的时候可选的后端类型是 ...
- Azure Front Door(三)启用 Web Application Firewall (WAF) 保护Web 应用程序,拒绝恶意攻击
一,引言 上一篇我们利用 Azure Front Door 为后端 VM 部署提供流量的负载均衡.因为是演示实例,也没有实际的后端实例代码,只有一个 "Index.html" 的静 ...
- 如何将Azure DevOps中的代码发布到Azure App Service中
标题:如何将Azure DevOps中的代码发布到Azure App Service中 作者:Lamond Lu 背景 最近做了几个项目一直在用Azure DevOps和Azure App Servi ...
- 基于DotNet Core的RPC框架(一) DotBPE.RPC快速开始
0x00 简介 DotBPE.RPC是一款基于dotnet core编写的RPC框架,而它的爸爸DotBPE,目标是实现一个开箱即用的微服务框架,但是它还差点意思,还仅仅在构思和尝试的阶段.但不管怎么 ...
- 发布基于Orchard Core的友浩达科技官网
2018.9.25 日深圳市友浩达科技有限公司发布基于Orchard Core开发的官网 http://www.weyhd.com/. 本篇文章为你介绍如何基于Orchard Core开发一个公司网站 ...
- 基于 abp vNext 和 .NET Core 开发博客项目 - 终结篇之发布项目
系列文章 基于 abp vNext 和 .NET Core 开发博客项目 - 使用 abp cli 搭建项目 基于 abp vNext 和 .NET Core 开发博客项目 - 给项目瘦身,让它跑起来 ...
随机推荐
- Codeforces Round #682 (Div. 2) B. Valerii Against Everyone (思维)
题意:给你一组数\(b\),对于每个\(b_i\),相对应的\(a_i=2^{b_i}\),问你是否能找出两个不相交的区间,使得两个区间的\(a_i\)的元素和相等. 题解:对于任意一个\(2^k\) ...
- POJ 3189
题意: 给你B个谷仓和n头牛,每个谷仓最多容纳m头牛.此时每头牛对每一个谷仓都有一个喜悦值,你需要把每一头牛都安排某个谷仓内,并且找出来那个每一头牛对它所住的谷仓打的分值,我们对这所有的分值取一个区间 ...
- 23. 合并K个排序链表 分治
这种k个相同的子问题,可以两两分治,总的运算次数为logk 关键部分 int dis=1; int len=lists.size(); while(dis<=len) { for(int i=0 ...
- codeforces 1C (非原创)
C. Ancient Berland Circus time limit per test 2 seconds memory limit per test 64 megabytes input sta ...
- 关于TCP和UDP的通俗理解
TCP和UDP是网络基础,很多公司面试也都会问到,今天我在这里,根据大神们的讲解,自己总结借鉴一下. 首先,先提一个问题:英雄联盟是TCP还是UDP? 这个问题对于游戏玩家,可能大多数人都没有想过.一 ...
- unity编辑器扩展学习
扩展编辑器实际上就是在unity菜单栏中添加一些按钮,可以一键执行一些重复性的工作. 一.添加按钮 1.简单使用MenuItem特性 using UnityEngine; using UnityEdi ...
- Vue 面试题汇总
Vue 面试题汇总 refs xgqfrms 2012-2020 www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!
- 如何使用 js 写一个正常人看不懂的无聊代码
如何使用 js 写一个正常人看不懂的无聊代码 代码质量, 代码可读性, 代码可维护性, clean code WAT js WTF https://www.destroyallsoftware.com ...
- Redis 大 key 问题 & 问题分析 & 解决方案
Redis 大 key 问题 & 问题分析 & 解决方案 Redis 什么是 Redis 大 key 单个key 存储的 value 很大 hash, set,zset,list 结构 ...
- css infinite loop animation
css infinite loop animation @keyframes loop { 0% { transform: translateX(0%); } constructed styleshe ...