基于SaaS的企业作业调度系统的研究与实现

基于SaaS的企业作业调度系统的研究与实现

论文摘要

“作业”是指一个要在计算机上执行的任务,通常对应于一个可执行的程序,例如exe、jar、bat等。作业通常没有界面,一般都是放在后台运行并且不需要与用户交互,但需要人工来启动。现代企业应用中,通常会面对大量的作业。如果全部用人工来启动,无疑是对资源的浪费。而且随着作业数目和业务复杂性的提升,以及不同作业对执行时间、条件、场合和执行频率的不同需求,有时手工根本无法操作。同时,由于作业是在后台运行,对作业的监控也是一个难题。大批量的作业执行,必须保证其并发能力;重要敏感的作业,必须保证系统可用性。所有这些问题及要求都表明:要更好的管理、执行和监控作业,需要一个友好的企业作业调度系统。本课题基于IBM中国研究院Service Building组的“农村扶贫小额信贷银行系统(CS-Bank)”。CS-Bank系统中有大量的作业需要执行,比如“每天结算利息”,“每月生成财务分析报表”等。本课题的目的是以CS-Bank的作业调度任务为验证基础,设计并实现一套能适用于不同场合的,基于SaaS(Software as a Service)的企业作业调度系统。本文首先对SaaS模式以及系统中要用到的相关技术,如J2EE、Struts、Ibatis、Ajax等进行了分析,为设计和实现调度系统做了技术准备。然后,根据对作业调度不同场景的分析,提出了能适用于不同场合的作业调度模型;通过对线程、线程池、集群、负载均衡算法的研究,给出了作业调度系统的并发方案,提出了“下次最小负载”算法,并通过实验证明了并发方案的可行性;通过对SaaS不同数据模型的分析,选定了“共享数据库,独立架构”的SaaS数据模型方案。接着,按照软件工程的标准流程,对基于SaaS的企业作业调度系统进行了需求分析;给出了系统体系架构与数据库设计方案;对系统的各个功能模块进行了详细设计并基于J2EE实现了该系统。最后,本文在CS-Bank中对该系统进行了验证,并对该系统更广泛的应用场景进行了探索。

论文目录

  • 摘要
  • ABSTRACT
  • 1 绪论
  • 1.1 作业调度技术的内涵及重要性
  • 1.2 国内外研究现状及现存问题
  • 1.3 课题研究背景、意义与内容
  • 1.3.1 课题研究背景
  • 1.3.2 课题研究意义
  • 1.3.3 课题研究内容
  • 1.4 本章小结
  • 2 相关技术分析
  • 2.1 SaaS 模式
  • 2.1.1 SaaS 概述
  • 2.1.2 SaaS 的优势
  • 2.2 J2EE 应用标准
  • 2.3 Struts 与 Ibatis 框架
  • 2.3.1 Struts 框架
  • 2.3.2 Ibatis 框架
  • 2.4 Ajax
  • 2.4.1 Ajax 介绍
  • 2.4.2 Ajax 框架
  • 2.5 本章小结
  • 3 基于 SaaS 的企业作业调度系统关键技术研究
  • 3.1 作业调度模型研究
  • 3.1.1 作业调度基本元素
  • 3.1.2 作业调度模型
  • 3.1.3 工作流连接及参数传递
  • 3.1.4 解析工作流中的条件
  • 3.2 作业并发与可用性研究
  • 3.2.1 并发与线程池
  • 3.2.2 可用性与集群
  • 3.2.3 负载均衡算法
  • 3.2.4 下次最小负载算法
  • 3.2.5 并发可行性与实验
  • 3.3 SaaS 多用户数据模型研究
  • 3.3.1 数据模型设计原则
  • 3.3.2 SaaS 多用户数据模型方案
  • 3.4 本章小结
  • 4 基于 SaaS 的企业作业调度系统的设计与实现
  • 4.1 系统描述与需求分析
  • 4.1.1 系统描述
  • 4.1.2 系统参与者
  • 4.1.3 功能需求分析
  • 4.1.4 非功能需求分析
  • 4.2 系统体系架构及数据库设计
  • 4.2.1 系统体系架构
  • 4.2.2 数据库设计
  • 4.3 作业调度系统后台的设计与实现
  • 4.3.1 集群管理器
  • 4.3.2 作业调度器
  • 4.4 作业调度系统前台的设计与实现
  • 4.4.1 系统个性化
  • 4.4.2 账户管理
  • 4.4.3 用户管理
  • 4.4.4 作业调度管理
  • 4.4.5 监控及日志管理
  • 4.5 与 SaaS 模式结合的设计与实现
  • 4.5.1 作业调度系统后台与SaaS 结合
  • 4.5.2 作业调度系统前台与SaaS 结合
  • 4.6 本章小结
  • 5 基于 SaaS 的企业作业调度系统的应用
  • 5.1 在“农村扶贫小额信贷银行系统”中的应用
  • 5.2 其它应用场景探索
  • 5.3 本章小结
  • 6 结论与展望
  • 6.1 结论
  • 6.2 工作展望
  • 致谢
  • 参考文献
  • 附录
  • A 作者在攻读硕士学位期间发表的论文
  • B 作者在攻读硕士学位期间参与的科研项目
  • C 作者在攻读硕士学位期间获奖情况
  • 相关论文文献

    标签:;  ;  ;  ;  

    基于SaaS的企业作业调度系统的研究与实现
    下载Doc文档

    猜你喜欢