欧洲时报本篇文章1696字,读完约4分钟
阿里云国际站经销商,主营阿里云,腾讯云,华为云,亚马逊aws,谷歌云gcp,微软云az,免费开户,代充值优惠大,联系客服飞机@jkkddd
准备工作
配置应用健康检查:确保应用在弹性伸缩过程中的整体可用性,仅在启动、运行并且准备完成时才接收流量。具体操作,请参见设置健康检查。
配置应用生命周期管理:确保缩容时按照预期实现应用优雅下线,配置停止前处理(PreStop设置)。具体操作,请参见设置应用生命周期管理。
采用指数重试机制:为避免因弹性不及时、应用启动不及时或应用没有优雅上下线导致服务调用异常,采用Java指数重试机制进行服务调用。
优化应用启动速度。
软件包优化:优化应用启动时间,降低因类加载、缓存等外部因素对应用启动时长造成的影响。
镜像优化:精简镜像大小,减少创建实例时镜像拉取耗时,可以有的放矢地借助开源工具分析并精简镜像层信息。
Java应用启动优化:在SAE上创建应用时,选择Dragonwell 11环境能够开启应用加速功能。
配置弹性规则
配置弹性伸缩指标
SAE支持基础监控、应用监控多指标组合配置,您可以根据当前应用的属性(CPU敏感、内存敏感或IO敏感)灵活配置。
您可以查看基础监控和应用监控对应指标的历史数据( 例如过去6小时、12小时、1天或7天峰值,P95或P99数值)并预估指标目标值,借助PTS等压测工具进行压测,了解应用可以应对的并发请求数量、需要的CPU和内存数量,以及高负载状态下的应用响应方式,以评估应用容量峰值大小。
在配置弹性伸缩策略时,您需要考虑以下因素:
权衡可用性与成本,配置指标目标值。示例如下:
可用性优化策略:配置指标值为40%。
可用性成本平衡策略:配置指标值为50%。
成本优化策略:配置指标值为70%。
考虑梳理上下游、中间件和DB等相关依赖性,并配置对应的弹性规则或限流降级手段,以确保扩容时全链路的可用性。
弹性规则配置完成后,您可以通过监控并调整弹性规则使容量接近应用实际负载。关于查看监控的具体步骤,请参见基础监控。
配置内存指标
Java应用运行时优化是通过释放物理内存,增强内存指标与业务关联性。借助Dragonwell运行时的环境,通过增加JVM参数开启ElasticHeap能力,支持Java堆内存的动态弹性伸缩,从而节约了Java应用在运行时实际使用的物理内存。关于ElasticHeap的更多信息,请参见G1ElasticHeap。
推荐配置为Dragonwell+ElasticHeap Periodic uncommit模式 (自动模式)。具体操作,请参见操作步骤和设置启动命令。
Java环境:在配置JAR包区域,从Java环境下拉列表中,选择Dragonwell类型的配置项
配置实例数
最小实例数配置
确认最小实例数≥2,配置多可用区vSwitch。避免因底层节点异常导致实例驱逐或可用区无可用实例,应用停止工作。
最大实例数配置
确认最大实例数≤可用区IP数。避免因配置的IP数超出限制,应用无法新增实例。
您可以在基本信息页面的应用信息区域查看当前应用的可用IP数。如果可用IP较少,请替换或新增vSwitch。
观测弹性伸缩过程
弹性达到最大值
您可以在应用概览页页面查看当前开启弹性伸缩配置的应用,并监控当前实例数已经到达峰值的应用,对其弹性伸缩配置重新进行评估。
运维弹性伸缩
查看应用事件
您可以在目标应用的应用事件页面,观测SAE弹性生效行为,包括查看弹性伸缩时间和动作,以此来衡量弹性伸缩策略的有效性并按需调整。更多信息,请参见查看应用事件。
查看应用实例监控图
您可以在目标应用的基本信息页面的基本信息页签,观测应用实例趋势图,包括7天内的CPU使用率、内存使用率和TCP活跃连接数、服务请求量和平均响应时间等监控指标。更多信息,请参见查看应用实例监控(邀测)。
上一篇:没有了