nodejs soa_前5个SOA陷阱以及如何避免它们

nodejs soa

经过5年的设计和构建屡获殊荣的面向服务的体系结构,我想分享一下我的前5位SOA陷阱,以及一些有关如何在SOA程序中避免它们的一般提示。
1.未能认识到面向服务是关于设计(而不是技术)的。
面向服务是网络服务什么对象定位于Java,C#和C ++。 面向服务是设计范式,而不是特定技术。
面向服务是通过在服务设计过程中应用面向服务的设计原理来实现的。 面向服务的体系结构(又名SOA)是遵循这些设计原则的一组精心设计且可重用的服务。 不能仅通过使用与Web服务关联的技术(例如SOAP或REST)来构建面向服务的体系结构。
还是很困惑? 考虑一下来自建筑行业的设计与技术的真实示例。

即使使用混凝土 (该技术)来建造新的办公楼,这也并不意味着该建筑物具有现代主义建筑的设计特征(建筑风格)。 混凝土同样可以很好地用于实现从古典,哥特式到现代主义和国际的任何建筑风格。 现代主义是一种建筑风格,而混凝土只是可以用来实现它的众多技术之一。

因此,仅因为您的技术体系结构中包含SOAP(或REST)Web服务,但这并不意味着您的体系结构是自动面向服务的。 可以创建不面向服务的Web服务,就像编写不面向对象的Java或C#代码一样。
2.无法使SOA与业务保持一致。
如果您提供的服务具有可识别的业务一致性和重用潜力,则SOA的功能将大大增强。 通过提供反映业务活动的服务,可以在业务变化时更轻松地发展和重新配置这些活动。
与客户交谈时,我经常将SOA服务描述为“组织API”。 服务应反映组织的能力,而不是组织内的技术。
我知道实现业务一致的最简单方法是,将架构师和分析师聚集在一起,并拥有共同的愿景和共同的工作实践(例如利用BPMN进行业务和服务分析)。
3.无法与企业共享SOA所有权。
如果企业不致力于持续利用此功能,那么创建灵活,可延展和可扩展的技术服务毫无意义。 同样,如果企业无法发现,解释和重用此API来利用新机会,那么旨在易于重用的服务就毫无意义。
因此,企业应分担设计和管理其技术服务的责任。 此外,查找和重用服务的过程应该简单易行,而不应被神秘和技术复杂性所笼罩。
基本的SOA治理流程和简单的服务存储库可以帮助克服这些问题,并且可以根据组织的文化要求简单或复杂。
4.投资错误的工具和技术。
SOA有很多昂贵的工具和技术,因此很容易在大多数SOA计划的早期就犯下大错误。 为简单起见,这里是我要特别注意的前两项技术……
业务流程管理(BPM)。
BPM系统通常作为一种机制进行销售,以通过持续的业务重组来实现服务重用,但要当心销售人员的华夫饼干。 BPM系统可能很复杂,并不总是答案。 除非您在组织内具有必要的“变革文化”,否则将BPM系统插入购物车不会产生任何效果。 我已经看到人们在BPM系统上浪费了数百万美元,由于文化适应性差和根深蒂固的应用孤岛,这些BPM系统只能使用一次。 在评估BPM时,请务必问自己两个简单的问题。 我们需要吗? 我们会用吗? 如果对这两个问题的回答都是肯定的“是”,那么一定要继续。
企业服务总线(ESB)。
ESB系统通常以“即时服务使能器”或“开箱即用的SOA”的形式出售,但是精明的IT经理应该问“如果我这样做,将为服务使用者提供什么样的服务?” 这些即时ESB服务是经过精心设计并与业务保持一致的,还是只是使用新协议公开现有的旧版或专有应用程序API? 这些新的ESB服务是否具有固有的互操作性和可重用性,还是我将专有数据模型提供给服务客户?
在选择虚线之前,请务必谨慎选择技术,并确保您完全了解专家的利弊。
5.无法创建具有凝聚力的架构策略。
混合和匹配架构策略很少是一个成功的公式。 不同的技术策略具有不同的技术成果,这些成果通常会相互冲突。 例如,说明公司战略是面向服务的 ,同时说明您要标准化一个供应商的集成应用程序套件肯定会带来技术冲突。 如何在供应商授权的环境中创建与供应商无关的SOA? 在分配预算方面,哪个先例? 哪个最能反映您的经营方式? 哪一种提供了最大的灵活性,并最能使您与竞争对手区分开?
在我的书中,最好选择一种策略,一套目标和收益,然后再坚持下去。 保持简单明了。
避免SOA错误很容易:使用(或创建)有能力的服务技术人员。
SOA是功能强大的东西,但这是一个很大且高度专业化的话题。 这并不是说它不是简单的,只是那里有很多相互矛盾的建议,并且认为您可以一步一步地从EAI或OO直接进入SOA而没有专家可以帮助通常是错误的您正确设计和构建SOA。
我总是建议IT经理在任何新的SOA计划的早期就寻求独立SOA顾问的建议。 理想情况下,需要具有提供与供应商无关的SOA培训和认证的专业机构的相关资格的人士。 采用这种积极的方法可以为您节省数百万美元的可避免费用,并保护您的整个变更计划免受许多固有的陷阱。 专业的建议可以帮助确保您所进行的投资获得可观的回报,还可以帮助确保您实现所追求的战略利益。
那是我的前五名,但是您的前五名呢?
参考: 顶部5:SOA陷阱以及如何避免它们。 来自我们的JCG合作伙伴 Ben Wilcock,来自SOA,BPM,Agile和Java博客。

翻译自: https://www.javacodegeeks.com/2012/08/top-5-soa-gotchas-and-how-to-avoid-them.html

nodejs soa

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值