本质上,SOA是一个技术概念,至少是从技术角度来的一个概念。
程序设计经历了很多次变革,结构化程序、面向对象程序、分布式程序等等,发现没有,它们有一个共同特点:“打包”。如果没有发现,SOA的特点能帮助你更认识这一点,因为SOA的核心做的事,也是“打包”。
当然,此打包非彼打包,正如每次变革都是对前次变革的变革一样,SOA是对它的前任 --- 分布式计算的变革。顺带说一下,分布式计算主要是指基于RPC(远程过程调用)的一些技术,比如CORBA(通用对象请求代理架构)和微软的DCOM(分布式组件对象模型),还有Java 的RMI(远程方法调用)。
基于RPC的分布式计算由于其紧耦合性,粒度比较细,对网络要求比较高,而且在对不同语言如C++、Java、C#等的兼容很难处理,这些成为了SOA出现的技术理由(SOA是松耦合、较粗粒度的)。
业务方面,IT一直作为引领企业发展的动力,引领了几十年,尤其网络技术更是促发了信息革命。但事过境迁、物极必反、水到渠成、众望所归,IT如今开始成为最拖业务发展后退的地方,IT系统越多,信息孤岛越多,整合和转变越困难,甚至是不可能。SOA顺理成章成为解决这些问题的最好架构,因为,听说SOA过来给不同的系统间打一种叫“Web服务”的包就可以了。
当然,听说只是听说,具体如何实现是专家们的事,本帖是想记录一下企业什么时候需要考虑:可能该搞SOA了?下面是一些值得注意的迹象:
- 关于访问多系统不方便的牢骚越来越多
- 系统支持力度不够的投诉越来越多
- 数据服务的支持力度不足的投诉越来越多
- 关于协同作业中的及时性、信息共享的抱怨越来越多
- 领导发誓要通过数据加强管理效果时
- 企业强烈要求加强项目管理的过程控制能力时
总结一下可以看出,上SOA,企业要已有很多系统,或有可能会有很多系统;同时,这些系统开始不太灵活,跟不上业务驱动力了,或者,有可能跟不上业务驱动力,需要未雨绸缪。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/11908761/viewspace-747941/
,如需转载,请注明出处,否则将追究法律责任。