Azure App Service 健康检查正式发布

点击上方蓝字关注“汪宇杰博客”

原文:Jason Freeberg, Suwat Bodin

翻译:汪宇杰

导语

通过App Service,可以在流量增加时自动将应用程序自动扩展到多个实例。这样可以提高您应用的吞吐量,但是如果其中一个实例发生未捕获的异常怎么办?为了解决这种情况,我们从去年开始推出健康检查与预览版。运行状况检查功能使您可以在应用程序上指定用于ping的App Service路径。如果实例无法响应ping,则说明系统会确定实例不正常,并将其从负载平衡器旋转中删除。这样可以提高您应用程序的平均可用性和弹性。

健康检查现已全面推出,并已准备好用于生产环境应用程序。现在起可在Azure门户中对您的应用程序设置运行状况检查。转到您的Web应用,然后在左侧导航菜单中的“监视”下找到“运行状况检查”。您可能会在Azure管理页面上看到“(预览)”。这是因为门户网站使用最新的React库,但是该功能本身是正式版的。

行为

在网站上指定路径后,App Service 会每两分钟ping它一次。如果路径以200到299之外的状态代码响应5次ping(或根本不响应),则该实例被确定为不正常,并将其从负载均衡器旋转中删除。这将阻止负载均衡器将请求路由到不正常的实例。

当实例运行状况不佳并从负载均衡器中删除时,服务将继续对其执行ping操作。如果它开始以成功的响应代码(200到299)进行响应,则该实例将返回到负载均衡器。如果继续失败,App Service 将重新启动后台VM,以使实例恢复正常状态。

详情请参考健康检查功能文档:

健康检查路径

路径必须在两分钟内以200到299之间的状态代码响应。如果该路径在两分钟内未响应,或者返回的状态码超出范围,则该实例被视为“不正常”。Health Check与App Service的身份验证和授权功能集成在一起,即使启用了这些安全功能,系统也将到达端点。如果您使用自己的身份验证系统,则运行状况检查路径必须允许匿名访问。如果站点启用了HTTPS,则运行状况检查将接受HTTPS并使用该协议发送请求。

健康检查路径应检查应用程序的关键组件。例如,如果您的应用程序依赖于数据库和消息传递系统,则运行状况检查端点应连接到这些组件。如果应用程序无法连接到关键组件,则该路径应返回500响应代码,以指示该应用程序不正常。

警报

提供应用程序的运行状况检查路径后,您可以使用Azure Monitor监视网站的运行状况。在门户网站的“运行状况”检查页面中,单击顶部工具栏中的“指标”。这将打开一个新页面,您可以在其中查看该站点的历史健康状态并创建新的警报规则。有关监视站点的更多信息,请参见 Azure Monitor 上的指南。

汪宇杰博客

Azure | .NET | 微软 MVP

无广告,不卖课,做纯粹的技术公众号

喜欢本篇内容请点个在看

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

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

相关文章

Azure Cosmos Db 介绍及演示

Azure Cosmos DB 是 Microsoft 提供的全球分布式多模型数据库服务。Cosmos DB是一种NoSql数据库,但是它兼容多种API。它支持SQL, MongoDB、Cassandra或 Gremlin,你可以挑选自己喜欢的方式进行存储跟访问。主要优势统包式全局分发凭借 Cosmos DB&#xff…

leetcode049. 最后一块石头的重量 II

