叶海波 MG0933053 emailhaibo@163.com 背景 SOA定义 SOA介绍 SOA优缺点 SOA与Web 服务的关系 programming in the small programming in the large 回顾软件技术的发展历史,构成软件系统的基本元素- --软件实体经历了从语句、函数、过程、模块、抽象 数据类型、对象、构件等多个阶段。 近年来,基于服务概念的资源封装和抽象逐渐成为资 源发布、共享和应用协同的重要技术基础,由此产生 了一种新的软件体系结构---SOA。 SOA的理念最初由全球最具权威的IT研究与顾问咨询公司 Gartner于1996年提出,当时的定义是: “A service-oriented architecture is a style of multitier computing that helps organizations share logic and data among multiple applications and usage modes.”。 In computing, the term Service-Oriented Architecture (SOA) expresses a perspective of software architecture that defines the use of services to support the requirements of software users. In an SOA environment, resources on a network are made available as independent services that can be accessed without knowledge of their underlying platform implementation。 (from Wikipedia) 在计算领域,面向服务的体系结构表示这样一种软件体系结构,它定 义使用服务来满足软件用户的需求。在一个SOA环境下,网络上的资 源是以独立可访问的服务存在的,访问这些服务不需要了解它们的底 层平台实现细节。 在业务环境中,SOA 的纯粹的体系结构定义: “一种应用程序体系结构,在这种体系结构中,所有功 能都定义为独立的服务,这些服务带有定义明确的可 调用接口,可以以定义好的顺序调用这些服务来形成 业务流程”。 根本独立性 ; 使用开放的标准 ; 平台中性,不受平台限制 ; 跨平台 ; 组合性 ; 扩展性 ; 重复使用性 ; 抽象性. 提供服务级别的重用; 应用程序通信简单; 模块化,面向事件,接口组件化编程; 使用户无需关注服务实现细节,服务可以运行于任意 平台,使服务重用最大化; 服务开发和维护简单; 服务是抽象的、可组合、可发现、松耦合、可重用、 无状态、自主的。 管理服务元数据; 缺少实际测试; 安全分层; 互通性; 服务粒度; 不一定能提高系统灵活性、降低成本和开发时间。 Web 服务并不等同于 面向服务的体系结构。 Web 服务是包括 XML,SOAP,WSDL 和 UDDI 在内 的技术的集合,它使用户能够针对特定的消息传递和 应用程序集成问题构建编程解决方案。 Web服务是SOA的一种实现方式。 WSDL WSDL UDDI WEB SERVICE SOAP