低头赶路,抬头看天,让我们跳出细节来看看微服务的本质是什么?老兵哥觉得:微服务,是一种更优的分工合作机制,加速分工,促进合作,帮我们成就更大的梦想!为什么呢?请看我近些年推广微服务架构过程中收获的心得体会!

在云计算这波科技巨浪的推动下,各行各业都加快了数字化转型的步伐。微服务,作为云原生应用的推荐架构,对每位IT行业的从业者来说都不会陌生,大家都听说过大量有关微服务架构优势的介绍,也知道典型的微服务架构包含哪些关键部件,对业界主流的微服务框架产品也有所了解。看了这么多,了解这么多,心里定会有不少惊叹号,也会有不少问号:要不要引进微服务架构呢?如此庞杂的技术栈该从何处着手呢?逐步演进还是一步到位呢?

这些问题让站在路口的我们踟蹰不前,到底该往左,还是往右呢?云原生技术栈属于应用科学范畴,如果我们找到了采用这些技术的内驱力,花些时间学习和实践,大家都可以掌握这套技术栈,毕竟应用技术对我们来说并不难,问题的关键在于找到那个说服打动自己的理由。近两年,我在推广微服务架构的过程中不断思考这个问题,如何帮客户找到采用新架构的内驱力,现在将这些答案梳理出来供大家参考,希望可以帮你找到爱上微服务的理由!

如下表所示,相较于单体式架构,微服务架构有不少优点,但也伴生着许多新问。在优劣势相持不下的情况下,我们很难决策是否采用这套新技术栈。既然根据具体的对比分析拿不定主意,那我们可否跳出问题来探寻答案呢?就像在穿越森林的过程中,你面前突然出现了好几条岔道,机会和风险并存,如果不清楚每条道会把我们带向何处之前,任何选择都是赌博。此时,我们需要登上高地,或山顶或树冠,打探出每条道的走向,这样才能选出正确的道路,然后全力以赴。接下来,我们一起来探究一下微服务的本质是什么?它背后蕴含着什么样的架构发展趋势?

单体式与微服务对比

2014年以色列新锐历史学家尤瓦尔·赫拉利出版了一本书:《人类简史:从动物到上帝》,非常流行。在书中作者剖析了我们人类从猴子一步一步演化为万物之灵的过程。在地球上,人类文明是最高级的,相较于其他物种,我们就像造物主,想要什么东西我们都可以建造出来,也可以按照意愿改变生存环境。为什么其他物种不行,只有人类可以呢?因为只有人类会做梦,也就是我们会幻想和追求那些原本不存在的东西,而其他物种只会吃饱了睡、睡饱了吃。

微服务的本质

梦想,通常都不切实际,要实现它都会有挑战。梦想越大,需要参与的人就越多。一方水土养一方人,每个人都有不同的特质。梦想,将拥有不同特长的人汇聚在一起努力打拼,这就是梦之队。梦想、分工、合作,这三者就是推动人类文明不断向前发展的底层机制。人类的梦越做越宏大,上天入地,从克隆人到硅基智能;社会分工也越来越精细,从农民、工人到现在成千上万的职业;团队合作也越来越广密,从几个人范围的合作到跨大洋、跨大洲的合作。

分工与合作

以人类的“飞天梦”为例,我们可以很容易验证这个机制。“看那星星多美丽,摘下一颗亲手送给你”,就像歌词里唱的,或许我们的飞天梦源于对爱情的追求,也或许源于对自由的渴望,挣脱地球引力的束缚,从乘风筝飞行开始,到热气球环游世界,到莱特兄弟发明飞机,到超音速喷气式飞机诞生,再到马斯克殖民火星的SpaceX问世,以及科幻作家刘慈欣带着地球去旅行的畅想,这是人类超越梦想的过程,但跟分工越来越精细、合作越来越广密有什么关系呢?

空客A380,史上最大的客机,最近宣布停产了。空客A380是汇聚欧盟各个国家最尖端科技的产物,每个国家都有各自专精的科技领域,但现在因为欧盟闹解体而无法继续合作下去了,离开了分工合作,梦想终将无以为继。话题扯了这么远,这跟我们的文章主题有什么关系呢?微服务,一种新架构技术,在探究微服务的本质是什么之前,我们有必要先对架构做一个定义:架构是最高层次的系统分解、系统不易改变的决定,它主要描述构成系统的核心组件、组件之间的关系(即通讯路径、机制和预期结果)、以及关键流程(组件之间如何交互完成某项业务)等等。

简而言之,架构就是规范分工与合作的机制。划分组件让其具备独一无二的功能,各司其职,这就是分工;规范组件之间的通讯机制,互通有无,这就是合作。从事应用架构或系统架构等岗位,我们需要了解各种主流中间件、软硬件设备的特性,以便做出合理的分工。同时,我们还需要懂得在特定业务场景下选用合适的产品来满足需求,让它们能够紧密地合作。有了这层理解之后,我们就能理解各种类型架构的事情了,例如:组织架构的变革等。

现在我们知道微服务的本质就是:一种更优的分工合作机制,加速分工,促进合作,帮我们成就更大的梦想!好,今天先分享到这里,后续老兵哥将继续讲述这个有关梦想、分工与合作的故事:

  1. 我们为什么要引进微服务架构?
  2. 微服务为何从前后端分离开始?
  3. 如何逐步演进至全微服务架构?
  4. 微服务实施包括哪些关键步骤?
  5. 哪些系统适合改造成微服务呢?

坚持原创不易,如果你觉得有价值,麻烦动动手指点个 「  」,让更多小伙伴可以看到,我会更有动力坚持分享的。另外,我后续还会分享职业规划、应聘面试、技能提升、影响力打造等经验,欢迎 关注 本专栏或微信公众号 「 IT老兵哥 」!

IT老兵哥

关注「IT老兵哥」,赋能程序人生!近期热评文章《 架构师入门系列 》:

  1. 架构到底是什么,你知道吗?
  2. 架构都有哪些,我该怎么选?
  3. 架构师都干什么,你知道吗?
  4. 练就哪些技能才胜任架构师?
  5. 怎样才能搞定上下游的客户?
  6. 如何从开发岗转型做架构师?
  7. 程序员为什么必须要懂架构?

IT老兵哥
103 声望19 粉丝