一:题目 二:上码 class Solution { public:/**思路:1.分析题意只要我们将石头分为尽可能相同的两堆,他们的重量相减后剩余的重量就是最小。 物品的重量为stones[i];物品的价值也为stone[i];temp代表总重量的一半那么我们最终得到的stones[temp]:就是背包容量为temp的最大重量为…

大改革,GNOME 3.x将直接跳到GNOME 40

GNOME 3.38 发布后,GNOME 基金会宣布了用于 GNOME 的新版本控制方案,将于2021年3月发布的下一版 GNOME 将是 GNOME 40。你没看错,版本号直接从现在的 3.x 跳到了 40。以 GNOME 40 为例,其开发周期将包含三个阶段,对应的…

.NET Core + Kubernetes:StatefulSet

在 Kubernetes 中,Pod 资源的控制器 Deployment、Replicaset、Daemonset 等常用于管理无状态应用,它们所管理的 Pod 对应的 IP、名字,启停顺序等都是随机的,Pod 之间也并不存在任何关联关系。而实际情况下,在应用集群部…

python编程中的小问题汇总

前言 本文记录了我在python编程中遇到的各种小问题,持续更新。 1. x x 1 VS x 1 辨析下面这两段代码: >>> x y [1, 2, 3, 4] >>> x [4] >>> x [1, 2, 3, 4, 4] >>> y [1, 2, 3, 4, 4]>>> x y …

都在讨论高并发,结果连并发量、TPS、QPS都分不清

“ 年年岁岁跳槽季,回回必问高并发!原因很简单,因为高并发能牵扯出太多问题,接口响应超时、CPU负载升高、GC频繁、死锁、大数据量存储等,能考察求职者的真实情况。而很多人在第一步就倒下了!因为对数据化的…

leetcode518. 零钱兑换 II

一:题目 二:上码 class Solution { public:/**思路:1.分析题意这个满足答案的结果有很多种,所以我们可以用动态规划去做,那么题意中我们可以知道的是我们是可以输入一种面值的时候,我们是可以重复输入的,那么这就是背包类型中的完全背包了2.动态规划5步…

跟我一起学.NetCore之选项(Options)核心类型简介

前言.NetCore中提供的选项框架,我把其理解为配置组,主要是将服务中可供配置的项提取出来,封装成一个类型;从而服务可根据应用场景进行相关配置项的设置来满足需求,其中使用了依赖注入的形式,使得更加简单、…

《ASP.NET Core项目开发实战入门》送书活动结果公布

截至2020.09.20 本次送书活动《ASP.NET Core项目开发实战入门》。下面把Top 5的留言截图给大家回顾一下。以下5位同学将获赠书籍一本:小林子鉴静红脸先生阿星Plus以上同学请在2020年9月25日24:00之前加小二微信领取赠书,超过时间视为放弃。小…

二分查找基础概念与经典题目(Leetcode题解-Python语言)二分索引型

二分查找的定义如下(引自Wiki): 在计算机科学中,二分查找算法(英语:binary search algorithm),也称折半搜索算法(英语:half-interval search algorithm&…

Magicodes.IE 2.3重磅发布——.NET Core开源导入导出库

在2.3这一版本的更新中,我们迎来了众多的使用者、贡献者,在这个里程碑中我们也添加并修复了一些功能。对于新特点的功能我将在下面进行详细的描述,当然也欢迎更多的人可以加入进来,再或者也很期待大家来提issues或者PR&#xff0c…

听说用 C# 写 TensorFlow 更高效?

经过半年呕心沥血的努力,SciSharp STACK终于把Tensorflow .NET绑定升级到可以使用 tensorflow 2.3, 新版本最大的优势是实现了Eager模式, 这个特性是让.NET C#/ F#成为机器学习模型开发工具的重要前置条件。NugGet包下载:https://www.nuget.org/packages/TensorFlow…

leetcode279. 完全平方数

一:题目 二:上码 class Solution { public:/**思路:1.分析题意这个就是将一个数分成几个数的和;然而的话,这几个数必须的是完全平方数,我们要求的是最少数量的完全平方数这个满足答案的有好几个;但是我们要求的是最少的数量2.动态规划五步走1>:确定dp数组的含义以及下标的含…

跟我一起学.NetCore之Options实例演示及分析

前言来啦!来啦!上一节一堆代码,是不是感觉甚是无味啊?没关系,这里结合上一节内容专注举例演示,绝不废话!走起~~~~~正文老规矩,一个WebApi项目走起,项目结构如下&#xff…

leetcode139. 单词拆分

一:题目 二:上码 class Solution { public:/**思路:1.分析题意单词就是物品;字符串就是背包;单词能否组成字符串就是在问,物品能不能将背包装满单词可以重复使用那么说明这是一个完全背包2.动态规划五步走1>:确定dp数组的与下标的含义(这里用下标i是由我们的遍历…

大数据下的质量体系建设

一、背景大数据、人工智能是当前也是未来几年IT部门的重点建设方向,新的技术可以为业务突破盈利瓶颈,带来新的增长点,同时我们也发现数据中台也频频在最近的企业财报予以体现,相关的技术岗位需求也是供不应求,与之形成…

Pandas中的 transform() 结合 groupby() 用法示例

首先,假设我们有如下餐厅数据集: import pandas as pddf pd.DataFrame({restaurant_id: [101,102,103,104,105,106,107],address: [A,B,C,D, E, F, G],city: [London,London,London,Oxford,Oxford, Durham, Durham],sales: [10,500,48,12,21,22,14] })…

跟我一起学.NetCore之日志(Log)模型核心

前言鲁迅都说:没有日志的系统不能上线(鲁迅说:这句我没说过,但是在理)!日志对于一个系统而言,特别重要,不管是用于事务审计,还是用于系统排错,还是用于安全追踪.....都扮演了很重要的…

Numpy中数组创建函数的辨析

首先推荐Numpy官方的教程,网址。 很多人会对数组创建函数的参数中什么时候要用括号np.zeros((2, 3)),什么时候不用括号np.eye(3, 5)感到疑惑,这里对它们统一进行梳理。(按照官方文档的分类方法) 1. 一维数组创建函数…

leetcode213. 打家劫舍 II

一:题目 二:上码 class Solution { public:/**思路:1.既然成环了,我们如果选取得一条偷取路径是从头开始得那么我们就不能偷取最后一个,那就不算最后一个偷取一遍2.同理我们也可以不算第一个 偷取一遍计算一次偷取得结果*/int rob(vector<int>& nums) {if(nums.size…