首页 > 人工智能 > 正文

如何恰到好处地分解SOA服务

2010-08-09 18:59:54  来源:CIO时代论坛

摘要:服务分解是把比较长的、粗颗粒的服务分解为比较小的、细颗粒的服务。根据架构的对象,可以创建和应用许多分解规则。这个规则对于架构有巨大的影响。
关键词: SOA

    SOA专家Dave Linthicum说,当你观察那些建立SOA的企业的时候,似乎有一些明显的趋势:他们或者分解的服务数量太多,或者分解的数量不够。SOA的核心观点是把你的架构分解为信息和雨信息有关的服务。因此,SOA中的“S”就是服务。然而,许多人正在把服务分解成太多的部分,或者分解的远远不够。Linthicum说,也许我能提供帮助。

  如果服务分解看起来在SOA中是新的,实际上却不是。事实是,作为一种设计技术,分解自从结构化程序设计的时候就出现了。当时,我们是做流程分解以便在我们把这个设计提供给程序员之前更好地定义系统。

  实际上,服务分解是把比较长的、粗颗粒的服务分解为比较小的、细颗粒的服务。根据架构的对象,可以创建和应用许多分解规则。这个规则对于架构有巨大的影响。这些影响包括:

  ·灵活性

  ·性能

  ·开发时间

  ·再利用

  ·复杂性

  因此,你必须知道什么时候停止分解服务,不管这些服务是否来自现有的系统或者从头建立的系统。但是,怎样做呢?下面是Linthicum提出的服务分解的一些简单技巧:

  1.一定要建立有关服务分解的架构规则,考虑到上述各个项目。一定要把规则写下来并且与其他设计师共享。例如,有人需要确定粗颗粒的或者细颗粒的服务应该是什么样的才能提供需要的性能以及再利用。

  2.作为拇指定律,一个服务应该仅提供一个单项功能,一般不超过500行的3GL代码(如C++)。

  3.例如,验证客户信贷等级(指向一个单独的功能)与处理客户信贷申请(主要是许多功能结合在一起的)。再说一次,这只是拇指定律。

  一定要让开发人员参加服务分解流程。因此,当他们过度分解服务或者分解服务不足的时候,他们应该能够让你知道可用的服务是什么和不可用的是什么。


第四十一届CIO班招生
国际CIO认证培训
首席数据官(CDO)认证培训
责编:

免责声明:本网站(http://www.ciotimes.com/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。