topoint支点信息化论坛论坛讨论区SOA论坛 计算机技术是为IT人自掘坟墓-原创

返回支点网首页
  1 跳转 浏览次数:2533

计算机技术是为IT人自掘坟墓-原创

计算机技术是为IT人自掘坟墓-原创

计算机技术是为IT人自掘坟墓,比如人工智能,自动编程,呵呵。

接触SOA已经有接近半年了,其间看了不少,总结太少。该写些东西了,夫子说过:学而不思则罔,思而不学则殆呢。

SOA的部署与实施
对SOA是什么的争论就不说了,大家各有各的感觉,各有各的思考,其实SOA不也是希望各种不同体系的东西相互共存才出现的么(BS微软,虽然也很崇拜)?还是要保留自己的感觉,在今后的学习中逐步体会、升华吧。SOA给了大家一个共同的语言,一个交流的基础(BL和LM咋就不能交流呢,呵呵?)但同时也强调了多样性,不论是系统,开发商还是各种应用。曾经在群里面说SOA是为了程序员方便,在业务活动变化条件下,通过把积木(服务,service)按照你的设计图(BPEL)进行灵活的搭配以敏捷的适应企业不断变化的需求。当然,远不仅仅是这样,信息化永远也是企业生产的陪客,在SOA实施的同时是企业业务流程的标准化,新应用的快速接入并与其他应用配合,继而带来经济效益与企业灵活性的巨大变化。

SOA的部署与实施也是人们争论的焦点,有的认为应当从ESB开始,有人认为应当从简单的web服务实现开始,我的想法,这个问题要从多个方面综合考虑:特别是:企业的规模,企业原来的信息化程度。但是我觉得有一点必须注意:ESB这个东西可以实在,也可以是一种概念的存在,作为信息交换的总线,ESB存在的意义是具有特殊意义的。引用BEA SOA专家的话:SOA这种跨组织的特性决定了其建模必须采取一个从企业级视野通盘考虑,系统思考问题的方法。我不想说这种说法一定正确,但是,就我的感受而言,一个统一的数据交换标准以及由此派生的软件开发标准是必要的,没有它们,开发的服务将难以被现有的系统利用(你可以用中间件在自己开发服务与统一数据标准之间进行转换,但是你就是少不了这个统一的数据交换标准)。说到这,我不得不说这点为广大的程序员朋友带来了困难,有人在网上评论说中国不适合搞SOA,因为我们的程序开发能力还很差,缺少系统架构师,后面的半句,道出了其中的真意吧。总的来说,SOA不论从简单的web服务开始,还是从ESB开始都有道理,一个信息化程度高,已经实现数据高度共享的企业,它的SOA部署实施为什么不从ESB开始呢?而对于一个信息化程度低的企业,可以考虑从已有系统(legacy system:一般翻译为遗留系统) 开始,做一些web service,在对这些应用的数据流充分了解的基础上,逐步建设起企业ESB。

关于ESB,怎么说呢,要实现数据共享,这个数据连接层(记得大部分公司把它归于connectivity层次)是极为必要的。这个连接层汇集了两个方向上的企业信息流连接关系:
1) 纵向连接:从最底端的数据采集层到上端的应用层和展示层的连接;
2) 横向连接:应用层中各种业务之间的数据流连接。

实现ESB数据共享也主要有两种方式:
1)
借助于符合数据交换标准描述的大型数据库

2)
借助于中间件在业务数据与标准交换格式数据,采集数据与标准交换格式数据之间进行转换。当然,任何输出或者输入符合此交换标准的应用可以省去这一步。


有了标准的数据,应用就可以开始dps(输出,工作)了,或许你会说直接从数据库中取出数据也可以支持应用的运行,但是在标准数据格式支持下的应用执行却具有了另一个无以伦比的优势,你可以惊讶的发现——它们能交互,能协作了!记得有篇文章中说过:没有联网的计算机是死的;你也可以想象有了语言后人的力量。这些能够交互的应用被称为:服务(service)。虽然你可以写一个hello, world并把它定义为服务,但是服务的确是有粒度的。有兴趣的朋友可以看看“服务颗粒度的困扰”这篇文章,文中对服务粒度的划分有很好的建议:从重用性、灵活性和效率几个方面去考虑。从这儿我们也可以理解一个好的系统架构师对于SOA实现的重要意义。引用文中的一段话总结对服务粒度的讨论:就拿大家常用来描绘SOA的乐高玩具为喻,一个最小尺寸的1x1的乐高积木,带有一个标准的凸起接口,通过它几乎可以与任何其它乐高积木拼装出任意可以想想的物体,其广泛的重用性是不言而喻的。但是当你真正尝试用这种粒度的积木完成一个复杂物体拼装的时候,你可能会感叹:Oh, My God! Its mission impossible!,因为,为此付出的时间和成本的代价几乎是不可接受的。因此,我们在一心希望构建美好的重用世界之前,需要先掂量清楚服务颗粒度的选择。
有了服务我们就必须对它们进行灵活组合以完成企业的要求,而组合这些玩具模块的粘合剂和设计图就是BPEL,BPEL指导我们应当如何连接这些服务,比如你可以把地震数据采集,地震数据输入相应模块反演地下的三维信息,GIS系统这三个服务连接起来以web的形式向用户展示,当然也可以把前面的数据与地化,物探服务联系起来判断是否存在矿产。BPEL给了我们灵活描述这些业务流程(由服务构成)关系的工具,当我们需要变更业务流程时需要的仅仅是对BPEL描述的变更。

