一种信息化软件租赁平台及其实现方法

文档序号:10555635阅读:238来源:国知局
一种信息化软件租赁平台及其实现方法
【专利摘要】本发明公开了一种信息化软件租赁平台及其实现方法,该软件租赁平台包括:可定制的Web层,提供多租户进行定制Web界面,实现多个租户共用一个实例;中间件,在负载平衡的服务器群上为不同客户提供主机服务,运行相同的实例,提供统一的业务管理层;共享的资源池,通过虚拟化整合与自动化,应用系统共享基础架构资源池,在外部访问压力增加时,系统自动扩张获取计算资源,压力减小时自动释放资源,本发明提供了一种高效的多租户资源共享和隔离机制从而降低分摊在单个租户的平均基础设施和管理成本。
【专利说明】
一种信息化软件租赁平台及其实现方法
技术领域
[0001]本发明涉及软件租赁技术领域,特别是涉及一种小微企业的信息化软件租赁平台及其实现方法。
【背景技术】
[0002]软件在线租赁服务是近几年在Web2.0概念中衍生出的新理念,由于软件租赁服务属于新兴行业,国内外成熟的应用并不是很多。国外以salesforce和微软的off ice live为代表;国内则是以阿里平台、金蝶的友商网、神码在线等为代表。
[0003]Salesforce提供的是一个在线开发平台,作为一个中间媒介面向ISV开发商和软件使用终端客户,ISV开发商可直接在Salesforce在线平台上开发个性化的产品给相对应终端客户。
[0004]阿里巴巴旗下的阿里平台打造的是一个软件超市,已于2007年底正式推出。阿里平台则借阿里巴巴或淘宝网的资源发展成为阿里软件平台的终端客户,同时提供接口给国内广大的ISV来集成各种软件应用。目前阿里平台具有多元化的软件产品。
[0005]友商网是软件巨头金蝶打造的一个软件租赁服务软件平台,已经于在2007年下半年正式推出。友商网的优势在于其多年的品牌实力以及其成熟的软件市场。但是由于友商网产品单一,仅限于企业财务软件与进销存的应用。
[0006]然而,上述的软件租赁服务平台均没有针对多租户的小微企业,不适合多租户的小微企业,因此,本发明拟提供基于大规模多租户技术小微企业信息化软件租赁平台,旨在帮助小微企业改变传统落后的管理模式,解决小微企业开展信息化建设方面存在意识不够、人才缺乏、资金不足等实际困难和问题,加快促进企业信息化改造进程,降低小微企业信息化的门槛。

【发明内容】

