中台和微服务有什么区别?

news2025/8/17 2:28:48

中台不就是微服务吗?这种说法实际上混淆了中台与微服务的定义,要说清楚这个问题,就要先了解,什么是中台?什么是微服务?中台和微服务之间有什么样的关系?

什么是中台

来自阿里官方的定义:
企业中台就是,将企业的核心能力随着业务不断发展以数字化形式沉淀到平台,形成以服务为中心,由 业务中台和数据中台构建起数据闭环运转的运营体系,供企业更高效的进行业务探索和创新,实现以数字化资产的形态构建企业核心差异化竞争力。

阿里的中台大约有十几个共享业务单元,包括用户中心、商品中心、交易中心等。淘宝、天猫、聚划算等 25 个大型业务应用都是由中台的共享业务单元支持的,共享业务单元则由阿里云平台支持。

共享业务单元的划分原则其实不是可以简单掌握的,要综合考量设计、运营和工程因素,尽可能遵循“高内聚、低耦合”、“数据完整”、“业务可运营”和“渐进”的原则。

阿里在划分中台时非常重视其业务价值和基于业务的设计,而且有业务架构岗位,每个共享单元都有业务架构师。但总体来讲,其业务架构仍然是领域性的。

中台技术架构

我们以阿里技术中台为例,在阿里集团内部,所有业务中台、前台,共享一个技术平台底座,将阿里多年技术沉淀的价值最大化,提供运行更稳定、架构更灵活的技术支撑。

阿里技术中台,就是将使用云或其他基础设施的能力,以及应用各种技术中间件的能力,进行整合和包装。过滤掉技术细节,提供简单一致、易于使用的应用技术基础设施的能力接口,助力前台和业务中台数据中台的快速建设。

图片来源:阿里技术参考图册

什么是微服务

微服务架构将单体应用,按照业务领域拆分为多个高内聚低耦合的小型服务,每个小服务运行在独立进程,由不同的团队开发和维护,服务间采用轻量级通信机制,如HTTP RESTful API,或者RPC,独立自动部署,可以采用不同的语言及存储。

微服务体现去中心化、天然分布式,是中台战略落地到IT系统的具体实现方式的技术架构,用来解决企业业务快速发展与创新时面临的系统弹性可扩展、敏捷迭代、技术驱动业务创新等难题。

微服务解决的问题

传统的单体应用有很大的局限性,应用程序随着业务需求的迭代、功能的追加扩展,最终成为一个庞然大物。单体应用的局限性大体包括以下几方面:

复杂性高:业务规模和团队规模发展的一定阶段,模块耦合严重,代码难以理解,质量变差。

交付效率低:构建和部署耗时长,难以定位问题,开发效率低,全量部署耗时长、影响范围广、风险大,发布频次低。

伸缩性差:单体只能按整体横向扩展,无法分模块垂直扩展。

可靠性差:一个bug有可能引起整个应用的崩溃。

阻碍技术创新:受技术栈限制,团队成员使用同一框架和语言。

微服务技术架构的特点

易于开发与维护:微服务相对小,易于理解;

独立部署:一个微服务的修改不需要协调其它服务;

伸缩性强:每个服务都可按硬件资源的需求进行独立扩容;

与组织结构相匹配:微服务架构可以更好将架构和组织相匹配,每个团队独立负责某些服务,获得更高的生产力;

技术异构性:使用最适合该服务的技术,降低尝试新技术的成本;

企业环境下的特殊要求:去中心化和集中管控/治理的平衡,分布式数据库和企业闭环数据模型的平衡。

中台和微服务有什么关系?

回顾概念:

中台架构,简单地说,就是企业级能力的复用,一个种方法论,企业治理思想。

微服务,是可独立开发、维护、部署的小型业务单元,是一种技术架构方式。

可见,中台并不是微服务,中台是一种企业治理思想和方法论,微服务是技术架构方式