上面是我对SOA几个关键层次一点认识,最后我还想对说说另一件与SOA相关的东西,这就是“semantic web”。SOA思想的成功与w3c不无关系,个人认为,甚至可以说w3c造就了SOA。虽然SOA(1997)比语义网络(1998)出现的早,但是大部分SOA实现的使用的数据交换标准却是基于xml的,SOA虽然早期依赖过rpc,CORBA等技术,但那些没有成为标准,这也就限制了SOA的进一步发展。目前,SOA和语义网络目前也更加紧密的联系在一起,w3c的OASIS制订了一系列SOA的应用标准XACML,SAML,WS-BPEL...,IBM也在其SOA模型中添加了元数据信息以及本体描述,记得学校里老师曾介绍说w3c打算在本体基础上构造能够理解语义的搜索引擎,当这些集成在SOA体系中的时候,可以想象将发挥多么大的作用。

总的来说,一旦你走进SOA,那么软件已经不是仅仅与程序员相关的存在,再引用一段话,呵呵。“成功实施SOA的一个重要原则,就是必须充分理解不同利益相关人的角色,理解他们的目标和关注点,懂得他们交流的方式和语言,能够让他们在整个SOA交付和整个生命周期内进行充分的沟通与协作,获得各自需要的相关信息以正当决策。建模作为在传统软件工程中增加抽象程度,简化并分离关注点,增进人与人之间沟通协作的有效方法,对于创建面向服务的解决方案同样重要。”我是在大型企业里面上班的,感觉上面的话很贴切。以上是我对SOA的一点简单看法,也是我第一次在网上发文,希望大家多多拍砖!

不联网的计算机是死的……
 

回复:计算机技术是为IT人自掘坟墓

不错,学习了。
我们一直在努力!
支点论坛,我们的信息化家园!
............................................................................
信息化QQ群:14377396
SOA支点QQ群:868596
销售QQ群:11452239
 

回复: 计算机技术是为IT人自掘坟墓

写得不错,值得鼓励!
 

回复: 计算机技术是为IT人自掘坟墓

记得支点论坛上曾经发过马云说爱迪生欺骗了整个世界,他以懒人为荣,信息技术也同样符合这个懒字决,提高信息技术,必然后淘汰劳动力,楼主所说的自掘坟墓也不为过。
 

回复:计算机技术是为IT人自掘坟墓-原创

赞同楼上的说法
我们一直在努力!
支点论坛,我们的信息化家园!
............................................................................
信息化QQ群:14377396
SOA支点QQ群:868596
销售QQ群:11452239
 

回复:计算机技术是为IT人自掘坟墓-原创

那俺们上哪去混饭吃啊?
 

回复:计算机技术是为IT人自掘坟墓-原创

好贴!值得学习。
 

回复:计算机技术是为IT人自掘坟墓-原创

收起来,慢慢看....
 

回复:计算机技术是为IT人自掘坟墓-原创

.........的确是这样
 

回复:计算机技术是为IT人自掘坟墓-原创

就是这样的。
 

回复: 计算机技术是为IT人自掘坟墓-原创

说得没错
 

回复:计算机技术是为IT人自掘坟墓-原创

只有这样it人士才能达到更高的要求,适者生存,优胜劣汰啊!!!!!
 
  1 跳转

版权所有 支点网 


     

Ziff Davis中国 | 支点网 | 在线研讨会 | digitallife中国 | Howto活动
Ziff Davis | PC Magazine| 1UP | Baseline | CIO Insight | DigitalLife
eSeminars | eWEEK | ExtremeTech | Microsoft Watch
指导:中国软件行业协会管理软件分会
支点网 版权所有 京 ICP020449 

Powered by Discuz!NT 2.0.1214    Copyright © 2001-2008 Comsenz Inc.
Processed in 0.1875 second(s) , 6 queries.
返顶部