资源预览内容
第1页 / 共33页
第2页 / 共33页
第3页 / 共33页
第4页 / 共33页
第5页 / 共33页
第6页 / 共33页
第7页 / 共33页
第8页 / 共33页
第9页 / 共33页
第10页 / 共33页
亲,该文档总共33页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
SOA基础知识培训,黄 凯 上海普元该公司产品架构组,服务概念的演进,1950,1995,2002,2008+,抽象层次不断提高,不断贴近业务,面向服务的设计特征,服务查找 服务安全性 面向服务的管理 服务集成 事件驱动的架构 (EDA) 服务自动配置 服务呈现 服务开发和生命周期管理 用于设计、开发和管理针对 SOA 环境的服务控件的环境,SOA 与 WebService的关系,SOA是一个结构性的概念,WebService是一个实现层面的规范。两者都是抽象的描述而不涉及具体的实现。 SOA中数据描述可以是WSDL中的schema WebService是SOA的底层技术之一 调用协议 :SOAP 接口的描述 :WSDL SOA不仅仅是 WebService,SOA应用的多层架构,SOA应用的开发方法,SOA实施准则,1)清晰的边界 2)共享契约和Schema,而不是Class类 3)策略驱动 4)自治 5)用格式连接,而不是用程序API 6)面向文档 7)松耦合 8)兼容工业标准 9)厂商无关 10)元数据驱动 参见:,OSOA规范构成,SCA,QoS Container,Binding,ESB,SDO,DAS,SCA系列规范,Assembly Assembly is the process of composing business applications by configuring and connecting components that provide service implementations Client / 查询结果 String query = “select * from CUSTOMER where ID = 1“; Command readCustomers = das.createCommand(query); DataObject root = readCustomers.executeQuery(); DataObject cust = root.getDataObject(CUSTOMER1); / 修改数据 cust.setString (“LASTNAME”, “Williams”); / 保存改变 das.applyChanges(root);,SDO和SCA的关系,SDO = Service Data Objects 一种访问和修改数据的技术 专门为松散耦合优化 采用乐观锁的检入/检出 SDO 是 SCA的优先但非必要的数据载体 SCA也支持其他数据形式 如JAX-B (Java) SCA 搭配 SDO是最优组合 a unifying API for data regardless of source SDO Data Access Service a kind of SCA component,SOA与Java的关系,高级接口和语言接口 跨语言的实现 与现有技术的比较 EJB、CORBA是具体的组件编程模型 WebService 跨应用的调用协议 JBI (JSR-208)更关注业务集成中服务的生命周期和消息路由,着眼BPEL4WS,SCA的Java静态接口,CompositeContext context = CurrentCompositeContext.getContext(); HelloService helloService = ( HelloService)context.locateService(“com.eos.test.HelloService); String result = helloService.hello(Hello World!);,SDO Java语言规范的内容,SDO的Java模型 如何用Schema定义SDO数据类型 SDO中基本类型和Java类型的映射 SDO的XML序列化 SDO所使用的Xpath导航语法 SDO变更历史的格式,SDO基本Java模型(v2.0),SDO的Java静态接口,Type sdoType = TypeHelper.INSTANCE.getType(“com.primeton.sample.Retailer”, “PurchaseOrder”); DataObject purchaseOrder = DataFactory.INSTANCE.createDataObject(sdoType); PurchaseOrder dy_purchaseOrder = (PurchaseOrder)purchaseOrder; dy_purchaseOrder.setCustomer(“Alice”); /或者直接 PurchaseOrder dy_purchaseOrder = (PurchaseOrder)DataFactory.INSTANCE.create(PurchaseOrder.class);,SDO与其他Java数据载体的比较,延伸阅读,Jeff Hanson, Coarse-grained Interfaces Enable Service Composition in SOA, JavaOne, August 29, 2003 ZapThink White Paper, The Complete Vision of Service-Oriented Enterprise Management, December 2003 Jason Bloomberg, The SOA Implementation Framework, , April 2004 Jason Bloomberg, When Not to Use an SOA, IBM White Paper, New to SOA and Web Services, www.DeveloperW Meta Group White Paper, Practical Approaches to Service-Oriented Architecture, November 2003 Kishore Channabasavaiah and Kerrie Holly, IBM White Paper, Migrating to a Service-Oriented Architecture, April 2004 作者博客:,SOA时代,
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号