- 1、本文档共92页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
云计算的架构
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 我们一定要坚信特别是信息架构师更要坚信,处于大多数系统核心的是数据,而不是算法(或者称之为代码)。随着互联网(固定互联网和移动互联网)技术和物联网技术的发展,最终用户产生和消费的数据将比以往更加推动信息技术的使用,我们业务流程的运转需要各个环节的人员产生和消费相应的数据,数据需要更加地及时、有效、精确;我们的业务的运营越来越离不开相应的数据。 在任何情况下我们需要通过Web来呈现给用户使用的所有功能归根结底都是一个界面一个具有较好用户体验的界面来更好地产生和消费数据,以促进人与人之间的协同、人与机器之间的协同以及业务流程更加高效、精准的运转从而提高企业的经营效率和效益。这些数据就构成了我们企业应用信息系统的核心价值,不论这些数据是合作伙伴创建的还是我们的一线员工和管理层所创建的。市场需求的变化促进了业务和业务流程的变化和促进了人的变化,促进了数据的变化即需要创建和消费、利用更多类型、更多种类、更大量的数据,数据推动了我们需要更多的产品/应用,所以架构师、开发人员将会围绕数据创建了传统的“n”层软件栈(数据存储层、业务逻辑层与显示层)即我们的应用都是由数据来驱动的。 * * 从上面这张图我们可以看到,我们需要建设一个数据开放平台,数据开放平台提供了一系列服务API供各个应用进行使用,各个应用都需要利用数据开放平台中提供的数据来即可以利用企业中以前积累和将来积累的一系列数据来完成相应的业务处理;当然业务应用与业务应用之间的集成由集成平台(例如企业应用集成平台、流程平台等)来完成。数据开发平台最简单来讲分成以下几大部分: 数据开放平台数据层:即需要相应的数据库服务器存储我们企业中以前积累和将来积累的一系列数据经过加工后的有用、完整、精确的数据,例如主数据、元数据、业务数据等。这个数据的形成就需要利用相应的ETL技术、数据仓库技术等技术。 数据规则层:即需要建立一系列的数据所有权规则、数据共享规则、数据可用性规则来限制数据的创建、利用等;反应到数据开放平台这个整体就是一系列的算法/代码。 数据逻辑层:为了让在数据开放平台中的数据能够给各个业务应用利用,我们需要开发大量的业务逻辑来处理和加工数据开放平台中的数据。这样的话就会形成一系列的支撑应用(例如统一用户管理应用、主数据管理应用、数据分析应用(例如提供报表等等))。这一层的设计和建设考虑请参考: 服务API层:如何让各个业务应用更好和方便快捷地使用我们的数据呢?我们需要提供一系列简单的服务API给各个应用使用。这一层的设计和建设需要考虑的问题请参考: * 与目前常见的集中式存储技术不同,分布式存储技术并不是将数据存储在某个或多个特定的节点上,而是通过网络使用企业中的每台机器上的磁盘空间,并将这些分散的存储资源构成一个虚拟的存储设备,数据分散的存储在企业的各个角落。 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 在如上图所示的一般的传统n层软件栈架构中,应用将输入(对于Web来说,就是GET、POST和cookie信息的集合)映射为对原始数据的请求,这些原始数据可能存在于数据库中。它们被转换为内存中的数据,并通过一些业务逻辑进行智能化处理。输出模块将针对显示对这些数据对象进行转换,变成HTML、JavaScript、CSS等。 这种方式即是以应用为划分的“烟囱”结构,数据基于应用,并被锁定在应用系统中,形成一个个数据的孤岛。带来以下一些最基本的问题: 1、 数据并没有被作为一个单独的IT组成部分被规划和设计,而是作为应用系统的一部分,由于应用系统的供应商不同,并且其设计工作也缺乏相互之间的协调,因此,数据模型基本按照各个应用系统的功能需求进行设计和实现。 2、 由于缺乏有效的数据共享,在有些业务环节上,一个应用所需的数据无法从相关的其他应用系统中获得,而只好重复录入。 3、 另一方面,由于同一个数据可能存在多个数据源(从多个应用系统中被重复录入),由此导致了信息的不一致。 J2EE架构经典实现:一般来说我们会使用Structs/WebWork+Spring+Hibernate/iBitas 来进行实现,.NET架构基本也是如此;并且会引入相应的Ajax框架(例如YUI,DOJO,EXTJS,GWT,PROTYPE etc). 一种改良实现:UI(用户界面逻辑)采用php//flex/html5进行开发,业务逻辑层和数据访问层采用JAVA进行开发。UI(用户界面逻辑)层与业务逻辑层采用REST WebService进行集成。 这些应用系统按照
文档评论(0)