SOA的一个很大的价值就是整合多个系统比如,人力资源管理,OA、固定资产、采购管理等等。其中一个很重要的需求就是这些系统都建立在统一的一套组织架构管理之下,而不是人力资源管理,OA、固定资产、采购管理等等这些系统的组织结构互相独立,不同的系统采用不同的用户名和密码。虽然大家可以用SSO或者单点登陆来实现统一登陆的问题,但是单点登陆是用来整合历史遗留系统的,而不是鼓励大家每套系统都采用自己的组织架构和权限控制。
咱们先说一个场景:比如现在用户迫切要求统一所有的组织管理,即任何系统都必须建立在一个组织结构下,而用户的各个系统又分布在地理位置不同的数据库里。SOA的一个很大的卖点就是提供整合这些异构系统之间的架构,
所以大家肯定会想到采用SOA的架构去实现,首先人力资源管理采用SOA的架构,抛出一些Service,比如得到所有的员工、部门等组织结构树,由一个员工ID,得到员工的所有信息。这个架构是没有问题的,却可能给别的系统带来严重的性能问题。比如:固定资产系统,固定资产卡片,要求所有的固定资产卡片上都必须记录 卡片编制人,编制部门,审批人审批部门,咱们通常只会记录人员和部门的ID值,如果在一个数据库里,直接通过SQL语句的关联查询,就会由ID得到员工和部门的名字,现在采用SOA架构,每一行数据都需要远程访问一次人力资源管理的Service,由ID得到名字,如果这样做很傻的话,有人可能想到先一次远程服务,得到所有的员工、部门列表,再写一个Service,由ID得到名字,但是这个和传统的数据库,做关联查询,由ID得到名字的效率差距还是甚远的。
推而广之,物资系统采用统一的物资编码,别的系统都不须有物资编码基础表,而必须建立在一个物资编码基础表基础之上,这些系统之间的数据库互相独立,那么,SOA究竟能给这些系统带来什么样的价值呢?
传统的数据库可能无法解决上述问题。而XML型数据库可能是解决这个问题的答案。SOA必须建立在真正的XML型数据库上,才可能发挥其整合异构系统架构的巨大作用。
相对而言,关系型数据库解决了固定流程下效率的提高,对于信息简单、处理数量巨大的应用来说,关系型数据库是最好的选择。关系型数据库与层次型数据库面对了两种不同的世界,前者是企业单一信息应用的王者,后者的强项是企业内不同应用之间、不同企业之间的信息处理。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
作者
相关推荐
-
事件驱动框架和SOA在空军的应用
空军正在利用SOA来改善数据共享,并实时跟踪战机,美国空军机动司令部的Michael Marek解释了企业可从中学习的经验。
-
揭秘New Relic APM技术细节
New Relic应性能管理(APM)套件主要用于Web软件开发。它允许用户在面向服务的架构(SOA)上跟踪关键事务性能,并且支持代码级别的可见性来评估特定代码段和SQL语句对性能的影响
-
仅凭SOA和云无法解决业务数据管理风险问题
SOA和云可以是某些恼人问题高效的解决方案;这一点我们已经知道了。但是也要记住它们并不是所有事情的直接答案,特别是当你的问题是业务数据管理风险,而不是技术问题时。
-
如何避免云计算与SOA冲突