是微服务还是SOA?

日期:2015-5-14作者:Christine Parizo翻译:boxi来源:TechTarget中国 英文

SOA   微服务   

【TechTarget中国原创】

专家认为像“微服务”和“12因子app”这样的术语未必是SOA已死的信号,其实只是旧技术换了个新名字。

正如Bon Jovi曾经唱过那样,“一切还是老样子,只是名字改了而已。”对于曾唤起许多架构师、开发者以及IT专业人士对希望交给历史书的大型主机时代回忆的SOA来说,这似乎的确如此。不过根据行业专家的说法,随着微服务以及12因子app这样的术语出现,这些叫法未必就是SOA已死的信号,可能只是换个马甲而已。

“SOA就是微服务,”总部位于科罗拉多州Evergreen市的Savoir Technologies CTO Jeff Genender这样说,他把这一新叫法称为是“给猪涂口红(无用之功)”。SOA在整体应用及实现搞砸的时候收到了不好的名声,用像微服务这样的术语是除掉SOA不好的名声和内涵,同时保持基本原则的手段之一,他补充道。

“这不是微服务对战SOA,而是更好利用了应用分发的前端GUI与部署在单个包之内的对比。这才是值得考虑的差别,”Genender说。这一点是通过超过10年的混搭来实现的,其原因也基本上一样:更多从控制API和GUI做的事情的角度来控制混搭。虽如此,在它下面的架构师RESTful端点或者SOAP端点,由它们反复推送数据,他说。

微服务本身是随着前端Ajax革命而涌现出来的,在这场革命中,开发者利用了Web应用的客户/服务器实现与后端进行接口,而不是通过HTML。这使得开发者在选择前端利用自己API时更加游刃有余,这就是令微服务取得今日地位的差异化因子,据Genender说。然而,它底子里依然是SOA,尤其是因为搞砸了的微服务实现的样子很容易看起来像是曾经部署过的整体应用一样,他补充道。

埋藏SOA的名字,而不是原则

SOA也许是架构,但是这个名字的内涵约束太多,以至于总部位于洛杉矶的SOA Software最近把自己的名字给改成了Akana,公司的执行副总裁Roberto Medrano说。尽管Akana将会组合SOA、微服务以及云集成,但是仍然支持SOA愿景以及API管理和安全,他说。

SOA不会消失:作为架构,其可重用和敏捷性将继续发挥价值,Medrano说。尽管许多开发者正在使用Web服务和API,一切都还是服务且仍将继续是服务,这取决于它是如何实现和被消费的,他补充道。

尽管微服务跟SOA在服务管理和安全方面并不相同,但它还是可以跟SOA和平共存的,据Akana的CTO Alistair Farquharson说。

这两个在颗粒度方面并不一样,微服务关注的是“微观”部分,他说。这使得开发者能够为了可扩充性、负载均衡以及提高吞吐量而分解应用,但同时也引发了打破数据模型以及维护一致性的问题。大多数微服务是部署方法论,他补充说。

微服务可能会变成新的SOA

新的流行语导致开发者和架构师剥掉了SOA的旧皮——出于错误的理由而使用了微服务是有可能的,据Farquharson说。“大家正在为了微服务而开发微服务,而不是为了创建一个好的微服务,”他说。正如API一样,开发者和架构师也许认为他们可以通过微服务修正好应用,而不是最终得到一个更复杂更糟糕的应用。“应用写得不好的人别指望能写出好的微服务,”他说。

至于12因子app,那也不是什么新东西,这是Savoir Technologies的Genender的说法。“这就好比你拿到了SOA的邮票然后重新用微服务盖上,”他说。基本上12因子app只不过是换了一种说法而已,因为它具体化了修正SOA和微服务的方法论,他补充道。

“这让我想起了实用主义程序员宣言的很多东西,”英国的C2B2公司首席顾问Matt Brasier说。“里面说得很多的一个东西是常识而已,即将配置与代码分离。”

然而,12因子app然后进入到了规定实现决定而不是把它留给应用开发者,以及讨论代码和集成。有更好的办法—这往往要考开发者自己判断,据Brasier说。“把实现与架构性原则混在一起很奇怪,”他补充道。