[0007]为克服上述现有技术存在的不足,本发明之目的在于提供一种信息化软件租赁平台及其实现方法,其一种高效的多租户资源共享和隔离机制从而降低分摊在单个租户的平均基础设施和管理成本,提供了具备可扩展性的基础架构从而支持大数量的租户和应用,提供了安全的体系架构设计方法及相应编程模型以支持租户间数据的安全隔离,提供了灵活的体系结构从而满足不同租户异构的服务质量需求,提供了对复杂、异构的底层系统、应用程序以及租户的统一监控和管理。
[0008]为达上述及其它目的,本发明提出一种信息化软件租赁平台,包括:
[0009 ]可定制的Web层,提供多租户进行定制Web界面,实现多个租户共用一个实例;
[0010]中间件,在负载平衡的服务器群上为不同客户提供主机服务,运行相同的实例,提供统一的业务管理层;
[0011]共享的资源池,通过虚拟化整合与自动化,应用系统共享基础架构资源池,在外部访问压力增加时,系统自动扩张获取计算资源,压力减小时自动释放资源。
[0012]进一步地,该中间件包括Web应用服务器、过程服务器、门户服务器、数据库服务器、管理服务器。
[0013]进一步地,各租户共享同一个数据库、同一个数据架构,在数据库表中通过TenantID区分租户的数据。
[0014]进一步地,在数据库表中增加多租户隔离列,增加一列TenantID,如果应用支持多次订阅,还要增加一列Isolat1n ID。
[0015]进一步地,在OR-Mapping配置文件中使用Filter,以便在进行数据查询时,会根据Tenant ID自动查询出该租户所拥有的数据。
[0016]进一步地,在HibernateUtiI类中通过ThreadLocaI存放和获取HibernateSess1n,并将用户登录信息中的Tenant ID设置为tenantFiIterParam的参数值。
[0017]为达到上述目的,本发明还提供一种信息化软件租赁平台的实现方法,包括如下步骤:
[0018]步骤一,对建立的软件租赁平台进行配置;
[0019]步骤二,将新的软件应用服务导入到软件租赁平台;
[0020]步骤三,注册新的软件应用服务到软件租赁平台。
[0021]进一步地,步骤一包括:
[0022]将MTClientMork.jar文件添加到web-1nf/lib;
[0023]修改Login 页面,添加 tenantld;
[0024]添加filter,并且配置到web.xml;
[0025]实现SPI,可以将默认实现拷贝到包中;
[0026]添加MTConfit.properties 到classpath 下,修改 off eringName 项为注册时候的应用的名称。
[0027]进一步地,步骤二包括:
[0028]打开war包,删除MTClientMock.jar,添加MTAccessClient.jar到WEB-1NF/1 ib;
[0029]登录WAS管理控制台,安装新应用;
[0030]确定上传WAR包,填写上下文根。
[0031]进一步地,步骤三包括:
[0032]登录到租赁平台的管理控制台AdminConsole ;
[0033 ]依次注册物理机器,数据库服务器,数据库,并激活;
[0034]添加新的应用,上传配置文件,激活应用;
[0035]创建存储点,选择存储点的数据库,修改链接数据库的用户名和密码;
[0036]创建租户,订阅应用下的存储点。
[0037]与现有技术相比,本发明提供了一种高效的多租户资源共享和隔离机制从而降低分摊在单个租户的平均基础设施和管理成本;提供了具备可扩展性的基础架构从而支持大数量的租户和应用;提供了安全的体系架构设计方法及相应编程模型以支持租户间数据的安全隔离;提供了灵活的体系结构从而满足不同租户异构的服务质量需求;提供了对复杂、异构的底层系统、应用程序以及租户的统一监控和管理。
【附图说明】
[0038]图1为本发明一种信息化软件租赁平台的总体逻辑架构图;
[0039]图2为本发明较佳实施例之小微企业信息化软件租赁平台的模型结构图;
[0040]图3为本发明具体实施例中三层体系结构示意图;
[0041 ]图4为本发明与现有技术的软件服务成熟度模型示意图;
[0042]图5为本发明一种信息化软件租赁平台的实现方法的步骤流程图。
【具体实施方式】
[0043]以下通过特定的具体实例并结合【附图说明】本发明的实施方式,本领域技术人员可由本说明书所揭示的内容轻易地了解本发明的其它优点与功效。本发明亦可通过其它不同的具体实例加以施行或应用,本说明书中的各项细节亦可基于不同观点与应用,在不背离本发明的精神下进行各种修饰与变更。
[0044]图1为本发明一种信息化软件租赁平台的总体逻辑架构图,图2为本发明较佳实施例之小微企业信息化软件租赁平台的模型结构图。如图1及图2所示,本发明之信息化软件租赁平台,是一个典型的多租户(Multi Tenancy)平台,多租户模型是一种软件架构,其定义是:在一台服务器上运行单个应用实例,它为多个租户提供服务,本发明之信息化软件租赁平台,包括:可定制的Web层10、共享的中间件20以及共享的资源池30。
[0045]其中,可定制的Web层10,提供多租户进行定制Web界面,实现多个租户共用一个实例。系统运行后,由用户引导程序决定是执行界面信息的更新还是进入默认界面。若执行界面信息的更新,则允许租户通过设置个性化的屏幕项,确定租户的界面定制信息,并通过在应用编程(IAP)功能保存所接收的信息,然后通过本地读取新的界面定制信息建立链表网络;若进入默认界面,则直接从本地读取旧的界面定制信息建立链表网络。应用程序实现的功能包括按键的输入、界面的显示及与控制系统的通信。
[0046]中间件20,提供统一的业务管理层,用来处理用户的定制、扩展性和多租户的效率问题,包括Web应用服务器、过程服务器、门户服务器、数据库服务器、管理服务器。软件租赁平台集成ERP(企业资源计划)、进销存、财务记帐、CRM客户跟单、仓库管理等标准化应用,满足大部分中小企业采购销售、生产制造、财务保税等等信息自动化管理需求。
[0047]共享的资源池30,因为在同一个架构承载所有应用,用户也可以轻松地定制个性化的业务功能点,新业务能够实现快速部署、业务快速变更以及自动适应业务变化,计算资源则随需应变、动态平衡。通过虚拟化整合与自动化,应用系统共享基础架构资源池,在外部访问压力增加时,系统自动扩张获取计算资源,压力减小时自动释放资源
[0048]在本发明较佳实施例之小微企业信息化软件租赁平台中,多个租户共用一个实例(特定应用软件),平台中有不同的应用实例可供租赁,各个租户的数据既有隔离又有共享,通过不同的机制将不同租户的数据隔离,从而保证了租户数据的保密性。
[0049]各租户共享同一个Database(数据库)、同一个Schema(数据架构),但在表中通过Tenant ID区分租户的数据。即在数据库表中增加多租户隔离列,增加一列Tenant ID(在实体对象和数据映射文件中也要包含这一列),如果应用支持多次订阅,还要增加一列Isolat1n ID。在这种情况下,所有租户共享数据表存放数据,不同租户的数据通过TenantID以判定数据是属于哪个租户的。在进行数据查询时,会根据Tenant ID自动查询出该租户所拥有的数据。
[0050]为了使用户在数据操作过程中感觉如同独占一个软件系统,察觉不到多租户平台的存在,本发明在OR-Mapping配置文件中使用了Filter,以便在进行数据查询时,会根据Tenant ID自动查询出该租户所拥有的数据。同时为了增强系统的透明性,本发明在HibernateUtiI类中通过ThreadLocal存放和获取Hibernate Sess1n,并将用户登录信息中的Tenant ID设置为tenantFiIterParam的参数值。这样租户在登陆软件租赁平台启动一个Sess1n后,只要这个Sess1n没有退出,Filter会在读取数据时忽略掉Tenant ID,但在租户进行数据插入的时,系统会自动在数据中添加租户的Tenant ID。
[0051]为实现本发明,在本发明中,访问数据库使用大规模多租户技术扩展的数据访问类包,纯JDBC开发,基于Spring+iBatis plug-1n框架。本发明采用通过数据源进行数据库访问的方式,SQL语句必须显示的指定Column名字,在本发明中,相应地,函数和存储程序必须含有Tenant ID参数,并且在SQL语句中也应该包括Tenant ID。
[0052]在本发明具体实施例中,小微企业信息化软件租赁平台的设计和开发采用国际上先进的客户端一一应用服务器一一数据库服务器三层体系结构(如图3所示),将浏览器作为客户机的主要工具,来访问本发明系统服务器端的资源,包括数据库服务器。这里的浏览器是具有个性化自适应力和Internet/Intranet资源定位与管理能力的通用前端,且可实现对数据库的无缝连接和与访问,同时与服务器相配合,来提供完整的访问控制和保密。应用服务器兼有Internet相关功能和防火墙与代理功能,集成对数据库的借口,既支持客户端的信息创建与发布,又支持信息的发布、查询,并与浏览器相呼应以实现完整的安全管理和防护体系。
[0053]可见,传统的软件服务提供商(ASP)只是针对每个客户的需求定制不同的应用服务,但是没有将所有的客户放在一起考虑。而在本发明之软件租赁平台(SLP)模式下,用户和Web服务器上的应用之间增加了一个中间层,用来处理用户的定制、扩展性和多租户的效率等问题。图4的软件服务成熟度模型可以很好地显示本发明(SLP)在架构上与传统的软件服务提供商的ASP模式的不同。
[0054]成熟度模型级别I是ASP模式的应用架构。从技术角度来说,每个客户使用一个Web站点、一个数据库或者虚拟目录。每个客户都可以运行提供商为自己定制的实例,完全独立于主机上运行的其他客户实例。提供商要根据客户的需要,对数据库中的应用代码和数据结构作定制化的修改。
[0055]成熟度模型级别4是本发明(SLP)应用的最终目标,属于成熟度模型的最高一级。提供商在负载平衡的服务器群上为不同客户提供主机服务,运行相同的实例。不同客户的数据彼此分开,可配置的元数据可以提供独特的用户体验与特性集。这种架构的SLP系统可轻松适应大规模客户的需要,可在不对应用进行额外架构设计的情况下根据需求灵活地增加或减少后端服务器的数量。
[0056]可见,大规模多租户数据服务是本发明的核心技术,其提供了高效的多租户资源共享和隔离机制从而降低分摊在单个租户的平均基础设施和管理成本;提供了具备可扩展性的基础架构从而支持大数量的租户和应用;提供了安全的体系架构设计方法及相应编程模型以支持租户间数据的安全隔离;提供了灵活的体系结构从而满足不同租户异构的服务质量需求;提供了对复杂、异构的底层系统、应用程序以及租户的统一监控和管理。
[0057]图5为本发明一种信息化软件租赁平台的实现方法的步骤流程图。如图5所示,本发明一种信息化软件租赁平台的实现方法,包括如下步骤:
[0058]步骤501,对建立的软件租赁平台进行配置。其配置过程如下:
[0059](I)将MTClientMork.jar文件添加到web-1nf/lib
[0060](2)修改 Login 页面,添加 tenantld[0061 ](3)添加 filter,并且配置到 web.xml
[0062](4)实现SPI,可以将默认实现拷贝到包中。
[0063](5)添加MTConf it.properties到 classpath 下,修改 off eringName 项为注册时候的应用的名称。
[0064]步骤502,将新的软件应用服务导入到软件租赁平台(导WAR包)。其过程如下:
[0065](I)打开war包,删除MTCl ientMock.jar,添加MTAccessC I ient.jar 到 WEB-1NF/Iib ;
[0066](2)登录WAS管理控制台,安装新应用;
[0067](3)确定上传WAR包,填写上下文根;
[0068](4)点击确定,下一步,并保存。
[0069]步骤503,注册新的软件应用服务到软件租赁平台。其过程如下:
[0070](I)登录到租赁平台的管理控制台AdminConsole ;
[0071 ](2)依次注册物理机器,数据库服务器,数据库,并激活;
[0072](3)添加新的应用,上传配置文件,激活应用;
[0073 ](4)创建存储点,选择存储点的DB,修改链接数据库的用户名和密码,确定并保存;
[0074](5)创建租户,订阅应用下的存储点。
[0075]本发明的基于多租户技术的小微企业的信息化软件租赁平台的性能特性如下:
[0076](I)基于构件化、面向对象的技术路线,可做到灵活扩展。
[0077](2)系统采用三层架构的体系结构,充分考虑系统今后纵向和横向的平滑扩张能力。
[0078](3)在网络稳定(带宽128K)的环境下操作性界面单一操作的系统响应时间小于5秒。
[0079](4)支持年数据量为500万记录数、50GB字节的数据量。
[0080](5)系统应提供7 X 24小时的连续运行
[0081](6)系统安全特性、访问控制须到页面级。
[0082 ](7)具有较强的系统安全性和灾难恢复能力。
[0083](8)按各项业务的实际需求设定其严格安全等级和流程跟踪功能来保证系统的可靠性。
[0084](9)在工作数据库中,能同时保存本系统全部基础数据。
[0085](10)本系统设计中重视可扩充性和可移植性。
[0086](11)系统实现方便的流程管理,对流程管理中的各子流程的各个环节进行处理权限定义、以及对相关人员进行权限分配管理。
[0087](12)整个系统有完善的安全解决方案,对系统中涉及的一些角色、组织机构、操作权限口令等进行维护。
[0088]上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何本领域技术人员均可在不违背本发明的精神及范畴下,对上述实施例进行修饰与改变。因此,本发明的权利保护范围,应如权利要求书所列。
【主权项】
1.一种信息化软件租赁平台,包括: 可定制的Web层,提供多租户进行定制Web界面,实现多个租户共用一个实例; 中间件,在负载平衡的服务器群上为不同客户提供主机服务,运行相同的实例,提供统一的业务管理层; 共享的资源池,通过虚拟化整合与自动化,应用系统共享基础架构资源池,在外部访问压力增加时,系统自动扩张获取计算资源,压力减小时自动释放资源。2.如权利要求1所述的一种信息化软件租赁平台,其特征在于:该中间件包括Web应用服务器、过程服务器、门户服务器、数据库服务器、管理服务器。3.如权利要求1所述的一种信息化软件租赁平台,其特征在于:各租户共享同一个数据库、同一个数据架构,在数据库表中通过TenantID区分租户的数据。4.如权利要求3所述的一种信息化软件租赁平台,其特征在于:在数据库表中增加多租户隔离列,增加一列TenantID,如果应用支持多次订阅,还要增加一列Isolat1nID。5.如权利要求3所述的一种信息化软件租赁平台,其特征在于:在OR-Mapping配置文件中使用Filter,以便在进行数据查询时,会根据T enantID自动查询出该租户所拥有的数据。6.如权利要求6所述的一种信息化软件租赁平台,其特征在于:在HibernateUtiI类中通过ThreadLocal存放和获取Hibernate Sess1n,并将用户登录信息中的TenantID设置为tenantFi IterParam的参数值。7.一种信息化软件租赁平台的实现方法,包括如下步骤: 步骤一,对建立的软件租赁平台进行配置; 步骤二,将新的软件应用服务导入到软件租赁平台; 步骤三,注册新的软件应用服务到软件租赁平台。8.如权利要求7所述的一种信息化软件租赁平台的实现方法,其特征在于,步骤一包括: 将MTCl ientMork.jar文件添加到web-1nf/lib; 修改Login页面,添加tenantld ; 添加filter,并且配置到web.xml ; 实现SPI,可以将默认实现拷贝到包中; 添加MTConf it.properties到classpath下,修改offeringName项为注册时候的应用的名称。9.如权利要求7所述的一种信息化软件租赁平台的实现方法,其特征在于,步骤二包括: 打开war包,删除MTCl ientMock.jar,添加MTAccessCl ient.jar到WEB-1NF/lib; 登录WAS管理控制台,安装新应用; 确定上传WAR包,填写上下文根。10.如权利要求7所述的一种信息化软件租赁平台的实现方法,其特征在于,步骤三包括: 登录到租赁平台的管理控制台AdminConsole; 依次注册物理机器,数据库服务器,数据库,并激活; 添加新的应用,上传配置文件,激活应用;创建存储点,选择存储点的数据库,修改链接数据库的用户名和密码;创建租户,订阅应用下的存储点。
【文档编号】H04L29/08GK105915580SQ201610099396
【公开日】2016年8月31日
【申请日】2016年2月23日
【发明人】杨志和
【申请人】上海电机学院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1