Web+提供健康检查功能,用于查看应用业务是否正常运行。在创建健康检查后,Web+会根据获取到的应用健康检查的状态来对应用做一些操作:如监测到ECS实例的健康检查失败会重启实例,如监测到应用实例运行异常将会进行应用重启。

健康检查简介

Web+中执行健康检查主要分为两部分内容:

  • 应用实例存活检查:探测应用实例是否正常运行。如果应用实例的健康检查失败,集群会对该实例执行重启操作;若实例的健康检查成功则不执行任何操作。
  • 应用业务就绪检查:探测应用业务是否已经就绪,该检查方式用于检测容器是否准备好开始处理用户请求。一些程序的启动时间可能很长,比如要加载磁盘数据或者要依赖外部的某个模块启动完成才能提供服务。这时候程序进程在,但是并不能对外提供服务。这种场景下使用健康检查可以有效监测应用的服务状态。
健康检查主要包含TCP协议的四层检查和HTTP协议的七层检查:
  • TCP协议健康检查通过发送SYN握手报文,检测服务器端口是否存活。
  • HTTP协议健康检查通过发送HEAD/GET请求,模拟浏览器的访问行为来检查应用服务器是否健康。监测到URL返回的状态码在200~400之间则判定健康检查成功。

如果您的应用敏感性高,高频率的健康检查可能会对正常业务访问造成影响。您可以结合业务情况,通过降低健康检查频率、增大健康检查间隔、七层检查修改为四层检查等方式,来降低对业务的影响。但为了保障业务的持续可用,不建议关闭健康检查。

创建或更新健康检查

  1. 进入部署环境配置页面
  2. 在部署环境的架构图内单击应用图例,然后在应用页面内单击健康检查页签。
  3. 开启开关启用健康检查。
  4. 设置健康检查参数。
     配置健康检查_部署环境配置_环境管理_Web应用托管服务 阿里云技术文档
    配置 说明
    健康检查类型 健康检查使用的协议类型,目前支持TCP和HTTP:
    • TCP模式的健康检查是基于网络层探测,配置应用端口来探测服务器端口是否存活。
    • HTTP模式的健康检查是通过配置URL发送HEAD/GET请求,根据URL返回的状态码判断应用服务器是否健康。
    健康检查URL 健康检查 URL 地址的格式为 http://<IP 地址>:<端口号>/路径。访问设置的URL,根据返回值来判断应用是否健康,当返回值为200~400间时表示健康检查成功。
    健康检查重试次数 若健康检查重试超过此次数则判定为健康检查失败。
    健康检查间隔(秒) 当检查失败时,下一次健康检查的间隔秒数。
    健康检查超时时间(秒) 单次接收来自健康检查的响应需要等待的时间,若超时则视为此次检查失败。
  5. 完成设置后可单击配置页面右上角的变更配置使更改生效

关闭健康检查

如果要关闭某环境的健康检查,您只能关闭HTTP协议的健康检查,不能关闭TCP协议的健康检查。

  1. 进入健康检查设置页面,关闭健康检查总开关。
  2. 单击配置页面右上角的变更配置使更改生效。