SOA分析(3)

2020-04-21 02:04

MIS理论专题

务的位置,加入过程使得服务可以把自己注册到查找服务上去。而查找过程帮助客户查找到感兴趣的服务。

发现(Discovery)、加入(J0in)和查找(Lookup)的过程简述如下:当一个Jini服务连入网络时,它就采用组播(muhicast)的方式向网络中发出消息,表明自己的存在。网络中的查找服务则保持监听某个特定的端口,当它监听到这个消息后,就会接收消息数据包,并进行分析,以便决定是否与发送者相联系。

如果它决定和发送者联系,就会通过一个TCP与发送者建立连接,并通过RMI(Remote Method Invocation)向发送者回传一个服务登记对象(service register),发送者通过调用服务登记对象中的register()方法,作为参数上传一个service item对象,这就完成了发现和加入。客户同样通过发现协议(Discovery)获得一个服务登记对象(service register),然后调用服务登记对象的Lookup()方法,作为参数上传一个service template对象,用来作为查询准则。

这个对象含有一个引用指向一组Class objects对象,这些对象指示查找服务,客户所需要的Java类型的service object对象。lookup()方法返回符合客户需要的service object对象。每个service object对象都会实现一个或者若干个客户与服务交互的接口。客户通过引用来使用service object对象,通过这个对象来获得服务。

3.1.4 DCOM组件实现方法

DCOM也采用通用的分布式系统解决模式,与CORBA十分相似。通过对象提供服务的服务器在一个可用的命名目录(活动目录服务)中发布其对象。对此分布式象感兴趣的客户必须知道此服务器提供的多种服务。这通过MS—IDL实现。

服务对象实现了IDL接口。所有本地调用的方法均通过一个称为代理的客户代理来完成,它将完成方法参数和数据的串行化并发送到一个称为桩的服务器对象上,在此要重构此方法及其详细内容。这个桩负责代表客户调用方法并正确的返回结果。由于DCOM规范是二进制级的,它可以将不同编程语言编写的二进制组件加以集成,如C++,Java和VisBasic等。与CORBA不同,DCOM只能基于MicrosoftWindows平台,是Windows—Windows的分布式解决方案

- 11 -

MIS理论专题

3.2 面向SOA的企业应用集成环境

SOA作为一种软件系统架构,主要借助面向SOA的企业服务总线(SOA.oriented EnterpriseService Bus,s—ESB)来实现企业应用的互联互通,复用和业务管理。特别是,目前产业界纷纷推出面向SOA的企业服务总线产品,如BEA AquaLogie Service Bus ,IONA XMLBus ,IBM WebSphere Service Bus 4 等,这些产品立足于提供Web服务运行管理环境,以CORBA J、Java EEl6 等平台为宿主环境,能按应用需求直接开发新的Web服务。

图2为面向SOA的企业应用集成环境的实现图。该实现图主要包括三部分:运行期平台模块,设计开发模块,以及软件治理模块。运行期平台包括服务实现层(Service Implementation Layer),服务总线(Service Bus),服务层(Service Layer)和服务展现层(Service Presentation Layer);设装、发布和管理等;软件治理模块是应用运行时的管理监控环境,包括应用配置、应用监控统计、在线更新、日志查看、工作计开发模块提供一体化的集成开发环境,提供开发、调试、组 流管理监控等各种服务。

- 12 -

MIS理论专题

开发 图像 建模 设计 接口 注册 个性化 会话/表示层 安全 SSO 通道 实施 服务器 管理 服务层 定位 布局 约束 系统 管理 代码 协议 消息 安全 翻译 调试 协议 Enterprise Service Bus 定义 测试 服务实现层 配置 Java EE COM/DCOM CORBA Script Others 数据 分析 文件系统 数据库 LDAP 其它

图2 面向SOA的企业应用集成环境

3.3 企业实施SOA的阶段

SOA 不仅仅是一项技术, 它会影响业务规则和流程, 还经常涉及业务改造, SOA 的规划和实施将是一个漫长的过程。企业实施SOA 面向服务架构通常将经历探索、采纳、利用和成熟等四个阶段:

3.3.1 探索阶段

在探索阶段, 组织开始构建并部署服务而不再是传统应用。探索阶段是有限的,但是应该涉及关键业务系统, 以确保可以从这些早期探索中获得最多的信息。这些早期经验将对组织的各个方面, 包括业务、IT 人员和开发合作伙伴提供帮助, 以了解基于SOA 的应用对其当前关系的影响。

- 13 -

MIS理论专题

