论文部分内容阅读
在过去的几年里,云计算已经发展成为IT基础设施中的主导计算模型。云模式的激增已经创造了将传统服务和应用程序云端化的趋势。在应用开发者日益增多的今天,软件开发环境云端化也得到了大量的需求。传统的软件开发通常利用本地集成开发环境进行,包括安装代码编辑器、编译器、程序调试器以及性能分析器和依赖库等。不同的应用程序需要不同的开发环境,一些开发环境部署起来十分复杂耗时,而且受到地点的限制,给开发者用户造成了很大的麻烦。如果将开发环境全部集成在云端,用户只要拥有浏览器和网络就可以进行开发,而且不受时间、地点的限制,可以极大方便开发人员,提高工作效率。本文以如何能够实现一个云端的开发平台为主要研究目标,从开发者角度出发,对云端开发环境、开发流程、应用部署等方面技术进行分析,结合云计算技术、Web技术和对开源软件的改进与整合设计实现了一个云开发平台。本文根据云开发平台的核心功能将其划分为五个模块:WebIDE集成开发环境模块、代码版本控制模块、虚拟化模块、工程发布模块、协同开发模块。具体完成了以下工作:(1)设计实现了基于Web的云端集成开发环境。包括了文件管理器,和基于Web的代码编辑器,通过对其改进增加了一些代码编辑功能后植入到开发平台中,随后利用Webssh技术提供给用户代码调试终端窗口。(2)对分布式版本控制工具进行二次开发,实现对代码版本控制库的可视化操作和统计,使用户方便的对代码进行存储、回滚和分析;同时对用户提交代码和创建分支等操作增加权限设置和代码审核机制,保证团队代码版本库的安全性和整洁性。(3)对虚拟化模块进行开发和管理,对权重最少连接数算法进行改进,实现对物理资源的监控和对虚拟机的合理分配。(4)通过对文件传输和反向代理技术的研究,完成应用程序云端发布的功能。(5)基于协同开发理念,采用Web实时通信技术,实现了协同共享画板、Web视频聊天功能,加强团队内开发者间的交流,快速进行协同开发。通过以上任务的完成和整合就构建起了一个基于Web的云开发平台,最后对云开发平台进行功能和性能两方面测试,测试结果证明该云开平台能够满足设计要求且拥有良好的用户体验。