基于Codeigniter框架的SAAS的自动化监测和管理系统的后端实现

 2022-04-06 20:54:03

论文总字数:26009字

摘 要

SaaS是软件即服务的简称。这是随着互联网技术的发展和应用软件的成熟, 在21世纪开始兴起的一种完全创新的软件应用模式。在这种模式下,厂商直接将应用软件部署在自己的服务器上,客户通过互联网享受软件服务而无需对软件进行维护。目前许多公司都有自己的SaaS业务,然而若是由开发团队各自进行维护管理则效率低下,因此需要一个统一的管理手段。SaaS自动化监测及管理系统以管理SaaS服务为目标,需要实现自动监测,租户信息管理,api调试,数据统计的功能。本文以江苏矽岸信息技术有限公司的IM通讯服务为例,对SaaS的自动化监测及管理系统的后端部分以画角色用例图、架构图、流程图的方式进行了详细的需求分析以及系统设计。本文通过总结系统中的实体与属性,设计出了数据库ER图以及八张数据表。最后基于CodeIgniter开发框架、前后端分离技术,并使用nagios工具,Mysql数据库等软件,实现了SaaS服务的自动化监测及管理系统的后端开发。

关键词:SaaS,Codeigniter,自动化监测,管理系统,后端

Abstract

SaaS is short for Software as a Service. With the development of Internet technology and the maturity of application software, a completely innovative software application model has emerged in the 21st century. This is a form of providing software services over the Internet. Through this form of software service, vendors deploy application software directly on their own servers, and customers do not need to maintain the software. At present, many companies have their own SaaS business. However, if they are inefficiently managed by the development team, they need a unified management tool. The SaaS automated monitoring and management system aims to manage SaaS services and needs to implement automatic monitoring, tenant information management, API debugging, and data statistics. Taking the IM communication service of jiangsu Xian information technology co., LTD as an example, this paper makes a detailed demand analysis and system design for the back-end part of the automatic monitoring and management system of SaaS by drawing user case diagram, architecture diagram and flow chart. This paper designs a database ER diagram and eight data tables by summarizing the entities and attributes in the system.Based on CodeIgniter development framework, front-end separation technology, and using nagios tools, Mysql database and other software, the back-end of the automatic monitoring and management system of SaaS service is finally realized.

KEY WORDS: SaaS, Codeigniter, auto-monitoring, managerial system, back-end

目 录

摘 要 I

Abstract II

第一章 绪论 1

1.1 SaaS模式概念 1

1.2 SaaS行业现状 1

1.3 SaaS自动化监测及管理系统研究意义 2

1.3.1 实现租户管理 2

1.3.2 各层的运行监控 2

1.4 论文组织结构 2

第二章 框架及软件介绍 4

2.1 CodeIgniter框架 4

2.1.1 CodeIgniter框架概述 4

2.1.2 CodeIgniter框架概述 5

2.1.3 使用框架的好处 7

2.1.4 CodeIgniter框架与其他框架的对比 7

2.2 Nagios介绍 8

2.2.1 Nagios主要部件 8

2.2.2 Nagios监控形式 9

2.2.3 Nagios的安装 9

2.3 数据库 9

2.3.1 mysql数据库 9

2.3.2 phinx 9

2.4 本章小结 9

第三章 需求分析及系统设计 11

3.1 需求分析 11

3.2 前后端分离开发 14

3.3 系统架构设计 14

3.3.1 用户管理员模块 15

3.3.2 应用模块 16

3.3.3 api调试模块 16

3.3.4 订单模块 16

3.3.5 消息模块 16

3.3.6 日志模块 16

3.3.7 认证模块 16

3.3.8 数据统计模块 17

3.4 数据库设计 17

3.4.1 数据库ER图设计 17

3.4.2 数据表设计 18

3.5 本章小结 26

第四章 开发与实现 28

4.1 开发环境 28

4.2 数据库实现 28

4.3 系统功能模块实现 28

4.3.1 用户管理员模块 28

4.3.2 应用模块 30

4.3.3 api调试模块 30

4.3.4 订单模块 30

4.3.5 消息模块 31

4.3.6 日志模块 31

4.3.7 认证模块 31

4.3.8 数据统计模块 32

4.4 测试 32

4.4.1 测试用例 32

4.5 本章小结 35

第五章 总结与展望 36

5.1 项目总结 36

5.2 展望 36

参考文献 37

致 谢 38

绪论

SaaS模式概念

SaaS是Software-as-a-service(软件即服务)的简称,是一种创新的软件应用模式。传统软件形式需要客户安装客户端来使用软件提供商所提供的软件,而SaaS模式通过互联网提供软件,客户只需使用浏览器即可享受软件提供商带来的服务。在SaaS模式下软件是一种服务,而不再是一个产品,客户无需去搭建环境或者维护软件。同时SaaS模式的订购是可以定制化的,客户根据自己的需求来选择软件所包含的功能,甚至可以选择软件使用的时长或者次数。这类似于一种租用的购买关系,客户无需直接买断整个软件,有效地减少了成本。当客户的需求发生变化时,也无需重新购买新的软件,只要修改租用软件服务的范围即可,这降低了购买软件的风险。

自从出现SaaS模式的概念以后,学术界对SaaS模式的应用和技术体系的理论研究一直层出不穷。为了保持客户之间数据的隔离性,SaaS模式需要实现多租户架构。Azeez提出了一种基于SOA体系的多租户架构,这种架构使得用户在运行自己服务的同时能够运行其他的SOA构件,这形成了一个多租户应用的环境。由Stefan Aulbach提出的块折叠技术完善了多租户架构下数据库的 映射方法。此技术将逻辑表垂直分割成快,然后再折叠到不同的租户表中,根据需要进行连接。

SaaS行业现状

截至目前已有多家软件公司对SaaS进行研究并推出服务。作为全球最先推出SaaS业务模式的公司之一,Salesforce开发了在线的客户关系管理应用软件。随后他们在长期的开发与销售中确立了在线软件市场的霸主地位。Google公司是SaaS行业的领头羊,Google的软件服务遍布全球,它具有丰富的软件功能以及庞大的客户群。Google除了核心的搜索引擎、即时通讯等业务之外还推出过名为Google App Engine的在线软件开发平台。这个平台提供了在线的软件开发及运行服务,这代表Google将软件开发本身作为SaaS服务发布。国内的SaaS行业起步没多久,最早推出SaaS服务的公司名字为Xtools。这家公司与Salesforce相似,产品的重点在于在线客户关系管理系统。早期国内大部分企业的信息化程度较低,尤其是中小型企业信息化程度仅约10%。Xtools根据这一中国特色研究开发适合中小型企业的客户关系管理系统,积累了大量客户。阿里巴巴作为国内商务平台的龙头企业也已经大举进军SaaS行业。阿里巴巴在2007年成立了一家名为阿里软件的子公司,而这家公司的大部分核心业务都是SaaS服务。

剩余内容已隐藏,请支付后下载全文,论文总字数:26009字

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;