`
kadvin
  • 浏览: 8929 次
  • 来自: ...
文章分类
社区版块
存档分类
最新评论
阅读更多
  昨天与两个同事聊到SOA,由于大家都有在电信领域开发的背景,讨论中形成了对SOA较为准确和生动的理解,特写此文以记之。
  现在SOA的话语权主要集中在IBM,BEA这样的大公司手里,在我看来,他们最擅于将简单问题复杂化,用时下流行的话说,叫做"忽悠",愣是可以把一个简单的SOA,划分若干个看似NB的组成要素,再冠以SOAP, WSDL, UDDI, ESB等很神秘的词汇。

  在电信网络中,同一种设备,一般由不同的厂家生成,同一个网络中,往往有多种设备,多个厂家提供,但运营商又需要对这些设备集中,统一的管理,这样的现状和需求,催生了一个重要的管理架构,这个架构名字很简单,叫做MA结构。

  MA的原理也很简单,M就是Manager, A就是Agent,每个设备,除了需要实现自己的业务功能(如路由器的业务功能就是路由功能)以外,还要让自己能够融入到网络中,让上级的网管(Manager)能够管理,所以往往这样的设备,还需要附带一个Agent,这个Agent将本身的被管功能暴露给上级的网管。

  展开一下,MA结构是可级联的,有些实体(软件或者设备),它作为下层实体的Manager,同时又是上层实体的被管实体,其自身又需要附带Agent,这些关系,有时候也用南向,北向接口指代,南向就是本实体和下层被管实体之间的接口,北向就是本实体和上层管理者之间的接口,MA就是站在这两种接口两侧的对象。

  回过头来看现在的SOA,在我们看来,其本质就是软件产品的Agent,让软件像硬件那样具有互通性。

  由于设备的标准化较高,定制化程度较低,所以,设备软件的模块化,集成化较高,相应的这些方法论也早于一般应用软件和业务系统。

  从SOA宣称的各种功能和好处来讲,本质上要求上SOA的软件系统像设备一样开发,系统内部功能自行开发,系统要以标准、统一的接口与外部集成,WSDL的服务定义,与SNMP的MIB定义何其相似。在设备的开发中,SNMP等协议早已相对完善,其中所涵盖的内容,包括命名,建模,服务的定义和发现,通讯协议栈,和SOA的内容也差不多,只是用于不同的层面。
分享到:
评论
40 楼 allaneiaaa 2008-08-25  
soa面向服务 基于行业流程的。然后在其流程上规划和抽象一些接口。形成可插入的服务节点,“节点服务的提供”可以组件化。 它的主要思想就是要,贯穿业务的整个主线流程。
39 楼 jackey3316 2008-07-11  
个人觉的SOA是一个企业级信息或者系统整合的一个思路,用对了地方,自然是复杂的问题简单化。

而如果应用范围局限,甚至大才小用了 ,自然像lz那样想的  简单问题复杂化了。

这也是IT业的发展趋势决定的。

以前一个应用都没有,当然先要开发系统,有几个系统了,就开始考虑用组件来架设新系统,再多了,就要考虑按服务来构建环境了。
38 楼 ss1 2008-07-11  
呵呵,还是不明白,SOA是什么东西
37 楼 tangchaodong 2008-06-11  
kadvin 写道
  如果你做一个设备,一开始就从你的被管特征着手,描述清楚产品的北向或者说被管接口,建立完整的信息模型和管理接口,这个是不是SOA中的自上而下的方式呢?原理应该是完全一样的,SOA最要不得的就是明明只是一个Agent的功能,非要把自己打扮得像个救世主。

  我个人不是说SOA不好,而是说,不要盲目扩大它,有需要和其他软件集成的软件,应该学习设备的开发那样,系统内部改用C用C,该用Java用Java,对外装个标准的Adapter即可。
  最怕有些软件,一辈子不会和其他的软件集成,非要在自己系统内部上SOA,搞得庞大又笨重。




恩,对外主要是用,对内怎么方便怎么实现就行!
36 楼 zhuyx808 2008-06-11  
SOA说白了就是公共接口更加抽象,直接抽象到面向服务,是一个系统架构
35 楼 zhufanamo 2008-06-07  
跑个题~ 帮个朋友做去见一个政府的客户,接类4于办公流的项目小几w
他们的要求是用j2ee实现, 用websphere ,工作流 , soa

他们懂个嘛j2ee? 这些光鲜的名词那里来的~~

所以还是要感谢ibm,bes这些公司,提高整个行业的价值..有他们起个大头,下面才有的吹呀

你说一个weblogic 只卖个几十块,你让其它人怎么混
34 楼 aleigood 2008-05-20  
lz is a zter?
33 楼 gblyh 2008-05-20  
现在我们团队是做移动增值服务平台的,对楼主的意见很有同感,因为经常要处理不同企业开发的增值应用,有的是webservice的接口,有的是jms,tuxido等等,还有的直接就是post,需要为不同的系统提供消息转发,服务管理,并开放一些自有接口给其他系统使用,最后归结到在这个系统之上做一套电子商务的应用,因此体会了SOA的设计思想对于后续开发效率和业务敏捷起到了推很好的动。
32 楼 taelons 2008-05-15  
<div class='quote_title'>kadvin 写道</div>
<div class='quote_div'>在我看来,他们最擅于将简单问题复杂化,用时下流行的话说,叫做"忽悠",愣是可以把一个简单的SOA,划分若干个看似NB的组成要素,再冠以SOAP, WSDL, UDDI, ESB等很神秘的词汇。<br/></div>
<p>IBM们做一个"hello world"的SOA的demo,很多同学以为是把“简单问题复杂化”了<br/>其实SOA恰恰是为了把"复杂问题简单化",只是同学们还没有做到那一步,或者说中国企业还没有达到那境界,所以会觉得一辈子也用不上SOA<br/>现有业务,接着才有技术<br/>做SOA是做企业,而后是做技术</p>
31 楼 abang 2008-05-15  
SOA是一种规范,规范了系统集成的一些概念、方式和方法。

在SOA概念出来之前,大家其实在各个领域都遇到过也作过类似的东西,所以就有了楼主“将简单问题复杂化”的说法,但是那个时候概念并不统一,大家各叫各的,如果两个领域的人凑在一起要完成一个项目,在很多事情上沟通是一件比较费劲的事情。

我想,SOA的出现很大的原因是为了统一思想、统一概念,方便大家沟通,方便集成。

PS:制定规范、标准正是一流公司极力做的事情。每个人将这些理解了之后转化成自己的语言,其实就是一个很简单的东西。

30 楼 strgo 2008-05-15  
楼主有一部分观点我比较看重,比如讲到MA相关的。
前些日子,我去参加BEA的DEV2DEV  Java2SOA的上海交流会,恁是被他们熏陶了半天,说到底就是对他们基与Eclipse的开发软件,专门来实现SOA相关的,感觉有点过于注重图形化了,PRO的CODE估计快被他们忽略光了,个人不喜欢这样的情况。我喜欢硬编码,心里比较实在,生成的东西不踏实。
上面一个所谓的BEA经理在上面演示一个简单的订单实例,偶将工程建错了包,调了半天没有调好,最后才发现问题所在。其实一看就知道他不是做技术的,也许是开始做了 一年技术然后就去做市场去了,后来他的助理演讲下一段,感觉比较好,感觉就不一样,做技术的人看的出来。
我看了大家谈论的上面谈到的,又了解不少。有一点我觉得应该提出,SOA的出现是要去实现什么,并不是要去取代什么。我们的心态应该在用SOA去实现。SOA里面的那个总线的管理方式个人比较欣赏,但是比较不苟同那个基于Eclipse的开发工具。不喜欢。
29 楼 hantsy 2008-04-29  
SOA=Same Old Architecture
BEA提出SOA时一个老外的解释。
28 楼 shikonglaike 2008-04-29  
站在不同的角度来看,每个人的理解都可以是对的。
27 楼 bonny 2008-04-28  
同意lz的观点,简单健壮 适用性和生命力更强,而且已经得到验证。
26 楼 小嘴看世界 2008-04-28  
SOA只是对流程的阐述 并没有具体的技术实现
那些个大公司搞得东西是都很好很强大 对行业发展肯定是有意的
25 楼 hongsoft 2008-04-26  
<div class='quote_title'>kadvin 写道</div>
<div class='quote_div'>  昨天与两个同事聊到SOA,由于大家都有在电信领域开发的背景,讨论中形成了对SOA较为准确和生动的理解,特写此文以记之。<br/>
  现在SOA的话语权主要集中在IBM,BEA这样的大公司手里,在我看来,他们最擅于将简单问题复杂化,用时下流行的话说,叫做"忽悠",愣是可以把一个简单的SOA,划分若干个看似NB的组成要素,再冠以SOAP, WSDL, UDDI, ESB等很神秘的词汇。</div>
<div class='quote_div'><br/></div>
<div class='quote_div'>------------》这里说的是武断了点。<br/>
<br/>
  在电信网络中,同一种设备,一般由不同的厂家生成,同一个网络中,往往有多种设备,多个厂家提供,但运营商又需要对这些设备集中,统一的管理,这样的现状和需求,催生了一个重要的管理架构,这个架构名字很简单,叫做MA结构。<br/>
<br/>
  MA的原理也很简单,M就是Manager, A就是Agent,每个设备,除了需要实现自己的业务功能(如路由器的业务功能就是路由功能)以外,还要让自己能够融入到网络中,让上级的网管(Manager)能够管理,所以往往这样的设备,还需要附带一个Agent,这个Agent将本身的被管功能暴露给上级的网管。<br/>
<br/>
  展开一下,MA结构是可级联的,有些实体(软件或者设备),它作为下层实体的Manager,同时又是上层实体的被管实体,其自身又需要附带Agent,这些关系,有时候也用南向,北向接口指代,南向就是本实体和下层被管实体之间的接口,北向就是本实体和上层管理者之间的接口,MA就是站在这两种接口两侧的对象。<br/>
<br/>
  <span style='color: #ff0000;'>回过头来看现在的SOA,在我们看来,其本质就是软件产品的Agent,让软件像硬件那样具有互通性。<br/>
<br/>
<span style='color: #000000;'>  由于设备的标准化较高,定制化程度较低,所以,设备软件的模块化,集成化较高,相应的这些方法论也早于一般应用软件和业务系统。</span></span><br/>
<br/>
  从SOA宣称的各种功能和好处来讲,本质上要求上SOA的软件系统像设备一样开发,系统内部功能自行开发,系统要以标准、统一的接口与外部集成,WSDL的服务定义,与SNMP的MIB定义何其相似。在设备的开发中,SNMP等协议早已相对完善,其中所涵盖的内容,包括命名,建模,服务的定义和发现,通讯协议栈,和SOA的内容也差不多,只是用于不同的层面。</div>
<div class='quote_div'>---》这里说对了一部分,但是只强调了 EAI部分的思路,没有说出 SOA的  统一流程规划 方面的思想。 SOA比EAI还是要多一点内容。<br/></div>
<div class='quote_div'><br/></div>
<div class='quote_div'><br/></div>
<p> </p>
24 楼 xiaolin0105 2008-02-04  
soa是忽悠人的,没什么高深的,只是一种生产手段。
23 楼 Michael.zhl 2008-01-30  
SOA一个概念而已,说难能说出一堆来.说简单一句话概括了.
其实没什么.几个不同的WEB服务.通过xml交互,集成为一个系统.就可以说是SOA.
22 楼 jackieAlb 2008-01-30  
SOA就是对设计模式  Proxy+Adapter的系统的诠释
21 楼 agile_boy 2007-12-31  
赞同LZ的类比,但是SOA有其自己的特色和环境,也有其诞生的背景。
BTW:我也是做Telecom行业开发的,有时间多交流。

相关推荐

    SOA作业及要求,soa

    SOA,即Service-Oriented Architecture(面向...通过这次作业,不仅能加深对SOA理论的理解,还能锻炼团队合作、项目管理和技术创新能力,是一次宝贵的学习机会。希望所有参与者能够全情投入,共同探索SOA的无限可能。

    SOA.rar_SOA_SOA 开发

    尽管XFire已被更现代的框架如Apache CXF取代,但它仍然为我们提供了一种理解SOA概念和实践的途径。在学习SOA时,理解服务的定义、服务间的通信以及如何使用像XFire这样的工具来实现服务,都是非常关键的步骤。在实际...

    SOA.zip_SOA optical_SOA 光_SOA 半导体_VPI SOA仿真_光放大

    通过MATLAB接口,用户可以编写代码来控制VPI模拟,从而深入理解SOA的动态行为。 在提供的MATLAB文件"SOA.m"中,我们可以预期找到一个详细的SOA仿真模型,它可能包含了以下部分: 1. **增益模型**:基于半导体材料...

    SOAOperation_soa开发_SOA_teamcenter_TeamcenterSOA_

    例如,`SOAOperation.java`可能就是一个Java类,它包含了对Teamcenter SOA服务的调用,实现了创建item、创建folder和查询属性等功能。 在实际应用中,Teamcenter的SOA服务可以帮助企业实现以下目标: 1. **系统...

    通过一个真实故事理解SOA监管

    如果能够举一个例子,那么大家就容易理解得多。恰好昨天在书上看到一个真 实的故事,很形象地说明了SOA监管的意义。所以不妨跟大家分享一下。这个故事是关于Sun的,当然这类事情实际上曾经发生在很多大型公司里。

    SOA面向服务架构

    通过对SOA的关键特性的理解及其应用场景的了解,可以帮助企业更好地利用这一架构模式来提高业务灵活性、降低开发成本并提升服务质量。同时,也需要关注SOA实施过程中可能遇到的挑战,采取相应的措施来克服这些难题。

    微软SOA架构介绍,便于大家理解SOA

    ### 微软SOA架构介绍 #### 一、SOA概览 面向服务的架构(Service-Oriented Architecture,简称SOA)是一种设计思想,它...通过对SOA的理解和实施,企业可以更好地应对快速变化的市场需求,实现业务的持续增长和发展。

    SOA principles & practice(SOA课程课件 10章)

    最后,通过真实的SOA项目案例,展示SOA在不同行业和场景中的应用,帮助学习者理解SOA在实际工作中的价值和挑战。 通过这套详尽的SOA课程,学习者不仅能掌握SOA的基本理论,还能了解到实际项目中的最佳实践,从而...

    SOA 培训资料 对理解有用

    ### SOA治理基础知识点 #### 一、SOA概述与治理的重要性 - **SOA(Service-Oriented Architecture,面向服务架构)**:是一种设计原则和技术框架,它将应用程序的不同功能单元通过通信协议进行集成,使得这些功能...

    SOA的反思:SOA架构的本质

    ### SOA架构的本质 #### SOA的基本概念与理解 ...然而,成功实施SOA需要对业务流程有深入的理解,同时还需要解决一系列技术挑战。因此,企业在考虑采用SOA时,应当进行全面的评估,并制定详细的实施计划。

    SOA资源.rar

    通过阅读和理解这些代码,不仅可以加深对SOA技术的理解,还能提高实际编程能力。 总的来说,"SOA资源.rar"为学习者提供了一个全面了解和实践SOA技术的平台,从基本概念到高级特性,从理论到实践,都得到了充分的...

    soa心得体会soa心得体会;

    通过对SOA的学习,我们可以深入理解其核心理念和实施带来的好处。 首先,SOA是一种组件模型,它将复杂的软件系统分解为独立的服务,每个服务都有清晰的接口和契约,这些接口定义了服务之间的通信方式,而服务本身则...

    SOA的设计误区(SOA架构师必读)

    例如,SOA的端对端、多层面特性意味着设计问题往往是结构性的,不是简单的配置或编码调整就能解决,这要求架构师对各层面的依赖关系有深入理解。另外,SOA设计中的任何失误都可能影响全局,导致高投资回报率的丧失。...

    IBM soa 培训教材-SOA 治理

    为了更好地理解 SOA 治理的重要性,我们可以参考一个具体的案例。假设某公司推出了一个货币兑换服务,最初该服务只面向财务部门,但随后其他部门也开始使用这一服务。由于缺乏有效的治理机制,导致了以下问题: 1. ...

    SOA发展历史介绍SOA的发展

    **SOA(Service-Oriented Architecture,面向服务架构)**是一种软件设计范式,它强调通过独立、可重用的服务来构建系统。自20世纪90年代末被...通过深入理解SOA,我们可以更好地设计和构建适应未来的企业信息系统。

    理解SOA中的服务生命周期-运行时

    这篇文章将探讨SOA服务在运行时的生命周期,以提高对这一阶段的理解。 首先,共享服务生命周期(SSLC)模型如图1所示,为整个讨论提供了指导框架。在运行时阶段,服务工程团队需确保服务能够有效地在实际环境中运行...

    普元提出的中国soa任务

    普元,作为中国知名的IT解决方案提供商,对中国SOA的任务有着深入的研究和实践,其目标是助力中国的中小型企业和个人更好地利用SOA的优势。 一、SOA的基本概念 SOA的核心理念是将复杂的系统分解为一系列可重用的...

Global site tag (gtag.js) - Google Analytics