2007 年 9 月 21 日
Web 2.0存储库可以帮助您创建灵活的软件体系结构,并且这种软件可以很容易地插入到 Web 2.0社区和外部网。要创建满足可修改性、性能、安全性、可伸缩性和可重用性等方面需求的可变系统,这项工作可能充满挑战。在本文中,您将了解相关的技术以帮助确保您的 Enterprise Web 2.0 体系结构能够满足您的质量需求。
实现自动化的驱动力
许多公司需要在提供更多服务的同时,控制其成本。因此,他们必须为企业的操作实现自动化。IT 管理预算非常紧张,并且现在甚至对这个关键的业务领域进行了外包。服务密度越来越大,并且各种服务之间的互连程度也越来越高。
由于在地理位置上日益分散,许多组织都比以前更加需要使用 Enterprise Web 2.0。这种服务,或者这组服务,可以更容易地聚合关键的内容、为地理上分布的组提供协作、实现关键的业务目标,如多团队设计和开发工作、合同招标以及企业重组。
在本文中,将向您介绍有关 Enterprise Web 2.0部署的体系结构方面的内容,并研究一种以管理为中心的方法。您还将了解通过简化主要的组件,使得 Web 2.0体系结构比以前的版本更加可靠。了解一些附加的技术,如添加可管理性和反向控制,以便提供复杂的和动态的组件关系,从而为用户和系统管理员提供帮助。Web 2.0 用户看到的是业务服务,而 Web 2.0 IT 管理员看到的是可管理的技术元素,这样一来,可以为每个组提供企业的清晰视图。
软件体系结构质量属性
成功的企业体系结构必须具备各种各样的质量属性。它可以帮助预先定义这些属性。这个属性集构成了一个蓝图,以指导分析、设计、编码、部署、维护、更新等阶段的工作。这种体系结构是对成型后的系统的预想。典型的质量属性包括(但并不局限于此)下列方面:
- 可修改性。有了这种特性,就可以很容易地对基础软件进行修改
- 可用性。体系结构实现所定义的无故障运行时间级别的程度(例如,每年不超过 5 分钟的停机时间)
- 性能。体系结构的可度量的服务级别
- 安全性。体系结构所定义的安全基准
- 可伸缩性。体系结构能够在用户级别和所提供的服务方面的增长程度
- 可重用性。将该体系结构中的部分或全部集成到一个新的体系结构中的能力
体系结构不是抽象的实体—,也就是说,您可以通过不同的方式来查看它们,包括系统的物理环境、模块分解视图、流程视图、客户端-服务器视图、代码视图和分层视图。每种视图都显示了一种或者多种所需的质量属性。
另一个附加的质量属性是可管理性:体系结构简化自动化管理的程度Enterprise Web 2.0 的各种元素为实现可管理性提供了很好的平台。
Enterprise Web 2.0 元素
Enterprise Web 2.0 提供了 Web 1.0 中所没有的许多功能。本文讨论了一些关键的 Web 2.0 功能,包括:
- 内容聚合
- 社区支持
- 协作式的自我发布
- 异步内容更新
- 富客户端(增强的浏览器)
- 松散的业务流程交互和操作
已经有一些产品实现了其中部分或者所有功能,包括 IBM® WebSphere® Portal 软件和 Sun Java™ System Portal Server。
在图 1 中,您可以看到这些 Web 2.0 功能。
图 1. 正在使用的 Enterprise Web 2.0 功能
图 1 的左边描述了一个用户社区。这是一组松散的用户,他们为完成短期或长期的工作而聚集在一起。通过使用其富客户端工具,这些社区成员可以进行协作。这些工具使得用户能够合并多个数据流,并在内部网范围内的数据源中执行联机内容编辑(可能还包括外部网)。这种客户端编辑功能需要新一代浏览器技术。
图 1 的中间部分详细地描述了这种实现 Web 2.0 的软件。聚合工具可以组合来自 Web 站点、数据库和其他数据源的内容。然后,将数据提交给富客户端,而后者将所提供的内容组合成复合数据:该数据可能包括所有格式,如音频、视频数据等等。
另一个重要的数据源(图 1 中没有显示)是语义搜索数据。在图 1 的聚合功能中包含了这种功能;其目的是提供语义上相关的数据。富客户端请求这些数据,并将其作为复合文档的一部分进行呈现。
富客户端文档可以保存到持久的介质,如新的文档或者作为原始数据的一部分。在图 1 的右边说明了数据初始加工。您需要了解的是,EnterpriseWeb 2.0 数据源并不一定必须是静态数据库—,数据可以来自数据库、静态或动态 Web 页面,以及业务流程,如业务流程执行语言 (BPEL)服务器。
可以使用 Portlet 构成 Web 2.0 客户端功能的基础。对于异步更新—,这种方式特别有价值,这是图 1 的中间部分的另一个特性。异步更新允许将数据更改传播到 Web 2.0 环境中的各个客户端。
Enterprise Web 2.0 体系结构包括至少三个物理或逻辑层。可管理性适合于这个系统的哪些方面呢?
可管理性是一种体系结构质量属性
一种体系结构要成为可管理的,它必须能够提供:
- 关键元素的自动化操作
- 简化关键元素的配置
- 抗故障能力
- 简化性能的度量
- 服务与所定义的指标之间的一致性
- 系统安全性
Enterprise Web 2.0 客户端要实现协作、聚合内容,以及操作复杂的文档,就必须使用一种可靠的平台。支持可管理性将帮助您提供一个这样的平台。可以考虑一下,提供可管理性在图 1 中意味着什么。
图1 中右边的元素以最佳的方式进行管理:需要对 Web/BPEL服务器和数据库引擎进行正确配置、负载平衡,以及性能监视。如果您对性能进行度量,那么就可以更容易地知道,什么时候需要更新或添加新的硬件。如果存在服务水平协议(例如,每年不超过 20 分钟的停机时间),那么就必须在运行期间不断地收集数据。如果将任何私有的数据存储在图 1右边的这些系统中,那么您可以更容易地确保它的安全,这样做更加合适。
提供可管理性可能需要多个附加的复杂系统。为什么需要可管理性比如何实现可管理性更加重要。所以必须使得管理功能尽可能是可用的。
在下一个部分中,我们将介绍 Web 2.0 元素,以及为实现可管理性而提供的一些增强功能。
内容和软件存储库
在Web 2.0 中,存储库包括两种形式:内容(数据)和软件功能。在图 1中,数据存储库位于右边。软件存储库提供了一种存储工具和中间件的方式,而这些内容构成了 Web 2.0的计算基础结构。软件存储库是一些可选的元素,图 1 中并没有显示它们;它们提供了一种部署 Web 2.0 工具的方式。
企业中的 Web 2.0 社区
社区的概念可能是 Web 2.0 中最新颖的内容。这种社区反映了一个组织帮助地理上分散的组和用户共同完成某个项目、相互协作、生成可交付的产品、最后解散的能力。可管理性如何对社区的概念产生影响呢?
社区管理操作包括创建、添加,以及删除用户;在一些更新的版本中,还包括删除社区。对于一些重要的社区,一旦形成,可能永远不会撤销(例如类似 HR-updates-to-staff 这样的社区)。可管理的体系结构能够简化这些管理操作。
社区中的抗故障能力指的是处理下游故障(数据源中的故障)的能力。一种可能的故障情况是,社区太大,以至于无法实现其原来的目标。
外部网:看似不同,其实是一个旧的解决方案
外部网通常部署于合作伙伴组织之间,这些组织相距甚远,但需要共享资源。例如,一个软件供应商可能根据合同,需要为另一个组织提供代码。其中一个合作伙伴可以建立一个外部网,以便他们共享资源,如计算机、软件、各自的专业技能,等等。
在 Web 2.0 的环境中,可以将外部网构造作为受限的社区。这种社区需要严格的安全协议,例如,可能不希望或者不允许与外部合作伙伴共享内部网中的某些数据。这些注意事项使得能够安全地实现 Web 2.0 可管理性。
简化 Web 2.0 软件组件
前面在可管理性部分中将提供可管理性定义为质量属性的独立集合。不幸的是,这种情况很少出现在系统设计中。在企业体系结构中,通常在完成了设计和开发工作之后,再添加相应的管理功能。后添加的关键元素通常会使得解决方案难以管理。其实并不一定要这样做!
提前定义可管理性需求以及其他体系结构的质量属性,这样可以使管理功能与其他 Web 2.0 构件解耦。实际上,可以对 Web 2.0 软件组件进行有意识地简化,因为它们不一定包含编译时的管理软件。
一种已经使用这种技术的开放源代码工具是 Apache Java 2 Platform, Enterprise Edition (J2EE)参考应用服务器 Geronimo。这种工具通过依赖关系注入来配置相应的组件,以便为所需的管理操作提供支持。所构建的 Geronimo的组件用于提供动态管理请求。这样就可以提供一种更加灵活的管理模型。
它还展示了体系结构方法的强大功能:对于那些构建系统的人员来说,所需的质量属性始终作为一项提醒。它还允许在最终完成的系统中实现更好的关注分离。
总结
各种组织都不断地努力降低 IT 成本。您可以将部分工作进行外包,但是这可能使得地理上分散的组更难实现协同工作并完成短期的项目。Web2.0(有时候称为 Enterprise Web 2.0)或者 Web 3.0 可以为高度分散的组织的需求提供一种完美的解决方案。
软件体系结构质量属性为体系结构试图实现的目标提供了功能强大的描述。通常,架构师可以使用各种视图来确保实现所需的质量属性。可管理性是一种常常被忽视的体系结构质量属性。为 Enterprise Web 2.0体系结构增加可管理性属性,这样做可以添加可配置性、抗故障能力、性能度量能力、安全强制,以及其他更多功能。
您可以为构成 Enterprise Web 2.0 的主要构件应用这些可管理性属性,如存储库和社区。提供可管理性作为一种关键的体系结构质量属性,可以更容易地实现 Web 2.0 的部署和操作。
EnterpriseWeb 2.0 可管理性的最出乎意料的优点是,它为简化软件元素提供的范围。Apache Geronimo项目通过依赖关系注入和反向控制的支持,为这种技术提供了一种模型。这种方法为您提供了比以前更加灵活的管理模型。因此您将发现,EnterpriseWeb 2.0 非常适合于体系结构级别的可管理性。
分享到:
相关推荐
在多层体系结构中,J2EE将应用分为了几个主要层次,包括客户层(Client tier),Web应用层(Web tier),企业组件层(EJB tier)和企业信息系统层(EIS tier)。客户层主要通过HTTP协议与Web应用层进行交互,Web应用...
4. 杨磊的《Eclipse Web开发 ---- Java 体系结构、工具、框架及整合应用》,介绍了使用Eclipse进行Java Web开发的方法。 此外,学习过程可能涵盖32小时的内容,包括: 1. Web编程基础 2. HTML和XML 3. JavaScript 4...
.NET 2.0三层体系结构是一种常见的软件设计模式,广泛应用于企业级应用开发,如本案例中的学生管理系统。该系统采用Visual Studio 2005(VS2005)作为开发工具,结合.NET Framework 2.0和SQL Server 2005数据库,...
- **实践指南**:文章通过具体案例介绍了如何运用Web2.0的技术和理念来优化知识管理系统的体系结构与功能,为企业和个人提供了一套完整的实施策略。 综上所述,基于Web2.0的知识管理系统设计不仅融合了最新的技术和...
Struts 2.0 是一个基于 Model-View-Controller (MVC) 设计模式的开源Java框架,用于构建企业级Web应用程序。它是由Apache软件基金会维护,并且是Apache Struts 1.x 的后续版本,提供了更强大、更灵活的功能。 在...
Java EE是在Java SE的基础上构建的,它提供Web服务、组件模型、管理和通信API,可以用来实现企业级的面向服务体系结构和Web 2.0应用程序。 2. Java EE的三层结构:Java EE具有典型的三层结构,包括客户层组件、Java...
系统采用B/S(Browser/Server)模式,利用三层软件体系结构,即表现层、业务逻辑层和数据访问层,实现数据的高效处理。开发环境通常包括Visual Studio 2008,数据库选择SQL Server 2000。数据库设计遵循一定的原则,...
2008年的微软认证包括了多个方向,如Web应用开发,证明了持有者具备使用ASP.NET 2.0进行Web开发的能力。通过这样的认证考试,开发者可以提升自己的技能,增强就业竞争力,同时为企业招聘合格的技术人才提供参考。 ...
4. **分离逻辑和表现**:通过使用JavaServer Pages Standard Tag Library (JSTL) 和 Expression Language (EL),JSP 2.0更加强调MVC模式,将业务逻辑与视图层分开,提高了代码组织结构。 5. **内置Servlet支持**:...
第一部分介绍ASP.NET 2.0的基础知识,包括.NET框架的体系结构、ASPX网页的运行机制、验证控件的使用以及相关的浏览器技术。第二部分介绍了数据访伺技术,包括ADO.NET的系统结构,对数据库的连接、显示、编辑与...
2.0版本的体系结构采用了传统的三层架构,包括表示层(Web UI)、业务逻辑层(BLL)和数据访问层(DAL)。每个层都负责特定的任务,如UI处理用户交互,BLL执行业务规则,而DAL处理数据操作。 6. **.NET Pet Shop ...
EJB是用于服务器端组件体系结构的一个规范。本书主要内容包括:构建EJB类及其接口的机制,EJB设计和性能的策略,构建Web层,EJB的高级概念等。附录包括了EJB 2.0的摘要及其新特征。本书内容翔实、深入浅出,提供了...
Struts2.0是Java Web开发中一个非常重要的框架,它是Apache软件基金会的Jakarta Struts...通过阅读这本书,开发者能够全面理解Struts2.0的体系结构,熟练掌握其使用方法,从而在实际项目开发中发挥出Struts2.0的优势。
在当今数字化时代,Web架构不仅是技术层面的构建,更是涉及到组织结构、工作流程和整体架构设计等多个维度。以下是对这个主题的详细探讨: 一、Web架构的核心要素 1. 技术选型:现代企业Web架构往往基于微服务架构...
网佳智能网络办公系统2.0版,该系统是基于 Intranet 的 Web 下的OA系统,采用了当今最先进的在线管理技术,是综合大量用户的需求,经过充分的用户论证的基础上开发出来的 。 此系统独特的工作流流设计使得信息在政府/...
首先,ASP.NET 2.0是微软.NET框架下的一个强大Web应用开发平台,它在ASP.NET 1.x的基础上进行了诸多改进,如更高效的页面生命周期管理、内置缓存机制、更强大的数据绑定以及改进的配置系统等。这些特性使得开发者...