中台化的落地,需要使用微服务架构

中台强调核心基础能力的建设,基础能力以原子服务的形式来建设,并通过将原子服务产品化,支撑业务端各种场景的快速迭代和创新;原子服务和微服务所倡导的服务自闭环思想不谋而合,使得微服务成为实现原子服务的合适架构。

支撑业务场景的应用也是通过服务来实现,其生命周期随业务变化需要非常灵活的调整,这也和微服务强调的快速迭代高度一致,所以业务应用服务也适合通过微服务来实现。

中台化系统建设不是一蹴而就的,需要长期动态的演进,加上其技术体系已经在互联网领域被证明且相当成熟,其在企业落地、执行的土壤已经具备。

结论:
1、中台架构,简单地说,就是企业级能力的复用,一个种方法论,企业治理思想。
2、微服务,是可独立开发、维护、部署的小型业务单元,是一种技术架构方式。
3、中台并不是微服务,中台是一种企业治理思想和方法论,微服务是技术架构方式。
4、中台化的落地,需要使用微服务架构,通过微服务架构搭建中台架构所需要的原子服务,其核心是服务设计的原则和思想。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/14831.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【强化学习】TensorFlow2实现DQN(处理CartPole问题)

文章目录1. 情景介绍2. DQN(Deep Q Network)核心思路:3. DQN算法流程4. 代码实现以及注释5. 实验结果文章阅读预备知识:Q Learning算法的基本流程、TensorFlow2多层感知机的实现。1. 情景介绍 CartPole问题:黑色小车上…

【并发编程五】c++进程通信——信号量(semaphore)

【并发编程五】c进程通信——信号量(semaphore)一、概述二、信号量三、原理四、过程1、进程A过程2、进程B过程五、demo1、进程A2、进程B六、输出七、windows api介绍1. 创建信号量 CreateSemaphore()2. 打开信号量 OpenSemaphore()3. 等待 WaitForSingle…

一种基于IO口的模拟串口(LOG)实现方法

一、使用背景 当MCU的串口不够用时,可以通过IO模拟的方式将任意一个具有输出功能的管脚配置为串口输出,从而方便开发和调试。 二、实现原理 通过IO口模拟串口发送波形,配置对应的波特率等信息,然后映射printf函数,从…

基于粒子群优化算法的冷热电联供型综合能源系统运行优化(Matlab代码实现)

👨‍🎓个人主页:研学社的博客 💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜…

redis 支持的数据类型

Redis 数据库支持五种数据类型。 字符串(string) 哈希(hash) 列表(list) 集合(set) 有序集合(sorted set) 位图 ( Bitmaps ) 基数统计 ( HyperLogLogs ) 字…

Vue3.2 + Element-Plus 二次封装 el-table(Pro版)

前言 📖 ProTable 组件目前已是 2.0版本🌈,在 1.0版本 中大家提出的问题与功能优化,目前已经得到优化和解决。 😀 欢迎大家在使用过程中发现任何问题或更好的想法,都可以在下方评论区留言,或者我…

【计算机网络】局域网体系结构、以太网Ethernet详解

注:最后有面试挑战,看看自己掌握了吗 文章目录局域网LAN决定局域网的要素网络拓扑传输介质局域网的分类以太网令牌环网FDDI网----Fiber Distributed Data InterfaceATM网---Asynchronous Transfer Mode无线局域网WLAN----Wireless Local Area NetworkMAC…

Red Hat Enterprise Linux (RHEL) 9 更新了哪些新特性?

