SaaS源于一种简单的思想:软件即服务!但SaaS的出现彻底改变了人们对软件的观念,使用软件的人从产品消费者转换为服务消费者,而开发软件的人从产品提供者转换为服务提供者。当然,SaaS带来的改变不仅仅体现在商业模式上面,也带来了软件开发中的思路和技术的许多改变。这些都是整个软件界需要探讨和思考的问题。
当今的软件界已没有谁敢小觑SaaS软件,因为有一大批的如国外的Salesforce和国内的阿里软件这样的公司在这个领域取得了辉煌战绩,而Google和Microsoft以及国内的用友和金蝶等知名企业也纷纷加入SaaS大战之中。事实上,当前的软件行业正面临一场新的变革,导火索就是SaaS软件。
尽管有不少人对SaaS还缺乏了解,甚至对SaaS持怀疑态度;尽管SaaS本身也还存在这样或那样的缺陷,但SaaS软件发展的速度向世人证明了:软件行业从第二产业的生产制造业向第三产业的现代服务业进行大转换的潮流不可阻挡。
本书也正是在软件行业这样的大背景下推出的。她是国内第一本系统地介绍SaaS的理论和概念以及SaaS软件的架构和实现技术的专业书籍。写作本书的目的主要是为了向软件界的朋友们分享有关理解和运用SaaS理论与技术的思想和经验。同时,本书的推出也希望能起到抛砖引玉的效果,让更多的朋友参与到SaaS理论和技术的探讨中,共同完善和发展SaaS的理论和技术,促进软件行业不断进步。
读者
由于本书所涵盖的内容较宽,适合阅读本书的读者群还是相当广泛的。当然本书主要还是为软件行业的开发人员准备的专业书籍,重点关注的是SaaS软件的架构设计与技术方案,而并非老少皆宜的初级读物。
如果你是软件或互联网公司的老板或高层管理人员,建议你应该看看本书一些内容。你可以重点了解SaaS的理论知识和基本概念,SaaS软件的优势和缺点,以及SaaS所带来的稳健商业模式。当然,我们更建议你将本书推荐给你们的技术开发人员,他们往往能从技术上给予更多的评点。
如果你是IT企业的CTO或者技术负责人,本书将能为你提供较为全面的SaaS技术信息。特别是对于那些正打算转型到SaaS软件开发的技术公司,本书是不可多得的重要参考指南。书中所讲的很多内容都是业界关于SaaS的技术情报和行动计划,我们相信这些内容一定对你的技术决策有很大帮助。
如果你是软件公司的架构师,正在规划本企业SaaS产品的架构设计,本书就是专门为你量身定做的。SaaS软件的架构设计与传统软件有很大不同,对于从传统软件设计转过来的架构师们正需要这方面的参考和指导,而本书的重点就是讲述SaaS软件的架构设计的。
如果你是一名程序员,是时候关注SaaS软件的开发方法了。尽管对于基层程序员来说编写代码的工作没有多大改变,但了解整个SaaS软件的架构原理之后,对编写高质量的代码一定有很大帮助的。SaaS软件所需要的多用户、高并发和大容量特性,也要求程序员编写更高质量和更稳定的代码。
如果你是一位即将毕业或打算从事软件开发的新手,将能从本书中获知当前软件产业发展的最新动向和技术。其实,对于新手来说,先把握方向和目标是非常重要的,这样可以将有限的精力投到正确的学习和实践中,紧跟软件行业的发展潮流。我们可以肯定地说,未来软件的发展趋势一定是SaaS!
内容
本书的第一章介绍了SaaS的起源,阐述了SaaS的基本概念和理论。重点分析了SaaS软件给用户和软件商带来的好处和优势,当然也谈到了SaaS软件的缺陷及解决办法。除此之外,第一章还列举了一系列的SaaS成功案例,用事实论述SaaS商业模式的新成就。
第二章阐述了SaaS软件的规模效应对软件架构设计的要求,而对规模效应的支持程度是衡量SaaS架构成熟度的重要特性。多用户环境下的高性能、可配置性和可伸缩性是成熟的SaaS应用应该具备的三个特性,而SaaS的成熟度模型正是根据应用对这三种特性的支持程度来确定的。本章也给出了在不同应用场景中正确选择SaaS成熟度模型的具体指导意见。
第三章和第四章重点讲述了如何构建多租户的SaaS应用。从SaaS成熟度模型的Level 1开始,一步一步讲解应用架构的改进,最终给出了Level 4的高性能的多租户SaaS应用架构的最佳实践。构建高性能的多租户架构需要同时在数据库层、应用层和WEB表现层三个方面进行改造和优化,本书也在这些方便给出了详细的解决方案。
第五章和第六章分别介绍了如何构建可配置和可伸缩的多租户SaaS应用架构。SaaS应用的可配置主要包括数据可配置、功能可配置、界面可配置以及流程可配置等,可配置为SaaS应用的个性化设置提供了基础的支持。而对于可伸缩的架构能够保证在用户应用规模不断扩大的情况下,轻松增加相应的服务器等硬件设施,来保证SaaS应用的整体性能要求。
第七章的内容重点是SaaS安全性。安全性保障是SaaS应用的重中之重,主要包括数据隔离安全、数据连接安全、数据保密、访问者认证、权限控制、监控和记录以及网络安全等多方面内容。第七章也给出了解决这些问题的详细方案和技术手段。
第八章是离线应用技术的详细介绍。离线应用也是解决脱网使用SaaS应用的关键技术,同时也是提升SaaS应用性能的有效方法。这章的内容涉及本地运行、本地存储、数据同步、冲突解决以及数据传输等各方面的技术,并给出了相关应用架构的设计方案。
第九章到第十二章都是云计算基础设施的内容,也是本书的又一重点内容。这几章分别介绍了分布式文件、分布式数据库、分布式Cache和分布式计算等多种技术。其中详细讨论了GFS、HDFS和ADFS几种分布式存储方案,探讨了基于代理的分布式数据库架构,以及基于列的分布式数据库架构。在分布式缓存架构设计方面,提出了多层分布式Cache及其改进的架构设计。分布式计算主要探讨MapReduce的分布式计算框架原理,并以文件下载的分布式计算为例讲解分布式计算的各种架构和模型。
第十三章主要是讲Open API技术,包括对Open API的商业价值分析、Open API相关产品、Open API实现技术、Open API托管平台及其服务集成平台实现方案。Open API的实现技术主要是SOAP和REST,在此基础上的Open API托管平台及服务集成平台可以向SaaS应用提供丰富和强大的服务接口资源。
第十四章介绍了开放SaaS平台的概念。通过对PaaS几种商业模式的介绍,使读者对开放平台的真实特性更加清晰。对于SaaS应用来说,需要的不仅仅是狭义平台,更应该创造条件,完善价值链,吸引更多的角色参与到平台建设中,共同打造SaaS软件大市场和SaaS软件生态圈。
最后的结束语探讨了SaaS未来发展趋势。从SaaS的平台化到SaaS的移动化,从SaaS产业链的形成到“服务即软件”思想的提出,SaaS软件的未来是丰富多彩的。此外,最后部分还探讨整个软件行业的发展趋势,并从信息产业大融合的高度分析了未来软件发展的产业终局。
联系
本书开辟了专门的博客,欢迎广大读者和我们交流和沟通。我们的博客地址是:
本文转自DavyYew 51CTO博客,原文链接: http://blog.51cto.com/davyyew/241281
,如需转载请自行联系原作者