论文部分内容阅读
软件是对现实世界中客观事物的一种反应,为了适应不断变化的现实世界中存在的实际问题,软件需要不断的更新升级。动态更新是指软件在执行期间进行的更新,在更新期间软件不会暂时失效,持续可用。为了使软件动态更新期间,服务器无需停机重启,结合目前流行的SaaS(Software As A Service)也就是软件即服务思想,本文提出了种基于多版本服务切换的在线软件动态更新方法。将Internet上提供的一个整体的服务作为一个软件实体,将其各个具体功能作为独立的服务级的软件模块,在进行业务更新时对单独的功能模块进行单独更新,对整个软件实体的对外服务没有影响,如果需要新增加功能,也只需要将新的功能模块按照新工程的模式进行部署和发布,在发布服务的平台上对其进行相应的参数配置即可融入软件整体的运行及对外进行服务的提供。同时为了软件的坚固性,本文在软件更新的过程中加入的容错的思想,实时监控预定的日志文件,如果发现更新后功能模块无法正常工作,提供回滚机制,保证软件服务的连续性和稳定性。本文首先对软件动态更新的相关理论和背景进行了介绍和分析,然后结合SaaS软件服务的思想提出了一种基于多版本服务切换的软件动态更新的设计与实现方案,并在理论指导下对更新系统进行了需求分析,概要设计和系统的详细设计及实现,最后设计了基于系统发布和版本控制的项目管理系统,对更新系统的功能和性能进行了有效性验证。