`

基于SaaS模式的软件开发

 
阅读更多
一、SaaS介绍、长尾市场
SaaS(Software as a Service软件即服务)是通过互联网、以服务的形式交付软件、同时供多个租户(每个租户下面有一个或多个用户)租赁使用的业务模式。
相比传统应用软件,以下几点因素或许正是SaaS目前备受关注的原因。
首先是获取和部署方式发生了重大改变。SaaS模式下,企业可以通过互联网轻松获得软件,不需要专业部署即可使用,而无须像传统软件一样等待软件厂商漫长的交付过程。
费用上,企业无需购买软硬件以作为软件系统的服务器。软件的运行、维护、升级和数据的存储都在SaaS服务提供商那里。同时企业可以根据自身情况,按需租赁软件的部分或全部功能并按期支付租赁费用。SaaS软件的目标市场是长尾市场(针对众多中小企业),规模效应也使得SaaS软件的租赁费相对较低。
服务上,企业无需招聘相应的IT维护人员,软件的维护由SaaS服务提供商提供,软件的升级就像初次获取一样容易,企业几乎不用投入专门的人员和时间来应对就可以使用新的软件版本。
网络带宽的不断提高,使得SaaS软件与服务器的数据交互性增强,用户在线使用的等待时间大大缩短。
技术实现上,Ajax技术更是加快了软件响应,使得web页面可以不用刷新就可以完成数据的存取,具有了C/S界面的部分特性;Web Service技术
然而,SaaS软件也并不是没有缺点,这也正是抑制SaaS迅速普及的原因。
Internet的稳定性和带宽毫无质疑是不及企业内部的局域网的,对于运算量大、业务过程复杂的系统显然不方便采用SaaS模式;SaaS软件同时供数十甚至数百个租户使用,与传统定制软件相比少了特性化的东西,企业如果选择SaaS,也就意味着必须放弃一些自身特色;SaaS模式下数据是存储在SaaS软件厂商的服务器中的,将自己的业务数据放置于企业外部,恐怕心理上要有一个适应过程。
二、外围现状介绍
美国的Salesforce.com是最成功的SaaS的服务提供商之一,其在美国成功上市也极大地刺激了SaaS市场。微软、Oracle、SAP、IBM等国际大公司也都视SaaS为一次决不可措施的机会,纷纷采取措施切入SaaS市场,以图能够雄霸SaaS市场,引领未来。国内金蝶等软件厂商也纷纷介入,推出自己的SaaS产品,阿里巴巴更是押宝SaaS。知名厂商的介入,无疑给SaaS市场增加了信心。
三、服务交付方式
SaaS模式软件的交付相比传统软件的交付要容易得多。软件的形式仍然可以采用C/S和B/S两种结构。应用微软提供的ClickOnce部署技术,SaaS软件供应商将可以将自己C/S结构的软件发布到Internet上,租户通过浏览器就可以很方便地完成程序安装并开始使用(ClickOnce应用在本刊第14期中有介绍,有兴趣的可以去翻看);对于B/S结构的软件更容易交付给用户使用了。
四、多租用数据体系结构方案
企业作为租户租用SaaS软件,那么租户的数据如何存储?对租户数据应该采用何种隔离等级和方式?做SaaS模式的软件在数据体系结构上面临一个选择。在实际应用中有三种方式可以选择。
一是独立数据库的方式,就是说为每个租户提供一个独立的数据库,这种方式的优点是对单个租户的数据备份和恢复容易,但会增加硬件成本。
二是共享数据库,独立架构。Oracle数据库中都有架构(Schema)这个数据库对象,Sql Server在2005的版本中才引入架构作为数据库对象(架构对象的特性和使用不是本文的重点,我在此不作介绍)。每个租用都有一套完整的表集合,通过架构的方式来管理。这种方式能够充分利用服务器的性能。这种方式和前一种方式一样,存在更新维护上的困难,如果租户成百上千,可以想象数据库维护起来相当困难。不过也不是没有办法,通过SMO定制化管理数据库将极大地化解维护困难的问题,后面还有介绍,这里先一笔带过。
三是共享数据库,共享架构。即所有租户的数据存储于一套表集合中,表设计中增加租户的标识字段。这种方式在数据库维护上要简单许多,且可以最大化利用数据库服务器的性能,不同租户数据隔离的控制完全放在软件中处理。当然不同租户的数据不能单独备份,而且随着租户数和租户业务数据的增加,数据以乘积关系增加,单表记录数很容易上升到百万或千万或更高,用户速度上的体验必然下降。
五、多租用数据库维护SMO

上面说了前两种数据库体系结构均存在维护和部署上的困难,当数据库定义修改后怎么方便地在其它数据库或模式中执行更新并始终保持统一?问题很明确,解决方法的选择当然也就很有针对性,如果自己写个维护程序,能够自动将数据库对象显示在界面上,并提供批量的更新方法,问题也就解决了。随后我们发现了SMO(SQL Server管理对象,是SQL Server 2005客户端工具的一部分,也是SQL Server 2005功能包的一部分),她我们提供了非常有效的方法来通过编程的方式管理SQL Server。与ADO.NET相比,ADO.NET是一个通用的数据访问方案,可以用来访问众多不同的数据库,而SMO在管理SQL Server的应用中略胜一筹,而且只能用于SQL Server 

分享到:
评论

相关推荐

    基于SaaS模式的应用集成平台的设计与开发

    针对中小企业资金技术方面的不足,提出了基于SaaS模式的应用集成平台总体框架的设计与开发。论文重点对应用集成平台的核心技术—多租户应用技术进行了深入的研究,确定了多租户技术的功能需求和解决方案,提出了多租户...

    基于SaaS模式的软件设计方法探讨

    ### 基于SaaS模式的软件设计方法探讨 #### 摘要解析与扩展 在《基于SaaS模式的软件设计方法探讨》这篇期刊论文中,作者们深入分析了SaaS(Software as a Service,软件即服务)模式与传统应用软件部署方式之间的...

    基于SaaS模式的进销存实战架构分析

    对于基于SaaS模式的进销存软件而言,考虑到其业务特性以及技术实现难度,采用**多Schema,单数据源**的方案可能更为合适。这种方式不仅能够满足安全性要求,同时还能确保较高的数据访问效率。此外,为了支持多实例、...

    基于SaaS模式的CAD系统.pdf

    本文主要探讨了基于SaaS模式的CAD系统的开发与实现。CAD(计算机辅助设计)技术在工程设计领域中扮演着至关重要的角色,它能够帮助设计师通过计算机来绘制平面图形和三维模型。随着集成电路产业的发展,对集成电路...

    SaaS的开发模式1.doc

    随着信息技术的发展,软件即服务(Software as a Service,简称SaaS)作为一种新型的软件交付模式,正在逐渐改变传统的软件开发和服务方式。SaaS不仅改变了软件的分发和服务模式,还推动了一系列相关技术的发展,如...

    基于SaaS模式的X公司农产品物流配送研究MBA工商管理硕士毕业论文.doc

    【基于SaaS模式的X公司农产品物流配送研究】 这篇MBA工商管理硕士毕业论文主要探讨了如何运用SaaS(Software as a Service,软件即服务)模式优化X公司的农产品物流配送系统。SaaS模式是一种新兴的软件应用方式,...

    基于SaaS模式企业财务数智化研究.docx

    《基于SaaS模式企业财务数智化研究》 随着科技的快速发展,尤其是物联网、SaaS云软件等新技术的应用,企业财务管理正经历着深刻的变革,逐渐迈向数据化、智能化和无纸化的时代。这一变化不仅降低了企业信息化建设的...

    基于SaaS模式协同办公OA类应用集成平台的设计与开发.docx

    ### 基于SaaS模式协同办公OA类应用集成平台的设计与开发 #### 摘要及背景 本文档探讨了一种新型的基于SaaS(Software as a Service,软件即服务)模式的协同办公OA(Office Automation,办公自动化)类应用集成...

    基于SaaS模式的咸宁市中小企业会计信息化的应用研究

    综上所述,基于SaaS模式的在线会计服务为咸宁市中小企业会计信息化的发展提供了新的动力和方向。通过政府的引导、企业的积极适应以及技术企业的创新,将能够有效推动中小企业信息化进程,提升企业的核心竞争力。随着...

    B2B2C网上商城开发指南——基于SaaS和淘宝API开放平台 pdf格式

    《B2B2C网上商城开发指南——基于SaaS和淘宝API开放平台》是一本深入探讨电子商务领域中B2B2C模式下商城系统构建的专业书籍。B2B2C,即Business-to-Business-to-Consumer,是企业与企业之间通过第三方平台向消费者...

    基于Saas的云计算工作流中间件与大型企业管理云开发实战 及Paas平台下多系统生成

    【标题】"基于SaaS的云计算工作流中间件与大型企业管理云开发实战及PaaS平台下多系统生成" 本课程深入探讨了SaaS(Software as a Service)在云计算领域的应用,特别是如何利用SaaS构建大型企业的管理云系统。SaaS...

    SaaS模式分析

    与传统的软件安装模式相比,SaaS模式最大的特点是用户无需在本地计算机上安装和维护软件,只需通过互联网即可访问所需的应用程序。这种模式的核心在于软件的托管和管理全部由服务提供商完成,用户仅需支付订阅费用...

    基于SaaS模式的工程建设行业信息管理平台设计和实现

    【基于SaaS模式的工程建设行业信息管理平台设计和实现】是指在互联网信息技术发展的背景下,针对工程建设行业的特殊需求,设计并构建的一种新型信息管理平台。这种平台利用SaaS(Software-as-a-Service)模式,旨在...

    SaaS模式和ASP模式的概念和区别

    SaaS(Software as a Service)模式和ASP(Application Service Provider)模式都是云计算领域的两种...对于希望采用SaaS模式的供应商,需要全面评估市场环境和技术实力,以适应这种全新的软件开发、销售和部署方式。

    基于SAAS的智能物流平台解决方案.pdf

    上海盛锐软件有限公司开发的基于SAAS的智能物流平台,就是针对上述现代企业物流管理需求而设计。企业可以根据实际需求租用所需的模块和功能,利用平台提供的信息化服务,改进自身的物流管理,实现物流活动的智能化...

    基于SaaS开发的点餐类项目

    【基于SaaS开发的点餐类项目】 在当今数字化时代,餐饮行业的运营模式正在逐步向线上转型,基于SaaS(Software as a Service)技术的点餐系统成为了许多餐厅和餐饮企业的首选。SaaS是一种云计算模式,它允许用户...

    基于SaaS模式的分布式在线考试系统设计.pdf

    首先,分布式在线考试系统的核心概念是SaaS模式,即软件即服务(Software as a Service)模式。SaaS是一种通过互联网为用户提供软件的部署、交付和使用模式。在这种模式下,系统供应商负责维护和管理软件,并通过...

    基于可变性模型的可复用与可定制SaaS软件开发方法.pdf

    【基于可变性模型的可复用与可定制SaaS软件开发方法】 SaaS(Software as a Service)软件开发在云计算环境下已经成为一种主流模式。它允许软件供应商通过互联网向多个租户提供服务,同时满足各个租户的独特需求。...

Global site tag (gtag.js) - Google Analytics