赛尔校园公共服务平台 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
赛尔校园公共服务平台 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. Serverless应用引擎(新版)
  4. 操作指南
  5. 应用部署
  6. 开启微服务治理功能

开启微服务治理功能

  • 应用部署
  • 发布于 2025-04-17
  • 0 次阅读
文档编辑
文档编辑

SAE深度集成了MSE服务的微服务治理功能,通过此功能,可以更高效的管理您的应用。本文介绍如何在不同场景下启用微服务治理功能并实现无损上下线配置。

功能介绍

微服务治理功能介绍

Serverless 应用引擎 SAE(Serverless App Engine)通过无缝集成微服务引擎 MSE(Microservices Engine),提供了强大的微服务治理能力。它不仅支持服务发现和配置管理,还实现了无损上下线、流量治理、系统防护消息灰度、全链路追踪、智能熔断、降级策略、同可用区优先等功能,从而显著提升服务响应速度与稳定性,同时简化架构运维。基于这些能力,MSE能够确保您的微服务应用高效、稳定地运行。

无损上下线功能介绍

本文只介绍无损上下线功能,如果您想了解并配置其他微服务治理功能,请参见微服务治理。

  • 无损上线

    对于任何一个线上应用来说,发布、扩容、缩容、重启等操作不可避免。在应用启动各阶段,无损上线能够提供相应的保护能力。微服务的Provider服务只要注册到注册中心即可被Consumer调用,但此时,Provider可能还需要进一步的初始化,例如数据库连接池的初始化等。因此,对于流量比较大的微服务应用,推荐开启无损上线功能。

  • 无损下线

    线上应用在服务更新部署过程中,需要尽量保证客户端无感知,即从应用停止到重启恢复服务的阶段不能影响正常的业务请求。由于微服务应用自身调用特点,在高并发下,服务提供端应用实例的直接下线,会导致服务消费端应用实例无法实时感知下游实例的状态,因而出现继续将请求转发到已下线的实例,导致请求报错,进而造成流量损失。因此,在应用执行部署、停止、回滚、缩容和重置时,需要通过无损下线配置来保证应用正常关闭。

条件说明

  • 本功能仅适用于Java应用。

  • 需要开通MSE微服务治理专业版。

    重要

    在SAE测使用MSE服务的微服务治理功能时,MSE会产生单独的费用。

操作入口

  1. 操作入口在不同场景下有差异:

    创建应用

    1. 登录SAE控制台,在左侧导航栏选择应用管理 > 应用列表,然后选择目标地域和目标命名空间,最后单击创建应用。

    2. 在应用基本信息向导页面进行配置后,单击下一步:高级设置。

    对正在运行的应用进行变更

    警告

    重新部署应用后,该应用将会被重启。为避免业务中断等不可预知的错误,请在业务低峰期执行部署操作。

    1. 登录SAE控制台,在左侧导航栏选择应用管理 > 应用列表,然后选择目标地域和目标命名空间,最后单击目标应用名称。

    2. 在目标应用的基础信息页面,单击部署应用。

    对已停止的应用进行变更

    1. 登录SAE控制台,在左侧导航栏选择应用管理 > 应用列表,然后选择目标地域和目标命名空间,最后单击目标应用名称。

    2. 在目标应用的基础信息页面,单击修改应用配置。

  2. 找到并展开微服务治理区域,按以下步骤进行配置。

开启微服务治理功能并配置无损上下线

开启微服务治理功能

在微服务治理区域,打开微服务治理功能。

lAFIjzs1MD

重要

微服务治理功能开启后,系统会自动向应用中的每个实例中注入一个内置的Agent,此Agent大约占用0.2 Core和200MB的资源,请您提前做好资源规划。

配置无损上下线功能

配置无损上线

开启微服务治理功能后,可在微服务治理区域配置无损上线功能。

  1. 开启无损上线功能。

    yUTjb6j8FC

  2. 配置小流量预热时长和延迟注册时长。

    配置项

    说明

    小流量预热时长(秒)

    流量预热机制是为了确保新节点加入时,初期分配给该节点的微服务调用流量维持在较低水平,并随着时间平缓增加。这样设计是为了缓解Java应用冷启动期间处理能力较弱的问题,防止系统整体响应时间(RT)显著上升。预热过程将在预设的时长结束后自动终止,之后该节点将正常承载全量流量。

    延迟注册

    注册的延迟时间可以将原本服务注册时间往后推迟指定时长。如果您的应用在启动后有耗时较长的异步资源加载过程,可以通过该参数调节新上线节点的服务注册行为,以推迟其收到调用请求的时机。

    重要

    延迟注册时长不为0时,必须在应用部署中配置readiness(就绪检查),访问路径设置为/health,且端口设置为54199,以保证服务完全注册到注册中心后,Kubernetes才认定该服务为就绪状态。这一措施能有效避免因服务消费者找不到可用服务提供者而导致的入流量骤降问题。至关重要的是,切忌将LivenessProbe(存活探针)设置为同一路径/health,因为这样做可能引发应用不断重启的死循环状况。

    cHBHTU4gkV

配置无损下线

  • 当开启微服务治理功能后,无损下线功能是默认生效的。

  • 无损下线会在服务发布、缩容、重启等场景下,尽可能保障下线节点的流量排空,让在途请求执行完毕,不会产生因服务下线导致的调用出错。

相关文档

  • 应用部署

  • 微服务治理

相关文章

通过镜像部署应用 2025-04-17 11:01

您可以将应用制成镜像并部署到SAE。镜像可来源于ACR镜像仓库、公开访问的镜像仓库或自建的私有镜像仓库。 尽管您可以直接部署公共镜像仓库(例如Docker Hub、Harbor、GitHub Container Registry)中提供的基础镜像,但通常情况下这些镜像无法完全满足业务需求,您需要结合

通过代码包部署应用 2025-04-17 11:00

完成本地应用开发后,您可以将代码按照SAE要求的格式打包后,上传到SAE进行部署。针对不同语言开发的应用,请参见: Java应用 PHP应用 Python应用

设置启动命令 2025-04-17 11:00

通过SAE控制台使用容器镜像或代码包方式部署应用时,SAE会根据预设的启动参数来启动容器。如果需要在容器启动执行特殊配置(例如Nginx)或不采用预设的启动参数,您可以通过SAE自定义容器的启动命令,以实现特殊配置或覆盖镜像的启动默认参数。

设置环境变量 2025-04-17 11:00

应用在系统中运行需要配置特定的环境变量,如Java应用程序在配置Java_home及其Path后,其相关命令才可以被执行。本文介绍如何在SAE控制台上为应用设置环境变量,包括自定义环境变量和从命名空间配置项、保密字典中引入的环境变量。

服务注册与发现 2025-04-17 11:00

您可以根据所需的技术栈,选用微服务注册中心(例如Nacos、Zookeeper等)实现服务注册与发现,或者基于K8s Service Name实现服务间调用: 基于Nacos等注册中心实现服务注册与发现

设置Hosts绑定 2025-04-17 11:00

SAE支持应用级别的实例,通过Hosts绑定对主机名进行解析,方便应用实例通过主机名进行访问。本文介绍如何在SAE控制台设置Hosts绑定。

目录
Copyright © 2025 your company All Rights Reserved. Powered by 赛尔网络.
京ICP备14022346号-15
gongan beian 京公网安备11010802041014号