1Panel
1Panel copied to clipboard
希望能优化 `/v1/apps/installed/check` 和 `/v1/apps/installed/search` 这两个接口的响应速度
联系方式
No response
1Panel 版本
v1.10.7-lts
问题描述
在多个虚拟机里面安装1panel测试发现:
- 系统里docker容器越多(多于30个),
/v1/apps/installed/check,/v1/apps/installed/search这两个接口就慢, 不总是很慢, 有时几百毫秒,有时几秒, 慢的程度基本和docker容器数量成正比 - 系统里docker容器少(少于10个),
/v1/apps/installed/check,/v1/apps/installed/search这两个接口就很快, 总是很快, 200毫秒以内 - 以上测试来自同一物理机里的多个虚拟机测试, 虚拟机配置相同, 所以能排除网络和硬件配置性能的问题
重现步骤
不是用1panel安装多个docker容器
期待的正确结果
希望能优化这两个接口的响应速度
相关日志输出
No response
附加信息
No response
我猜测是网络并发响应原因,因为[Search、Check]是向服务器请求[AppList、UpdateList],我添加了本地第三方仓库,一次[Search]要[10s+]。
你提到这个,其实我一直想提一个[FEATURE],我看大家都没提过: [FEATURE]应用商店页面,默认展示[已安装]标签,标签顺序改为[已安装]、[可升级]、[全部(市场)] 这样修改之后,不必每次打开[应用商店]时必须先等待[应用商店服务器有响应之后才能操作],如下图:
我没有添加第三方库, 而且我抓包了, Search、Check并没有向外部请求
逻辑好像是下面这样: 1、先同步到本地,后续做Sync和Update的时候向服务器做版本号请求及对比 2、同步本地之后是查数据库
我的这个很慢原因是: 1、我用了第三方库,大概几百个App 2、MySQL用的是Docker部署的
/v1/apps/installed/search该接口24小时检测结果, 时快时慢,没发现规律
同一个物理下两个配置相同的虚拟机对/v1/apps/installed/search的监控, 其中192.168.0.192有54个容器, 192.168.0.104有3个容器
同一个物理下三个配置相同的虚拟机对/v1/apps/installed/search的监控, 容器数量不同对其响应时间的影响
🙏感谢反馈,应该是调用 docker SDK 获取容器状态这个方法导致的,后续版本考虑优化成两个接口
好的谢谢
v1.10.10-lts 版本已发布。