最后结论是,SOA并没有死亡,微服务只是如同《大鼻子情圣》的‘Christian de Neuvillette’。“趋势上说SOA可能己死,但你却可以使用相同的原则,相同的基础技术,以及相同方法,” Brasier。由于项目中企业服务总线而造成了失败,所以开发人员和应用架构师不会再在经理面前使用SOA这一术语,所以说现在是改名运动,他补充说。

这只是对相同的原则进行重塑,Brasier说。但是微服务和12因子app将会走上与SOA相同的道路:当不适合应用时,就会重新塑造。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

评论
查看更多评论

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

作者>更多

Christine Parizo
Christine Parizo

Christine Parizo is a freelance writer specializing in business and technology.

网格计算与云计算>更多

  • ThoughtWorks技术雷达:直指四大趋势

    今天随着智能硬件、 IoT、云计算等等新技术的兴起,使得产品与技术结合在了一起,如产品都嵌入也芯片传感器;另外,商业的创新也完全由技术驱动。

  • 容器技术的间接后果

    本文探讨了为什么和容器技术可能带来的好处比起来可能更容易造成问题。我会尝试在错误发生之前就深入地思考,利用可用的工具来避免错误的发生。

  • AWS OpsWorks交付健壮应用管理服务

    Amazon Web服务(AWS)的 OpsWorks是基于云的应用管理服务,使用AWS OpsWorks,用户能够定义应用架构以及每个组件的规范,包括包安装,软件配置和资源,比如存储。

  • 仅凭SOA和云无法解决业务数据管理风险问题

    SOA和云可以是某些恼人问题高效的解决方案;这一点我们已经知道了。但是也要记住它们并不是所有事情的直接答案,特别是当你的问题是业务数据管理风险,而不是技术问题时。

相关推荐

技术手册>更多

  • 企业架构模式指导手册

    有效的企业架构对企业的生存和成功具有决定性的作用,是企业通过IT获得竞争优势的不可缺少的手段。SOA的目标就是实现灵活可变的IT系统,技术上通过服务组件的标准化封装、复用、松耦合可编排来实现一个一致的IT架构,并通过SOA的治理来实现架构在企业IT运营过程中提供一个策略,来保证架构的实施符合企业治理的需求。这与企业架构的概念、活动、流程和结果方面存在契合点。深入探究就会发现,SOA和EA是相辅相成、珠联璧合的两套方法论体系。SOA要落地,EA是最个最佳的利器。

  • 企业架构师风向标

    企业架构师(Enterprise Architect)是企业IT的总体规划和设计师,他们总揽企业的业务流程、应用、数据、和技术等各个方面,兼分析师、设计师、教师、顾问、监察等数职于一身。好的架构师要具有高屋建瓯的视角,统揽全局的能力,深入的行业业务和技术知识,丰富的开发和实施IT项目的经验。目前在中国的多数企业中,企业架构师仍然是一个新的概念。在这本指南中,我们将为您介绍企业架构师面临的最大挑战和应具备的技能,以及在一些具体领域所起到的作用。

  • Ajax实用技巧完全指南

    Ajax结合了java技术、xml以及javascript等编程技术,是指一种创建交互式网页应用的网页开发技术。ajax源自描述从基于网页的web应用到基于数据的应用的转换。就像新的编程语言或模型伴随着更多的痛苦,开发人员需要学习新的技巧及如何最好利用这些新技术。本技术手册为读者提供了一些很实用的小技巧,如果需要深入学习ajax,读者可以借助其他参考资源。

  • 云集成实践基础教程

    随着面向服务和基于云的架构脱颖而出,IT部门越来越重视良好的集成设计。为了避免过快的云应用集成的潜在危险,需要精心策划架构。随着应用集成需要更多的灵活性和普遍的可适用性,优化设计比以往便得更加重要。在即将到来的云计算应用集成中,以集成为中心的云计算,像iPaaS,显示了云应用者数量的快速增长,未来也将面临着更加复杂的集成和实际挑战。在这本技术手册中,我们将重点关注云集成实践。

TechTarget

最新资源
  • 安全
  • 存储
  • CIO
  • 数据库
  • 服务器
  • 云计算