文章目录1. 前言2. 软件3. 支持的硬件架构4. GNOME更新到40版5. 安全和身份6. 构建容器的通用基础镜像7. 改进了用于管理 RHEL 9 的 Cockpit Web 控制台1. 前言 体验一下最新的rhel 9.0 是什么感觉。它会飞吗? Red Hat Enterprise Linux (RHEL) 9现已普遍可用 (GA…

吃柿子的禁忌靠谱吗?

图片来源:pixabay 秋冬是柿子上市的季节,虽然柿子并不是苹果、香蕉这样的大宗水果,但是秋天不吃个柿子,冬天不吃个柿饼,总觉得少了点什么。 关于吃柿子有很多禁忌,比如说柿子不能与螃蟹同时吃,柿…

​怎么保留硬盘数据合并分区 ,如何才能合并且不丢失数据

硬盘分区合并是比较常见的操作,​怎么保留硬盘数据合并分区,还是具有一定的难度。因为在Windows操作系统中,用户可以通过磁盘管理来实现硬盘分区合并,但是要删除该磁盘分区右侧的相邻分区,但是对于部分不懂计算机的用户…

Tailscale的子网路由和出口节点

2 年前,老苏写了 『 外网访问群晖的新方案Tailscale 』,第一次隆重的给大家推荐了 Tailscale,但当时还有很多功能并不具备,比如今天要介绍的 Subnet Router 和 Exit Node 【特别说明】:老苏使用的是DSM6 ,所…

RabbitMQ初步到精通-第一章-消息中间件介绍

第一章 消息中间件介绍 1.MQ概述 MQ全称是Message Queue,消息的队列,因为是队列,所以遵循FIFO 先进先出的原则,它是一种跨进程的通信机制,用于上下游传递消息。 在互联网架构中,MQ是一种非常常见的上下游“…

论文阅读笔记 | 三维目标检测——VeloFCN算法

如有错误,恳请指出。 文章目录paper:《Vehicle Detection from 3D Lidar Using Fully Convolutional Network》 对于64线激光雷达全范围扫描出来的点云进行特征图的构建。对于具体的点(xyz坐标),其在水平方向上可以通…

一个是证书服务和web安全访问配置,一个是PGP的使用

一个是证书服务和web安全访问配置,一个是PGP的使用 IIS介绍 IIS是本机自带的服务,用于上线web网页;虽然是自带但因为非开发人员用不到,所以属于预安装;在本机搜索下载即可, 打开后 证书服务,认…

LeetCode[105]从前序与中序遍历序列构造二叉树

难度:中等 题目: 给定两个整数数组 preorder 和 inorder ,其中 preorder 是二叉树的先序遍历, inorder 是同一棵树的中序遍历,请构造二叉树并返回其根节点。 示例 1: 输入: preorder [3,9,20,15,7], inorder [9,3,1…

Vue基础4

Vue基础4计算属性姓名案例 - 第一种用click.keyup的方法姓名案例 - 第二种用v-model双向绑定的方法姓名案例 - 第三种使用methods方法姓名案例 - 第四种使用计算属性的方法计算属性的简写—只考虑读取,不考虑修改时候使用监视属性第一种普通写法第二种用计算属性的写…

【信号处理】卡尔曼(Kalman)滤波(Matlab代码实现)

👨‍🎓个人主页:研学社的博客 💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜…

Java内部类分类

文章目录内部类分类局部内部类的使用匿名内部类成员内部类静态内部类一个类的内部又完整的嵌套了另一个类结构。被嵌套的类称为内部类(inner class),嵌套其他类的类称为外部类(outer class)。是我们类的第五大成员 思考:类的五大成员是哪些? - 属性、方法、构造器、代码块、内…

Windows安装Git教程(2022.11.18 Git2.38.1)

(1)首先前往Git官网,下载安装文件: (2)打开安装程序,把Only show new options的勾去掉,点击Next: (3)此处可以选用默认设置,也可以勾…

ProCAST一键导出有限元模型的几何拓扑和属性信息

第一次将ProCast有限元后处理中的数据导出,当时没有经验,方法比较粗暴,详情见文章:ProCast导出节点应力数据并格式化。 最近发现了一种更高效的数据导出“新姿势”,能够快速得到有限元模型的几何拓扑和节点属性数据&a…