现在的位置: 首页 > 综合 > 正文

浅谈SOA.

2012年11月28日 ⁄ 综合 ⁄ 共 806字 ⁄ 字号 评论关闭
    最近因为系统的扩大,发现以前的软件实在是越来越难维护,每次都要业务经理给我讲清楚业务流程,
我在给程序员讲清楚相关的业务流程,然后才可以进行开发维护.以前的项目经理没有留下任何文档,都要
我来理清业务,书写文档等事情.头大之余在网上看到了SOA,这里谈下自己对SOA的理解.
    SOA实际上是一个体系结构,概念在很多网上都可以搜索到,这里就不粘出来了.按照我的理解SOA实际
上就是将一个程序划分给多个服务,分别来处理不同的业务.例如:一个公司有财务部,业务部两个部门.按
照以前我们开发会创建一个数据操层,一个业务层,一个表示层(最简单的三层).如下图:

图1
需求提出了,因为公司的扩大我们需要将财务部的操作外包给一个公司,业务部的操作外包给另一个公司.如下图:

图2
问题出现了两家公司有牵连的地方了,需要做系统整合.按照以前的做法大家坐一起开会探讨dll的接口,然后回去开发,过段
时间系统整合,大家再坐一起在开会探讨新的dll接口,回去开发......好的问题解决了.
需求又提出了,公司改革将财务部成立为一个公司,业务部成立为一个公司,将财务和业务彻底分开了.问题出现了,现在财务
公司不希望我的一些资料让业务公司知道,而业务公司也不希望他们的一部分资料要财务公司知道.那么我们就不能做成一个
软件了.
SOA提出了一个解决方法.财务公司研发自己的软件提供服务的接口,业务公司研发自己的软件提供服务接口.财务公司如果想
要业务的部分数据直接访问业务公司提出的服务接口就行,业务公司同理.如图3:

图3
问题解决了.如果业务公司更加庞大再分出第二,三家公司,我们也不害怕了,只需访问相应的财务接口变解决了一切问题.
    最后沿用网上有关专家的一段话:SOA 是一种 IT 体系结构样式,支持将您的业务作为链接服务或可重复业务任务进行集成,可在需要时通过网络访问这些服务和任务。
小弟知识有限只能理解到这么多,希望大虾们知道一下,谢谢!

抱歉!评论已关闭.