更新时间:2024-12-16 GMT+08:00

约束与限制

ServiceStage具有如下限制,下边的每条限制都适用于任何一个Region的每个租户。

限制不等于资源配额限制,而是表示ServiceStage无法向租户提供超过限制的能力,最终用户在技术选型和方案设计时需要注意这些限制。

虚机部署

应用组件采用虚机部署方式时,ServiceStage最多可以管理5000个虚机Agent,并允许其中的1500个虚机Agent不通过虚拟机环境代理直接和ServiceStage通信。

注册发现

微服务引擎专业版(Cloud Service Engine)限制请参见表1

表1 微服务引擎专业版限制

项目

限制

心跳上报

每个微服务实例最频繁每30s一次

服务发现

每个微服务实例最频繁每30s一次

微服务实例注册

每秒10个

微服务引擎专享版限制请参见表2

表2 微服务引擎专享版限制(最高规格)

项目

限制

备注

心跳上报

每个微服务实例最频繁每20s一次

总限流为2000tps

服务发现

每个微服务实例最频繁每20s一次

-

微服务实例注册

每秒1000个

-

微服务引擎专享版引擎类型说明

1.3.0或以上版本的微服务引擎专享版,不同规格均提供了对如下表所示的引擎类型的支持,您可以根据具体业务需求选择使用对应类型的微服务引擎专享版。

表3 微服务引擎专享版引擎类型说明

引擎类型

适用业务场景

可用区CPU架构

集群

集群模式部署,主机级容灾,高可用。

x86或ARM,不支持混合架构。

微服务开发框架版本要求

微服务开发框架推荐版本如下表所示。

  • 如果已经使用低版本的微服务开发框架构建应用,建议升级到推荐版本,以获取最稳定和丰富的功能体验。
  • 如果已使用Spring Cloud微服务开发框架开发了应用,推荐使用Spring Cloud Huawei接入应用。
  • Spring Cloud Huawei各分支版本与Spring Boot、Spring Cloud、Java Chassis及JDK编译版本的配套关系请参考版本配套说明
  • 如果基于开源开放和业界生态组件新开发微服务应用,可选择Spring Cloud框架。
  • 如果希望使用微服务引擎提供的开箱即用的治理能力和高性能的RPC框架,可选择Java Chassis框架。

框架

推荐版本

说明

Spring Cloud Huawei

1.10.9-2021.0.x及以上

采用Spring Cloud Huawei项目提供接入支持:

  • 适配的Spring Cloud版本为2021.0.5
  • 适配的Spring Boot版本为2.6.13

Spring Cloud微服务开发框架的版本说明请参见:https://github.com/huaweicloud/spring-cloud-huawei/releases

Java Chassis

2.7.10及以上

可以直接使用开源项目提供的软件包接入,不需要引用其他第三方软件包。

Java Chassis微服务开发框架的版本说明请参见:https://github.com/apache/servicecomb-java-chassis/releases

系统升级、改造过程中,三方软件冲突是最常见的问题。随着软件迭代速度越来越快,传统的软件兼容性管理策略已经不适应软件的发展,您可以参考三方软件版本管理策略来解决版本冲突。

微服务引擎专享版配额说明

配额是指您在微服务引擎专享版实例中可创建的资源数量限制,具体的资源配额限制如表4所示。

表4 微服务引擎资源配额限制

功能

资源

最大配额

是否支持修改配额

注意事项

微服务管理

微服务版本数量(个)

10,000

暂不支持

-

单个实例数据量(KB)

200

支持

扩大配额后,将增加微服务发现的时延。

单个微服务契约数量(个)

500

暂不支持

-

配置管理

单个配置数据量(KB)

128

暂不支持

-

单个应用级配置数量(个)

2,000

暂不支持

-

微服务治理

应用级的治理策略

1,000

暂不支持

所有的应用的治理策略总和不能超过1000条。

  • 单个治理策略包含:治理规则和业务场景。治理规则和业务场景实际会等量占用配置中心的配额。
  • 微服务版本数:微服务场景中版本用来标记微服务的迭代记录,方便对微服务的不同迭代进行管理。
  • 微服务实例数:实例是一个微服务的最小运行和部署单元,通常对应一个应用进程。同一个微服务通过部署在多个容器或虚机,可以实现多个实例同时运行。
  • 配置条目数:微服务场景中的配置是指对程序代码中某些变量的取值控制。比如,动态配置就是通过在微服务运行过程中对某些变量的取值进行动态变更。