SOA基础架构和项目扩展最佳实践徐春金资深技术顾问ORACLE融合中间件论坛议程•SOA风头正盛•SOA采用阶段与最佳实践•OracleSOA套件•例子•问答SOA风头正盛采用率继续上升总计=62%,一年前为53%(大多数为“将购买”和“企业承诺”)信息来源:ForresterSOA采用阶段与最佳实践5通往工业化SOA之路第1阶段—发现机会最佳实践—使用服务总线调解•客户使用案例:•门户应用程序使用来自后端应用程序的业务服务。•使用基于SOA的体系结构消除点到点耦合。•需要ESB特性:•异构消息处理主干•基于内容的路由•服务丰富•监视和报告•基于SOA的安全性•服务工作负载和管理•消息保证•服务编排•遍及整个企业的分布式服务•服务发现获取客户信息获取客户信息获取客户信息获取客户地址获取客户信用获取客户档案JMSSOAPMQ大型机.NETJ2EE客户端A客户端B客户端C获取客户信息获取客户信息获取客户信息获取客户地址获取客户信用获取客户档案JMSSOAPMQ大型机.NETJ2EE客户端A客户端B客户端COracle服务总线Oracle服务总线•适应性服务消息处理—连接任何服务、任何门户、任何端点•适应性转换—任何有效载荷XML、二进制文件、文本•嵌入式服务管理—所有消息处理的优化治理•丰富的组合环境—配置驱动、无需编码的方法•同类最佳的分布式运行时—可靠性、可用性、可伸缩性以及性能安全性消息处理可见性组合服务传输层传输SDK门户WS客户端BPELJava服务服务服务服务转换发现/验证消息流建模服务调出测试浏览器传输安全性WS-Security控制台安全性策略报表SLA监视信息板开放式界面企业服务总线客户成功案例计划扩展至每天可在OSB上处理100万条消息期望快速扩展至可服务于1200万个客户项目周期从3-6个月缩短至1个月9通往工业化SOA之路第2阶段—系统化BPEL提交订单JSF?激活流程创建应用产品客户(DataHub)BPEL异常管理门户—订单医院(人员工作流)促销管理(业务规则)BAM—异常率SLA管理?订单验证(EJB3.0)最佳实践—企业强度编排层OracleBPEL流程管理器流程控制台管理J2EE应用服务器(OracleAS、WebLogic、JBoss、WebSphere)核心BPEL引擎BPELJDeveloperBPEL设计器BPEL流程管理器集成的BPM服务工作流决策服务传感器DehydrationStore(Oracle数据库)WSDL绑定文件、FTPWeb服务Java、JMS数据库应用程序实现业务流程自动化的企业强度基础架构•易于使用的建模工具•可伸缩的可靠引擎•灵活的绑定框架•丰富的管理和监视功能•支持OracleAS、JBoss、WebLogic和WebSphere流程建模器工作流服务Turkcell服务提供平台体系结构需要使开发、部署和控制增值服务的方法能够得以再利用。TurkcellSDP服务水平要求•2960万订阅者,•900+SMS消息/秒•1200+TPS得到保证利用这一基于OracleSOA的新SDP,Turkcell能够:向第三方内容和应用程序提供商提供一致的接口缩短新服务和市场营销活动的启动时间(从4个月缩短至1个月)通过合理化600+个即席接口显著降低维护成本(50%)服务成本缩减高达75%取得这一成功后,Turkcell推出了若干其他项目,包括统一的客户管理体系结构(每天通过BPEL执行275,000多个交易)•16xBPEL服务器,3x8-CPURAC节点•200名设计人员,300名开发人员,2,300个测试案例•180个BPEL流程,189个接口•每秒240个同步事务和140个异步事务业内好评“”|OracleBPEL流程管理器“”|Oracle业务活动监视OracleSOA套件,荣获2007年技术创新者奖商务软件:企业应用程序和基础架构入选SDTimes100行业排名•业务流程管理•SOA和集成被评为最佳业务流程管理系统OracleSOA套件“卓越奖”•SOA类别中的最高级别•“毫无疑问,是当前市场上最全面、最易于使用的产品”SOAWorldMagazine2007年读者选择奖获得20个奖项中的15项,包括:•最佳SOA/Web服务平台•最佳BPM引擎•最佳集成服务环境•最佳安全解决方案荣获ebizQ买方选择奖企业信息集成OracleBPEL流程管理器•荣获Web服务期刊读者选择奖•“世界级产品”14通往工业化SOA之路第3阶段—企业公共流程元数据模型流程设计与流程优化业务用户(BPMN)开发人员(BPEL)业务流程建模业务用户的可视建模OracleBPM解决方案概述综合平台OfficeBPMStudioOracleBPA套件*内容/图像服务器打包的应用程序、外部服务BPMN(XPDL)、BPELBPM服务器人员工作流规则BAM用户、角色目录建模(BPMN)模拟与优化工作列表用户集成流程信息板协作Office集成组织模型与业务日程OracleBPM套件分析和报表流程模板和解决方案*行业特定的模板图像解决方案标准框架应用程序集成体系结构关键组件•由Oracle融合中间件提供支持行业领先的、基于开放标准的平台•最佳实践流程利用Oracle丰富的经验和最佳实践优化业务绩效•流程集成包现成的、预建的集成Oracle应用产品可用于快速实施业务流程,无任何风险。(即,Oracle电子商务套件的SiebelCRM)•基础包利用与应用程序无关的预定义对象和服务定义跨任何应用程序创建自定义业务流程SOA套件BPA套件ODI服务注册表OracleAS18通往工业化SOA之路第4阶段—衡量Oracle内部机密信息最佳实践—基础架构级别的极限性能、无限可伸缩性Coherence网格版+JRockitRealTime+WebLogicOperationsControl+EM诊断包WebLogic应用程序网格WebLogic服务器、纯Java、.NET、大型机数据库大型机原有的商品虚拟化WebLogic应用程序网格最佳实践—调解层的优化性能与可伸缩性•优化的运行时:直传路由—每小时2000万条消息•监视单个集群中高达2000个服务的开销低于3%•并行操作使TPS提升60%•大型消息支持:500MB消息转换•到SOA套件产品的优化传输•相同的JVM部署最佳实践—支持网格的SOA组合流程流、调解、状态缓存门户BPELMyServicesCRM/ERPCEP规则23451服务供应商BAM服务使用者WS-AddrReplyToCallbackWS-AddrReplyToCallback针对服务基础架构、服务以及应用程序数据的横向可伸缩、状态敏感的连续可用性=服务状态数据23451=会话状态服务编排/非会话状态管道化OSB客户成功案例•结合使用OracleSOA套件与OracleCoherence可跨多个数据源检索数据,并通过门户向销售代表显示•通过在Coherence内为每个销售代表预填前十位客户的信息,将响应时间缩短至不到2秒•使用OracleBPELPM、OracleCoherence以及一个规则引擎构建了一个反洗钱系统,该系统可从银行收集相关的可疑资金转移的信息并通知警方•可疑资金转移网络在Coherence中由BPELPM构建,并使用触发其他流程的规则进行处理23通往工业化SOA之路第5阶段—工业化最佳实践—SOA治理•确保SOA的成功•没有治理,SOA将会失败•随着SOA的扩展,优势更加难以把握•降低风险•确保项目投资可带来业务价值•保持SOA与业务和体系结构的发展方向一致•保证SOA符合业务和IT策略•要实现效率,SOA必须•控制相关性并管理更改的影响•实施策略、建立信任并促进重用OracleSOAGovernance•尽早治理—没有治理,SOA将会失败•应对必要的组织/文化变化•SOA针对系统集成提出了新观点—评估组织对它的准备程度(注:最糟糕的做法是采纳一个如SOA这样的新概念并将其应用到原有的业务执行方式中……这肯定会失败)•促使组织采用SOA治理流程•将治理应用于整个生命周期(从计划一直到退出)•针对您的发展状况采取相应的监视和量度•尽可能自动化且无干扰26调查新兴趋势—事件处理•每年发运2亿多个集装箱—每秒6个集装箱!•每隔3.5分钟推出一个新产品•业务流程自动化导致来自此类事务的数据激增•这些数据流中通常是机会和风险并存•如今,只有更多地了解事件并在事件发生时发现商机,才能赢得竞争优势28事件驱动的SOA数据库应用产品消息处理RFID事件源业务流程事件过滤器与处理器信息板规则内存中数据网格CEP处理器事件分布网络轻型OSGI服务器数据库应用产品消息处理RFID事件源复杂的事件处理高速事件处理SELECTS.city,AVG(temp)FROMSOME_STREAMS[rangeby10slideby5]WHERES.state=‘California’GROUPBYS.city“我希望数据的处理只需10秒钟”“我希望每隔5秒钟就可以生成一个结果”无与伦比的性能和可伸缩性每秒处理100万个事件事件等待时间1毫秒事件驱动的SOA客户示例客户列表其他金融/银行公共部门电信高科技旅游/运输FXall业内好评“最佳的复杂事件处理解决方案”WatersAward“领先的EDA套件解决方案”EnterpriseOpenSourceMagazine“领先的业务活动监视解决方案”GartnerGroupMarketScope“正面”评级“Oracle的BAM简化了信息板”CRN产品剖析“OracleBAM是一个可靠的解决方案”AjaxWorld产品评估OracleSOA套件OracleFusionMiddleware产品战略最高指导原则•Complete完整•Integrated预先整合•Open,Hot-Pluggable开放、热插拔OracleSOA套件•OracleBPEL流程管理器•Oracle服务总线(基于AquaLogic服务总线)•OracleCEP/BEAEventServer•Oracle业务活动监视(BAM)•Oracle业务规则•OracleJDeveloper•OracleWeb服务管理器综合的预集成SOA平台OracleSOA套件应用程序适配器B2B合作伙伴DB原有的连通性路由转换数据质量ETL和复制DataIntegratorOracle服务总线调解路由与数据服务原生BPEL业务规则人员工作流BPEL流程管理器编排CoherenceCacheJ2EE应用服务器(OracleAS、WebLogic、WebSphere、JBoss)消息处理OracleSOA和事件技术治理系统监视企业管理器UDDIWS策略安全性Web服务管理器注册表治理SOA生命周期治理企业信息库JRockitVM&RT实时可见性与处理警报业务监视BAM事件数据流CEP应用程序开发框架企业建模BPA套件JDeveloper业务用户建模BPM套件OracleSOA发展历程PortletWeb服务(WSRP)Web服务支持200120022004200320062005BPEL流程管理器J2EE1.4标准Web服务WSDL、UDDI、开发工具、扩展的Web服务平台服务注册表Web服务管理器、BAMBPA套件2007OracleDataIntegratorStellent文档管理、图像处理Tangosol…SOA套件2008WebLogic服务器ALSB信息库ALBPM事件服务器例子SOA订单处理演示:订单处理购物门户BAM4hr-SLA监视BAMOSBWeb服务接口:XML、SOAP、WSDL、WSIF订单DB服务CRM审批(富工作流)信贷服务选择服务快速服务5-15分钟通知服务OSBBPEL插入订单获取客户信息手动检查?验证信用选择制造商快速查看制造商调用接收调用接收通知客户履行订单决策服务规则信息库规则引擎规则创作者后续步骤Oracle资源•在线—www.ora