彭晓惠,温 明
(新疆电子研究所有限公司 新疆 乌鲁木齐 830049)
自从微软计划发布免费在线Office,就标志着SaaS软件服务和云计算为代表的新型软件时代已经快速到来,而以License为特征的商业软件模式也加速走向衰退[1-3]。SaaS模式通过网络向客户提供软件应用服务。从客户的角度来讲,这样可以省去在服务器等硬件和软件授权上的投入;从服务商的角度来讲,这样只需要在服务器上维护一个应用程序实例。因此,SaaS降低了客户总体投资成本,同时提高了服务商的投资回报率,从而实现客户与服务商的双赢。
在我国,国内生产总值(GDP)增速保持在8%以上的高速发展的今天,其中中小企业占据经济总量的半壁江山,这些中小企业中又有大部分的企业信息化是空白。在竞争日益激烈的市场环境中,只有那些利用先进的信息技术成功地收集、分析、理解信息并依据信息进行决策的企业才能获得竞争优势,才是市场的赢家。大部分中小企业缺乏科学的管理理念和运作方式,相当一部分企业管理粗放、不规范,管理制度不健全、管理手段缺乏、管理方式落后,计算机技术水平低下。传统的ERP(企业资源计划)软件系统价格昂贵、实施复杂,以及运行、维护和升级所需要投入的大量人力物力都使绝大部分中小企业很难承受。而SaaS模式的出现,将以低成本、使用便捷、部署迅速、减少IT环境投入等优势,使得企业信息化需求得以满足。
SaaS是随着互联网技术的发展和应用软件的成熟,而在本世纪开始兴起的一种完全创新的软件应用模式。服务商将应用软件统一部署在自己的服务器上,客户可以根据自己实际需求,通过互联网向服务商定购所需的软件模块及服务,按定购的模块和时间长短向服务商支付费用,并通过互联网获得服务商提供的服务。用户无需再购买软件,而改用向服务商租赁基于Web的软件,来管理企业经营活动,且无需对软件进行维护,服务商会全权管理和维护软件。对于许多中小型企业来说,SaaS模式解决了企业购买、构建、维护基础设施和应用程序的问题,企业不再像传统模式那样花费大量投资用于硬件、软件、人员,而只需支出一定的租赁服务费用,通过互联网便可以享受到相应的服务,这就是ERP与网络应用的SaaS模式。
根据SaaS应用[4-5]是否具有可配置性、高性能、可伸缩性的特性,SaaS可以分为以下几类。
1)单用户模型
为每个客户提供一套单独的系统,这个系统运行在专门的硬件环境之上,具有独立的数据库实例和应用服务器实例,数据库中的数据结构和程序代码可以根据客户需求来定制修改,因此,单用户模型最大程度地满足了客户个性化需求。
2)虚拟化环境下的多系统模型
通过虚拟化技术,使得多个系统共享一套硬件环境,软件及数据本身并不共享,充分利用硬件资源,在各个软件层面上(直到操作系统)把客户分离开来。
3)多客户单实例的应用构架系统
每个客户都有自己的系统,但是他们共享数据空间,在共享空间上使用集中的生命周期管理,因而降低了运营成本。
4)复合的多客户系统
多个客户共用一套系统,系统的灵活性在设计初期时就必须充分考虑,实现最大程度的资源共享。在一个服务器上,用同一个数据库来存储多个客户的信息,这些信息都存在同一套表中,客户之间通过ID号来区别。
从构架设计的要点考虑,单客户系统和多客户系统的区别如下图1所示。
基于SaaS架构的数据库数据隔离设计主要有如下几种模式:
1)独立数据库
一个租赁客户对应一个数据库,不同客户的数据库及数据是自然隔离的,数据结构也不存在异构问题。这种架构设计,相对比较简单,但是其通用性不强,每新增一个租赁客户,需要建立一个新的数据库实例,其扩展性差,所以在SaaS模式的实际应用中很少采纳。
2)共用数据库,独立表
为每个租赁客户建立各自的基本数据表,从而实现数据隔离,数据结构异构也不存在问题,每新增一个租赁客户,需要新建一组基本数据表,扩展性一般,数据库关联比较多,比较适用于复杂MIS的应用,对软件系统架构师要求也比较高。
3)共用数据库,共用表
图1 单客户系统和多客户系统的比较图Fig.1 Single tenancy andmega tenancy comparison chart
每个表均加一个租赁客户的ID号,各客户之间通过ID编号进行区别,表与表之间通过客户ID编号进行关联管理,每个表中的记录是可以任意顺序的,每新增一个租赁客户,数据库结构基本不做改动,只增加一个租赁ID编号,扩展性好,如图2所示。这种设计多适合应用于网站,比如网上书店,性能比较好,但是数据隔离权限相对比较复杂,对程序员要求比较高。
图2 共用数据库和数据表Fig.2 Share database and share table
从以上分析可以看出,在SaaS构架中,第3种方法(即共用数据库,共用表)成本最低,但实现也相对比较复杂。如果数据结构异构性越强,实现的难度也就越大,但是ERP系统,CRM系统,财务软件等业务系统,这些系统的基本数据都具有国际标准,其数据结构异构性很小,利用网络的先进性,可以将其复杂程度大大降低。
尽管SaaS模式在各方面都有明显优势,但要求将各单位的全部相关数据存放在服务商提供的服务器平台上,这使得企业数据的专属性、可靠性、安全性面临较大风险[6-7],这些风险主要包括:管理安全风险、信息安全风险、非法入侵风险、病毒感染风险、软件服务商自身不稳定因素等风险。这其中数据的安全性尤为重要,并可能在一定程度上制约着SaaS模式。
为了保证SaaS模式的用户能够像使用传统ERP软件一样,具有良好的可用性和可靠性,为了保证系统的安全可用,可以通过身份认证、权限管理、应用监控、日志管理等措施保证系统的安全。身份认证可以采用集中式认证、非集中式认证或混合认证方式,通过严格的身份认证,防止非法用户使用系统或伪装成其他用户来使用系统。权限管理实现用户使用系统功能的访问控制,保证有效用户正常使用系统的同时,防止非法用户和无权用户对系统功能的使用。由于是基于网络的应用,很容易受到来自网络的攻击,因此,需要监控系统的软硬件使用情况,防止系统出现不正常的停机、死机和拒绝服务等情况。在此基础上,还要对系统的可靠性和稳定进行监控,确保系统安全、可靠和稳定的运行。其他网络安全措施还有:部署防火墙,采用组合的加密技术、密钥技术,运用数字签名技术,使用安全协议,积极采用反病毒技术、加强软件本身的防病毒能力。
在网络不稳定或者用户暂时无网络的情况下,提供一个能够支持离线使用的应用,也是很有必要的。确保系统在这种情况下,能够自动切换到离线状态,将数据保存在本地数据库,当网络恢复后,通过数据同步向Internet服务器提交离线数据。
目前SaaS应用领域主要有:工具型软件(在线Office,在线会议管理),企业应用软件(在线CRM,ERP),电子商务平台(阿里巴巴,京东商城,淘宝网等B2B网站)。SaaS是一种技术架构,也是一种商业模式。近2年来SaaS模式得到了较大的发展,其中工具型软件和电子商务平台发展迅速,企业应用软件相比较而言发展缓慢。主要是工具型软件面向的对象主要是个人用户,电子商务平台主要是提供销售机会,不涉及到公司核心数据,并且对SaaS平台本身提供的功能要求也不高。企业应用软件则涉及到企业的核心数据,并且不同的企业可能需求不一致,对SaaS平台的灵活性要求比较高,更重要的可能是SaaS产品面向的客户群是国内中小企业,而国内的信息化水平不高,购买服务以后,能不能在没有专业服务支持的情况下用好,也是一个很现实的问题。
基于以上原因,在未来几年发展中,工具型软件和电子商务平台会发展越来越好,并且针对细分市场,不断的有新的和针对性的产品出现。大型企业已经开始考虑搭建自己的云计算平台。针对中小企业客户的SaaS厂商,依旧会面临巨大挑战,用马云的话说是:今天很残酷,明天更残酷,后天会很美好,但大部分人却死在明天晚上。
SaaS模式不仅仅是软件提供形式的转变,最重要是SaaS提供了一整套解决方案。随着系统的应用安全性、数据安全性、可靠性和稳定性的提升,以及用户在认识上的转变,必将迎来SaaS软件模式的春天。以SaaS模式的ERP系统也将为广大中小企业在企业管理、资源合理配置等方面提供强大的支持,为企业参与激烈的市场竞争插上腾飞的翅膀。
[1]文杰,陈小军.站在云端的SaaS[M].北京:清华大学出版社,2011.
[2]Rittinghouse JW,Ransome JF.云计算实现,管理与安全[M].北京:机械工业出版社,2010.
[3]陈丹伟,黄秀丽,任勋益.云计算及安全分析[J].计算机技术与发展,2010,20(2):99-102.
CHEN Dan-wei,HUANG Xiu-li,REN Xun-yi.Analysis of cloud computing and cloud security[J].Computer Technology and Development,2010,20(2):99-102.
[4]周红.基于B/S结构的仓库管理系统[J].电脑知识与技术,2007,3(15):602-603.
ZHOU Hong.Based on B/S structure of the warehouse managementsystem[J].ComputerTechnologyand Development,2007,3(15):602-603.
[5]吴洁明,周宁.基于LDAP的信息共享平台研究与实现[J].计算机应用,2008,28(4):1042-1043.
WU Jie-ming,ZHOU Ning.Research and Implementation of Information sharing system based on LDAP[J].Computer Application,2008,28(4):1042-1043.
[6]谢希仁.计算机网络[M].北京:电子工业出版社,2006.
[7]张丽,赵洋.身份认证技术的研究与安全性分析[J].计算机现代化,2007(5):48-52.
ZHANG Li,ZHAO Yang.Research and Security Analysis on Identity Authentication[J].Computer and Modernization,2007(5):48-52.