BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

EA与SOA概念辨析和实施应用建议

| 作者 王翔 关注 0 他的粉丝 发布于 2007年7月26日. 估计阅读时间: 4 分钟 | GMTC大前端的下一站,PWA、Web框架、Node等最新最热的大前端话题邀你一起共同探讨。

EA和SOA作为频频出现的两个名词,在概念、活动、流程和结果方面存在重叠,作为设计师或者架构师的我们该怎么看待和实践它们呢?近期,IBM developerWorks中国网站上发布了一个帮助理解SOA与EA(Enterprise Architecture,企业体系结构)的系列文章,试图分析这两个概念。

EA 除了是体系结构外,更多的是一个规程,同时强调通过需求获取,定义IT与业务策略的结合;SOA也是一个体系结构,主要是根据企业需要对资源进行关联,与EA不同的是,SOA中所有资源都是统一的服务形式。两者普遍采用层次方式组织体系结构,其中EA概念由于提出的比较早,而且不同厂商都有自己独立的方法论,因此EA中还在层次体系上纵向划分出很多视图(微软称之为面向业务的概念视图、面向应用的逻辑视图和面向部署的物理视图;IBM则称之为面向各类技术领域的技术性部分和面向业务的业务性部分)。但如果把EA和SOA的每个领域剖开看的话,还是有很多不同:

领域 SOA框架 EA框架
业务 业务流程 业务体系结构
应用程序 服务与组件 应用程序体系结构
集成与中间件 集成体系结构/ESB 技术体系结构
数据 数据体系结构 信息体系结构
操作 QoS、安全性、监视和基础设施 技术体系结构

不难看出,SOA的每个领域都只是EA对应领域的一个细化,出现这种情况也很容易理解,因为技术上SOA调用的资源仅仅是服务,而这只是EA中资源的一种形式而已,因此从每个层次上看,SOA都是服务化的特例。以环境集成而言,SOA使用ESB进行服务的集成,但在EA中除了基于服务的集成外,还可以从通过很多手段集成:

  • 数据的集成:在很多企业中,这种方式使用的非常普遍,由于网络隔离、应用建设时间先后、开发平台等因素,企业内部应用林林总总,但关键的数据(尤其是核心业务数据)总是处于中心位置,应用间围绕数据进行集成。
  • 功能性集成:在多个应用采用相同开发平台的情况下也非常普遍,比如.NET平台可以通过WCF、.NET Remoting、COM+完成;Java平台可以通过EJB、RMI等方式集成;简单的跨平台的技术也很多,比如Socket。
  • 展现的集成:这个在Web应用大行其道的今天,也很常见:企业增加新Web应用后在Portal上加个超级链接,这样通过UI部分的穿针引线同样可以集成。

这样看,SOA似乎只是EA中“术业有专攻”的一个分支而已?不尽然。文章的第二部分说明了SOA在体系、治理上与EA的诸多不同之处。

那么作为用户而非IT厂商的我们该怎么选择呢?

  • 如果信息化仅仅是平地开始建设,还没有到需要应用间互相整合的时候,识别出关键IT资源,根据未来的IT规划选择一个近期预期集成方法倒是很经济的做法。EA等于企业给自己提供了更多的选择机会。
  • 如果已经有了一定数量的应用,出现了统一整理的需要,但所有的开发均基于单一的开发平台(.NET或Java),也不用盲目赶时髦走SOA,也许一个企业内部的集中数据交换平台从成本上、运行管理上、投资和执行效率上都是不错的选择,用EA的观点分析企业内部自己的事情。
  • 如果企业运转依赖于Internet上的各个合作伙伴,但是企业内部应用很单一,也不一定用SOA,关键业务资源暴露为服务就可以了。但要注意这些服务的标准化(公共标准和行业标准),这样如果有一天需要过渡到SOA的时候,也可以开着汽车换轮子。
  • 如果企业应用类型、开发平台、运行平台、消息机制已经很繁多的时候,与其作个乘法不如做个加法,把大家都连接到服务总线上,用SOA中“服务”这个实施上相对简单的概念解决复杂的“大麻烦”。

还有一点,就是一定要算经济账,无论是EA还是SOA,三五年后肯定又会过时,用EA或者SOA的观点规划IT与业务远景的契合是必要的,但现在就把自己的IT环境大动干戈地折腾一下,“划算”吗?

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT