前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >用户友好的微服务替换单体架构

用户友好的微服务替换单体架构

作者头像
程序你好
发布2018-07-20 18:03:37
3370
发布2018-07-20 18:03:37
举报
文章被收录于专栏:程序你好

你可能会觉得把你的银行的单体架构和弗兰肯斯坦的怪物做比较有点苛刻,但是它们有很多相同之处。

  1. 随着时间的推移,他们被缝在一起,创造了一个巨人
  2. 结果产生的怪物/巨石是巨大的,丑陋的,我们不想面对它,不想花时间与之相处
  3. 他们一开始都很友好,但到最后,他们很难相处。
  4. 如果你做错了,他们都会咬你的

弗兰肯斯坦——他实际上是一个疯狂的科学家,而不是怪物——开始用最好的材料创造一个完美的存在,当银行开始建造他们的单体架构系统时,他们的目标是相似的,在很短的一段时间内,他们的创造可能是他们的需求的完美解决方案。

建造怪物:当单体架构变得丑陋。

这并不奇怪,在金融服务行业,尤其是在企业拥有独特需求和安全的金融服务行业中,这是一个优先考虑的问题。单体架构允许金融服务业务将其架构保持在高度安全的环境中。可以控制访问机会,并将外部资源集成到关键服务中。它将银行或其他金融机构置于其系统的控制之下,不需要外部解决方案,也不需要将业务暴露于不必要的风险之中。

看起来是完美的解决方案,对吧?

也许,只要企业不需要应对变化……

当银行第一次构建其内部架构时,它并没有创建一个怪物,而是在一个主系统中实现了它所需要的所有功能。然而,业务需求在不断地发展,这意味着需要将适应性和附加功能组件添加到这个单体架构的系统中。第一次出现这种情况时,这会是一个简单的过程,因为体系结构已经明确地布局好了。实际上,它甚至可能不是最初几次更改的问题,但是每次发生更改时,系统就变得不那么容易识别,而且更难控制。一条腿拴在这里,一条胳膊拴在那里,甚至可能还有一个额外的头。每一个手术都变得更加复杂,每一针都更有风险。

然后,最终,总有一天,有人会做出改变,不仅打破一块巨石,还会阻止怪兽的心脏。曾经的便利和安全,现在变成了一个巨大的负担,需要几个小时,几个星期,甚至几个月才能恢复。

进行替换

不仅仅是金融机构,更换一个破碎的单体系统对许多人来说都是一个挑战。为什么?因为遗留系统深入到业务的所有部分,包括组织中的人员。这个过程的第一步是承认存在问题,这是一个巨大的挑战。这段对话常常让人感觉很像《弗兰肯斯坦》中的场景:

沃尔德曼:你创造了一个怪物,它会毁灭你!

弗兰肯斯坦医生:耐心,耐心。我相信这个怪物,就像你说的那样。如果你不这样做,你必须让我一个人呆着。

让关键的业务涉众相信现有的结构是不可管理的,并且不能跟上不断变化的业务需求可能是难以置信的困难,但这是向前迈进必须跨越的第一个障碍。第二步是决定替换体系结构。

为什么微服务体系结构能够推动业务变化

说到技术,如果有一件事你可以指望,那就是它一直在进步。每一次进步都会使消费者预期的增加。虽然单体架构有很多好处,但是长期的维护和更新是非常耗时的。在许多组织中,这一努力将更好地用于开发一个微服务体系结构来取代怪物巨石一样的单体架构系统。

微服务不是将所需的所有功能构建为一个整体结构,而是将这个整体分解为一组定义好的服务来处理特定的任务。每个微服务都是独立的、独立的,它允许业务只调用完成每个任务所需的微服务,这使得系统快速、敏捷且易于伸缩。微服务也是与技术无关的,这使得来自多个提供者的服务集成成为一个简单的过程。

微服务体系结构的最大优点之一是,它允许企业测试创新的变化,并非常快速地响应市场需求。如何?通过允许他们的团队更新单个微服务,而不冒破坏整个系统的风险。让我们在一个风险决策环境中看看这个:

一个企业创建一个风险模型,它需要七个数据点来返回一个分数。在单体架构中,对数据源的集成和决策过程都是同一个系统的一部分。因此,当应用程序出现时,它必须通过整个流程来返回一个风险值。这使得决策过程缓慢而难以改变。如果一个企业想要测试新的评分方法或新的数据源,那么它必须对整个系统做出改变。

在微服务环境中,决策过程的每个部分都是自包含的,这意味着系统只需要调用所需的微服务来返回一个分数。因此,当他们想要进行更改、测试新想法或甚至实现一个全新的风险模型时,团队只需要对处理这些任务的单个微服务进行更改。它快速、简单,并且提供了非常高的灵活性。微服务体系结构提供的敏捷性意味着,企业不仅可以自由地承担创新风险,还可以迅速适应风险领域的任何变化,

微服务还帮助企业提供高水平的客户服务,特别是在贷款行业,因为申请可以在一秒钟内获得批准。虽然新技术可能会提高消费者的需求,但它也提供了超越期望值的机会。

避开弗兰肯斯塔克怪物

是的,在风险决策方面,微服务提供了无与伦比的灵活性,但它们必须以正确的方式使用。“科学怪人”一词是用来描述当销售和营销团队将来自许多供应商的工具“集成”到他们的销售渠道时所产生的可怕的体系结构。绑定在一起的服务集合笨拙地组合在一起,不能像预期的那样工作,并导致难以修复的问题。如果业务部门不小心,他们可能会开发出一种微服务“Frankenstack”,如果他们未能充分规划微服务架构的设计。一些潜在的失败点包括:不完全接受微服务、单个微服务过于复杂、安全性差、缺乏知识丰富的IT资源以及性能缓慢。在风险分析环境中解决这个问题的一个方法是使用一个低代码风险决策平台,如Provenir。Provenir平台从开始到结束都处理风险决策过程,包括在平台内部的微服务的创建和安全性以及对外部数据源的集成。该平台还可以使用在低代码用户界面中创建的微服务来支持和自动化现有的贷款发起系统。这个微服务系统使风险决策过程能够极其快速和安全地完成,并且在收到应用程序后的一秒钟内可以计算出风险分数。

从怪物到高性能机器

尽管微服务体系结构仍然涉及将组件连接到一起以提供完整的功能,但有一个关键的区别:微服务不是以一种难看的、难于撤销的方式绑定在一起,而是更像是一种即插即用系统,在这种系统中,流程可以在需要时插入特定的服务。这是一种高效、敏捷和数字化的方法,可以让您的团队创新风险决策过程的各个阶段,从而提高准确性,扩展选项,并帮助您的业务增长。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-06-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序你好 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档