ClearML WebApp性能优化咨询:自建AWS EC2服务器运行缓慢问题
ClearML服务器性能优化方案(针对80万+实验场景)
一、数据库层优化(核心瓶颈)
ClearML依赖MongoDB存储实验元数据、Redis做缓存,80万+实验的慢查询基本源于数据库性能不足:
- 补全MongoDB索引
执行以下命令检查现有索引:
确保mongo --eval "db.experiments.getIndexes()"experiments集合存在以下索引(根据实际查询场景补充):# 优化项目维度的实验列表加载 db.experiments.createIndex({project: 1, created: -1}) # 优化ID搜索性能 db.experiments.createIndex({id: 1}, {unique: true}) # 优化状态、类型筛选 db.experiments.createIndex({status: 1, type: 1}) - 调整MongoDB内存缓存
修改MongoDB配置文件(通常为/etc/mongod.conf),设置wiredTigerCacheSizeGB为实例内存的50%-60%(t3.xlarge建议设为8-10),避免内存不足导致磁盘换页:
重启MongoDB服务生效:storage: wiredTiger: engineConfig: cacheSizeGB: 8sudo systemctl restart mongod - MongoDB分片部署
单节点MongoDB无法支撑80万+实验的并发查询,按project字段分片,将不同项目的实验数据分散到多个分片节点,降低单节点负载。 - Redis缓存调优
确保Redis内存足够容纳高频查询缓存,修改redis.conf设置maxmemory为2-4GB,并配置maxmemory-policy allkeys-lru,避免缓存失效导致频繁回源查询MongoDB。
二、EC2实例规格调整
- 替换为计算优化型实例
t3.xlarge的通用型CPU在高负载下容易出现性能波动,建议更换为c5.xlarge/c5.2xlarge(计算优化型),这类实例的CPU性能更稳定,适合数据库和WebApp的CPU密集型操作。 - 升级内存配置
16GiB内存不足以支撑MongoDB缓存+WebApp+API服务的内存需求,建议升级到r5.2xlarge(32GiB内存)或m5.2xlarge(32GiB内存),优先保障MongoDB的缓存空间。 - 关闭CPU credit限制
如果继续使用t3系列实例,开启CPU无限模式,避免CPU credits耗尽后降速,可通过AWS控制台或命令行修改实例属性:aws ec2 modify-instance-attribute --instance-id <实例ID> --cpu-options '{"CoreCount": 4, "ThreadsPerCore": 2, "CpuCredits": "unlimited"}'
三、存储层性能升级
- 提升EBS卷IOPS和吞吐量
当前gp3卷的3000 IOPS/125吞吐量无法满足MongoDB的随机读写需求,将gp3卷的IOPS提升至6000,吞吐量提升至250(AWS支持在线调整),或直接更换为io2/io2 Block Express卷,提供更高的IOPS和更低的延迟。 - 开启EBS优化
确保EC2实例已开启EBS优化(默认部分实例类型已开启),避免网络带宽成为存储性能瓶颈。
四、ClearML自身配置调优
- 开启WebApp分页加载
在ClearML WebApp设置中强制开启实验列表分页,调整每页显示数量为50-100条,避免一次性加载全量实验数据。 - 禁用非必要实时功能
关闭实验状态自动刷新、实时metrics监控等非核心功能,减少后台API请求频率。 - 清理/归档旧数据
- 删除已废弃的实验、模型、日志,减少数据库数据量;
- 使用
clearml-data工具将旧实验的artifacts归档到S3,仅保留数据库中的元数据,并标记为归档状态,WebApp默认不加载归档数据。
五、监控与瓶颈定位
- 通过AWS CloudWatch监控EC2的CPU使用率、内存使用率、磁盘IOPS、磁盘吞吐量,定位性能瓶颈;
- 使用MongoDB的
explain()分析慢查询:
查看查询是否命中索引、耗时分布,针对性优化;db.experiments.find({project: "<项目ID>"}).explain("executionStats") - 查看ClearML WebApp和API服务器的日志(默认路径
/var/log/clearml/),排查超时请求或错误信息。
内容的提问来源于stack exchange,提问作者hilel14
相关产品推荐
相关产品推荐