3.3.2 采纳阶段

在采纳阶段, 组织首选以SOA 方式开发应用。采用流程、标准和工具组来促进应用的开发, 大部分的遗留系统依旧在使用先前的技术。由于在这一阶段需要迅速培养技能, 按SOA 技能调整的职能性组织最适担当此任。因此可以在此阶段设立项目管理部门、体系结构组、SOA 服务开发部门等。

3.3.3 利用阶段

在利用阶段, 组织实现了重要服务的复用。在这一阶段将建立能够提供高质量的服务, 而不是应用。组织开始提高其要求, 并开始利用基于SOA 的IT 组织的敏捷性。业务流程重构的需求可以被很好的接受, 同时实验性的移植一些遗留系统的应用。

3.3.4 成熟阶段

在成熟阶段, 非面向服务的代码几乎已经消失, 只有少数老的应用继续存在, 以支持业务的次要部分。组织已经擅长创建和重复利用服务, 所有主要的核心系统已经重组成为适当粒度的服务。很多IT 人员将直接转移到业务部门中, 当前重复出现的问题是必须对不断变化的业务需求做出越来越迅速的反应, 而业务部门本身就可以很好地处理这个问题, 而核心IT 部门仍然负责服务的部署和运行工作。

对于实施过程中的每个步骤, 都需要分别确定下面这些内容: (1)系统中哪部分将转向SOA;

(2)创建SOA 的服务的途径, 包括新建应用、重建现有的应用、对现有应用进行适配等;

(3)实施每个步骤所需的预计成本和时间;

(4)该步骤所带来的商业价值, 如减少的上市时间、对可复用服务的投资、减少的维护成本等;

(5)需要实施该步骤的大致时间框架, 不能过早, 以免需求尚未确定, 也不能过晚, 等到出现危机时就会措手不及。在充分了解了每个步骤的详细信息以及商业价值以后, 企业就可以胸有成竹地开始实施SOA 了。

- 14 -

MIS理论专题

3.4实施SOA应注意的方面

在实施SOA的时候应注意以下几点:

(1)有充分的规划。如果仅仅是对现有系统进行整合,或者将服务构建在新的分支机构上,而不是通盘考虑,往往会导致单项计划的成本迅速增加,甚至导致失控。SOA是一项长期的工程,而在项目初期要明确哪些目的是要达到的,哪些目的是下一次才能实现的。最忌讳的是,在项目开始时设计了一个大而全的目标,结果实施越久发现需要解决的问题越多,最后导致项目无限期拖延下去,投入大而长时间见不到效益,让领导和实施者都丧失信心。

(2)SOA实施的切入点。SOA的最佳切入点是CRM。为什么这么说呢?从SOA最基本的概念入手,既然是面向服务的架构,那么我们要面向的是什么服务呢?当然是客户服务。归根到底每个企业都要为客户提供服务,虽然服务的种类各不相同,交付的方式也不尽相同,但有一点是肯定的,没有客户企业无法生存下去。企业内部的各种服务都是直接或间接的为外部服务提供基础和保障的。客户是一切服务最终目标,CRM系统是企业与客户之间的纽带,因此CRM是企业部署SOA的最佳切入点。

(3)要有模块意识。最大可能地将系统模块化,这样通过多次调用降低开发成本,从而获得最佳性价比。只是,模块化思想以及实施与项目初期的规划息息相关,只有良好的长期规划,系统才具有可复制性。

(4)人力资源是重要因素。毋庸置疑,SOA虽然不是新概念,但真正具备成功实施经验的人才还是弥足珍贵的。尤其对于用户来说,不可能一味依靠乙方的力量完成全面转向SOA这一浩大的工程,所以,培养自己的人才队伍对于很多用户来说是个长期工程。尤其刚开始时,不妨拿一些小范围的SOA迁移项目练手,等技术力量成熟时,再进行大一些的项目,循序渐进,逐步成功。当然,这其中不可避免的问题是“为他人做嫁衣”,人才培养出来了,却成为别人挖墙角的对象,损失当然不小。不过,这个问题的解决就像目前用户信息中心人才流失问题一样,需要用体制来保障。

(5)业务化流程。SOA 的目标是将组织的计算资产公开为可重用的业务服务,并实现基本的业务功能,这些功能更容易通过业务流程来使用(重用) 和集成。业务服务和业务流程之间的关系为实现真正灵活的企业服务铺平了道路。而以往的

- 15 -


SOA分析(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:超齐全的胎儿每周发育3D图 12种宝宝禁食食物

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: