问题描述:
最近公司计划开发一套云手机管理系统,用于远程操控和管理大量虚拟手机设备,主要面向企业客户提供自动化测试、数据采集等服务。作为项目负责人,我在方案设计阶段遇到了几个棘手的问题,希望能得到有实际经验的朋友指点。
具体需求与困惑:
- 高并发控制:系统需要同时支持上千台云手机的实时操作(如批量安装应用、执行脚本),但目前的原型在超过200台并发时延迟明显,尝试过Kubernetes容器化部署和负载均衡,但性能提升有限。
- 设备状态同步:如何高效监控每台云手机的运行状态(CPU、网络、任务进度)?现有方案(轮询数据库+WebSocket)在设备量增大后导致数据库压力剧增。
- 安全性:客户要求隔离不同企业的数据,目前通过独立虚拟机实现,但成本过高,是否有更轻量级的方案(比如容器隔离或沙箱技术)?
已尝试的解决途径:- 测试了Apache Kafka做任务队列,但对设备状态的实时性支持不够理想。
- 参考过STF(开源手机管理平台)的架构,但其扩展性不符合我们的业务规模。
希望得到的建议:- 有没有成熟的架构设计模式或开源方案可借鉴?
- 针对高并发和资源隔离,云原生技术栈(如K8s、Service Mesh)是否有最佳实践?
- 实际项目中哪些性能指标最需要优先优化?
团队技术栈以Go和Java为主,预算中等,求业内大佬分享经验或踩坑教训,感谢!
(补充说明:问题中提到的“云手机”是指基于ARM虚拟化的云端手机实例,非物理设备。)
查看更多