资讯专栏INFORMATION COLUMN

什么是微服务架构,该从哪些方面深入理解?

sunny5541 / 3336人阅读

摘要:要玩好微服务,微服务平台需要的不仅仅是无侵入的服务治理能力,容器测试等服务也是必要的,这也是网易云轻舟微服务的产品设计思路。

欢迎访问网易云社区,了解更多网易技术产品运营经验。

简单地说,微服务架构就是以业务域或业务功能为边界,将一个大而全的应用拆分为可以独立开发,独立部署,独立测试,独立运行的一组小的应用,并且使用轻量级,通用的机制在这组应用间进行通信。

拿着显微镜看微服务架构,品读 Martin Fowler 的定义,可能出不来,不妨用望远镜来看一看——如同黄仁宇喜欢从数千年历史的纵深来论述历史的发展,如同唐德刚提出历史三峡理论(虽然此类史识在史学界尚有争议,但方法可以借鉴),我们也可以从信息技术深化应用、架构长期演进的角度来认识微服务架构。

从宏观的层次来说,数字经济与互联网、云计算、大数据相互促进,企业数字化转型升级离不开云计算。技术的发展总是伴随着经济的改进,数字经济是继农业经济、工业经济之后全新的社会经济发展形态,也是世界经济创新发展的主流模式。数字经济以云为核心技术引擎,以数据为关键生产要素。数字经济时代,互联网、云计算都变成了社会经济的基础设施,变成了业务的一部分,IT 架构、数据架构、应用架构全面改变。(点击下载 IDC 数字经济相关报告)

IDC 全球 IT 产业预测,到 2021 年,全球至少 50% 的 GDP 将以数字化的方式实现,数字技术将全面渗透各个行业,并实现跨界融合和倍增创新,驱动世界经济向以数字经济为重要内容的经济活动加速转变。

来源:中国信息化百人会,2018

从中观的角度来说,云原生(Cloud Native)技术是应用架构进化的方向,是企业发挥云计算价值(如按需供给、高弹性、强PaaS)的必由之路。业务上云并非削足适履,不过如果我们以瘦为美,而本身虚胖,相同款式的衣服,想要穿在模特身上的那种效果,就必须适当地减肥(改造业务平台)了,当然我们也可以不在乎体重、形态,如此面对拳击、举重这类项目就比较难受了。减肥不是一朝一夕的事情,云原生也不是从天而降的,以网易为例,应用架构以及基础设施也是随着业务规模的不断扩大而演进的,团队不断解决暴露出来的各种问题,大致经历了工程化、自动化、服务化三个阶段。了解更多相关知识可以参考《云原生应用架构实践》(网易云基础服务架构团队著)。

从微观的角度来说,云原生技术包括微服务架构、容器和 DevOps 等核心内容。类似人类社会的专业化分工协作,微服务根据业务模块划分相互独立的服务种类,让业务可以做到又快又好。微服务基本原则是高内聚、低耦合,也有些类似于传统软件的组件,当然服务划分是一个比较复杂的问题。IDC 预测,在超过一半的全球 2000 强企业中,平均 1/3 的数字化服务交互将来自 API 开放生态系统。如果不拥抱微服务,很难想象如何实现这样的盛况有多麻烦。关于微服务、DevOps 和容器的关系以及容器技术的选择,可以参考网易云架构师这篇文章:为什么 kubernetes 天然适合微服务

单体架构 VS 微服务架构

故而,如果有传统开发经验,可以认为微服务就是传统组件技术在云端以插件化形式的自然映射 ;而从架构演进的角度,微服务的本质,是实现 DevOps、实现云原生应用架构、促进数字化转型升级的工具。

微服务技术特点决定了系统的复杂性,搞微服务不一定用容器技术,但不管服务商还是企业客户,玩过的都承认,容器是微服务的最佳搭档。要玩好微服务,微服务平台需要的不仅仅是无侵入的服务治理能力,容器、CI/CD、APM、测试等服务也是必要的,这也是网易云轻舟微服务的产品设计思路。

文章来源: 网易云社区

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/25304.html

相关文章

  • 深入理解Spring Cloud与微服务构建【一】 - 1.2微服务

    摘要:熔断机制为了防止雪崩效应事件的发生,分布式系统采用了熔断机制。为了解决这一难题,微服务架构引入了熔断机制。由于微服务系统是分布式系统,服务与服务之间没有任何的祸合。 1.2.1 什么是微服务 按业务划分为一个独立运行的程序,即服务单元。 服务之间通过 HTTP 协议相互通信。 自动化部署。 可以用不同的编程语言。 可以用不同的存储技术。 服务集中化管理。 微服务是一个分布式系统。 ...

    AlexTuan 评论0 收藏0
  • Service Mesh 时代,Dubbo 架构该怎么跟进?

    摘要:原文链接时代,架构该怎么跟进,来自于微信公众号次灵均阁作为核心开发者,请先简单介绍下自己答大家好,我是小马哥,一名学习当爸爸的父亲,劝退师,项目架构师,编程思想的作者。因此,需求的来源不再已阿里为绝对主导,社区共建和共制的发展模式已成事实。 原文链接:Service Mesh 时代,Dubbo 架构该怎么跟进?,来自于微信公众号:次灵均阁 作为 Duboo 核心开发者,请先简单介绍下...

    robin 评论0 收藏0
  • Service Mesh 时代,Dubbo 架构该怎么跟进?

    摘要:原文链接时代,架构该怎么跟进,来自于微信公众号次灵均阁作为核心开发者,请先简单介绍下自己答大家好,我是小马哥,一名学习当爸爸的父亲,劝退师,项目架构师,编程思想的作者。因此,需求的来源不再已阿里为绝对主导,社区共建和共制的发展模式已成事实。 原文链接:Service Mesh 时代,Dubbo 架构该怎么跟进?,来自于微信公众号:次灵均阁 作为 Duboo 核心开发者,请先简单介绍下...

    李文鹏 评论0 收藏0
  • 什么是微服务架构

    摘要:数据的去中心化,进一步降低了微服务之间的耦合度,不同服务可以采用不同的数据库技术等。微服务架构是持续交付的巨大推动力,允许在频繁发布不同服务的同时保持系统其他部分的可用性和稳定性。 什么是微服务? 微服务(Microservices Architecture)是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每个微服务...

    IntMain 评论0 收藏0
  • 【JVM从小白学成大佬】1.开篇

    摘要:的重要性毋庸置疑,可以毫不夸张的说虚拟机是整个平台的基石。方面的知识,也一直是等大厂面试考核的重点。本专栏将分为如下几个大模块进行分析开篇介绍运行时数据区。最主要的是让我知道能得到多少小伙伴的认可,毕竟大家的认可,就是不懈努力的动力 JVM的重要性毋庸置疑,可以毫不夸张的说Java虚拟机是整个Java平台的基石。 JVM方面的知识,也一直是BAT等大厂面试考核的重点。特别是JVM调优,...

    姘存按 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<