微服务与SOA:改进SOA遗留部分

日期:2015-3-18作者:George Lawton翻译:蒋红冰来源:TechTarget中国 英文

SOA   微服务   Docker   

【TechTarget中国原创】微服务是当前比较流行的一种应用开发形式,吸引了不少开发者的关注。前文我们讲了微服务与SOA之与其重用不如抓住敏捷性,本文将继续讲解微服务对SOA的影响。

细粒度的可扩展性

在传统的软件开发周期中,开发一直关注的重点是以整体方在单一的应用服务器上编写应用。这就是Java的工艺所在,应用服务器将下载大量的组件,并把它们像Spring框架一样使用。“问题是随着应用的扩展,不同的应用部署将消耗不同数量的内存或CPU,” Anuff说。

微服务哲学还给企业提供了框架,用于思考如何拆分应用,以一种可扩展成不同部分的应用形式。其中一个较好的方法是把应用拆分成独立的容器,使用内部应用相互通信,而不是使用传统的SOA进行内部应用通信,Anuff说。

有了微服务,电脑的最小单元就是最小的Docker容器,10行的node.js代码。

这使得实现如产品查询这样的服务成为可能,这在特定用户界面的数据库中可查询三个表,以一种容器化的方式。这一简单的服务可以单独扩展,不必拆分应用的其它部分,这可能会产生报告。

改进SOA遗留部分

微服务原则与敏捷软件开发紧密相连,也许是SOA原则的进化,为传统企业服务总线瘦了身。Haddad指出,微服务方法一个限制是,这一服务需要在原子孤岛中实施,这他们就可以独立地操作。“这一概念很有可会扭转企业架构师的大抱负,转变兴趣为在性能和跨领域的观点上,并高效地模型化,”他说。

问题在于,对于工作成立已久的企业中的企业架构师来说,他们需要与大量的现成的(COTS)应用打交道,这些应用通常规模很大,很完整。来自于微服务方法的架构如何能修正在架构和高性能应用上的投资,识别出这一点是一个挑战。

例如,企业COTS应用抑制了微服务方法,因为它捆绑在多个业务功能中。“在时间卡和工资或订单和发票之间,你并没有独立的堆栈。有的只是一个完整的应用程序,” Haddad说。

虽然这种方法有可能为订单和发票提取出两个独立的微服务,但这种方法也限制了微服务范式的实现。问题是订单和发票不能独立扩展,因为他们指向了同一个后端应用。“整个微服务的前提是运转多个后端服务,并分离出不同服务实体之间的解决方案堆栈,这样当他们失败时,也不会影响到对方,另外他们还可以各自扩展,” Haddad说。

最后,微服务并不是什么新东西,只是比SOA好点。据Genender说,“几年来,我们一直构建微服务作为ESB或SOA终端。微服务SOA后端的新术语。由于实现的不好,SOA和ESB对他们也就没有什么好意义, 术语的企业宣传和滥用意味着太多不同的东西。”

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

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

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

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

评论
查看更多评论

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

作者>更多

George Lawton
George Lawton

TechTarget中国特约作者

SOA开发>更多

  • 故障注入注定要成为软件专业人士的必备技能

    尽管云改善了企业迅速发布高质量、高能力应用的能力,但专家警告说要小心这些应用会变得太复杂,难以进行人工测试。

  • 容器与微服务要“联姻” 你对它们够了解吗?

    在虚拟化和云计算领域,容器大概是发展最快、最广为令人兴奋的技术了,微服务则紧随其后。如果把这两大技术结合起来会碰撞出怎样的火花呢?

  • 事件驱动框架和SOA在空军的应用

    空军正在利用SOA来改善数据共享,并实时跟踪战机,美国空军机动司令部的Michael Marek解释了企业可从中学习的经验。

  • HTML5促进企业移动化服务走向极致

    在企业困扰于传统移动化方式过于复杂时, HTML5凭借其天然的跨平台特性,乘势而起并逐渐得到企业的关注。可是,由于HMTL5标准建立时间不长,展示性能及稳定性更是需要和浏览器有一个良好的兼容,除此之外企业更是缺乏实际应用经验,所以基于HTML5技术的企业级服务市场还处于一片初创状态。

相关推荐

技术手册>更多

  • 企业应用集成EAI

    EAI(企业应用集成)是将基于各种不同平台、用不同方案建立的异构应用集成的一种方法和技术。EAI通过建立底层结构,来联系横贯整个企业的异构系统、应用、数据源等,完成在企业内部的 ERP、CRM、SCM、数据库、数据仓库,以及其他重要的内部系统之间无缝地共享和交换数据的需要。有了EAI,企业就可以将企业核心应用和新的Internet解决方案结合在一起。

    EAI(企业应用集成)将进程、软件、标准和硬件联合起来,在两个或更多的企业系统之间实现无缝集成,使它们就像一个整体一样。

  • 敏捷扩展:大型网站项目最佳实践

    其实从某种意义上讲,敏捷软件开发是自身成功的一个牺牲品。随着项目的进行,焦点一直集中在需求定义上,一边编写一测试,一边交付工作软件的各个部分,所以可以看出敏捷是多么好,以致于许多组织都在试图扩展它的使用,而不仅只是局限在单一的团队项目中。但怎样才能把敏捷方法从小项目转移到大型项目中呢?

  • SOA与MDM知识解析

    大多数企业领导人都同意这样的观点:数据是重要的战略资产。因此,有效的信息管理一直是令人难以捉摸的问题。通过正确地使用SOA架构,企业能够利用自己现有的系统,在保持这些系统基本不变的同时为各种单独的应用程序之间有效的信息共享创建一个新的集成解决方案。本技术手册对于SOA与MDM知识进行了简要解析。

  • 复杂事件处理CEP教程

    在金融服务和其他行业中,如何使那些重要且具有战略意义的业务信息以高速数据流的方式到达企业变得尤其重要,而复杂事件处理(CEP)就是这一过程的代名词。复杂事件处理具备了分析高速数据流并鉴别重要事件的能力,虽然对这些事件的鉴别过程是复杂的,但结果却是无价的。下面我们就来介绍一下复杂事件处理。

TechTarget

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