如何拆分你的微服务架构?

如今,市场环境纷繁复杂,瞬息万变,现代企业为了更好地生存,需要有极强的适应能力。快速而轻松地迎接改变,成为了一个优质企业的特征之一,同时企业还要求技术团队构建更科学的架构,搭建成本更低的平台,这就使得这些团队越来越倾向于使用微服务架构来应对以上要求。

微服务的做法有利于软件组件和数据的分散化,将一个整体分解成更小、更容易改变的部分,分散仅帮助团队加快工程进度,而不会牺牲系统的安全性。要想让这种架构工作得很好,需要改变工作方式。

微服务架构的设计,其实是为了使团队能够在执行工作的人之间分配决策权力,向更多成员直接推行决策权,允许他们以更自由的方式生产。微服务架构使用正确的话,将产生更好和更快的变化。但是如果你的架构错误,那么一系列坏的决定可能会降低转化率,甚至会损害你的业务。
图片描述
我们讲决策权分配,即是说微服务架构的拆分实际上就是在寻求正确的权力下放战略。这是一个进化过程,需要不断地进行分析和调整。而如何正确的拆分微服务架构,我认为可以重点从以下三个方面考虑:

1、我们应该做哪些决定?

设计微服务系统不仅仅是改变组件大小,架构中涉及创建和更改服务的所有领域都有一定的作用。在这里总结了以下九个方面,作为拆分微服务架构时所做决定的参考:

• 生命周期: 什么时候创建或停止服务?我们什么时候需要将它们分开?
• 服务实现:我们应该在每个服务中使用哪些工具、语言和架构?
• 系统架构: 服务如何引导他人?开发人员如何了解?
• 数据架构:服务之间如何共享数据?
• 变更过程: 什么时候可以改变服务?部署和QA的工具和过程?
• 团队管理:谁在哪个团队服务?每个团队负责什么?团队成员做了什么?
• 人事管理:人员如何被雇用和解雇?员工如何激励和奖励?
• 安全管理:我们如何降低安全事故的风险?需要做些什么来改善整个系统的安全性?
• 采购过程:可以购买什么软件?使用开源软件需要哪些保护?

2、涉及到哪些人?

不得不承认,一个员工做出的一些决定对他们的公司来说可能是非常有影响力的。一个很典型的现象是,公司试图对内部的决策者增加控制,以便将风险降至最低,从而导致决策权集中化。例如,在过去的几年中,苹果以拥有一个高度集中的设计团队而闻名,少数的人做出产品设计的大部分决策。

集中发生是因为正确的人需要做出最重要的决定。通常,“正确的人”是具有天赋,专业知识和经验的组合,使我们能够相信他们做出最好的决定,我们可以称这些人为我们的“明星决策者”。但实际上,公司的“明星决策者”数量有限,大多数团队只有几颗“明星”。

微服务改变了这种少数人行使决策权的现象,同时更容易应对错误的决策。如果一个团队在微服务工作时作出错误的决定,其错误的波及范围会很小,容错率变高。当系统的更改变得便宜和容易时,团队可以快速改进先前的决策,使他们能够更快地获得最佳决策。

3、谁拥有哪一部分?
决策基于选择,而选择又基于领域知识。决策不应该立即执行,它需要一个过程,需要高度专业的技能或知识来实现。

管理专家亨利•明茨伯格(Henry Mintzberg)为我们提供了一个很好的模式,其中概述了决策过程的步骤:

  1. 研究与信息采集
  2. 生成选择
  3. 做出选择
  4. 授权的选择
  5. 执行和实施

所有这一切的关键,是在采用决策分权化时,不需要绝对。每个步骤都可以独立集中或分散化,在平衡效率和安全性时,可以获得更大的灵活性。如今,集中选择与非集中选择相结合,也是现在很多大公司常见的模式。

当人们谈论微服务架构时,权力下放过程的选择、授权和执行部分相互协作、快速、规模化地移动,这些都降低了变化来临时对整体系统产生的负面影响。它是提高变革速度的有效途径,但不要忘记,你的成员特点、团队协调,以及所有的系统、工具和工作环境同样重要。

你必须了解如何做出决策,如何改进流程,这才是迎接变化的好方法。

原文链接:https://thenewstack.io/decentralizing-microservices-organization/

推荐阅读:
在这个“云”先行的时代,企业如何系统管理云服务商
完美融合Kubernetes,Ghostcloud企业级容器云平台EcOS率先实现双容器调度
据说一个成功的研发团队应具备这9大属性

作者简介:
罗尼•米特拉:API学院设计总监,他是作者,主持人和设计师,特别关注软件和人员沟通的方式,
出版了《Microservice Architecture》一书。

译者简介:
Ghostcloud(中文名:精灵云)坐落于成都天府软件园,是成都高新区重点扶持企业,国内首批从事容器虚拟化研发的企业,是西南地区唯一一家基于Docker的云计算服务商,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。
Ghostcloud因容器技术而生,以最新容器技术Docker为基础,为适应不同行业客户需求,全自主研发了一套调度引擎框架Newben,且全方位适配Kubernetes主流开源调度引擎,也是国内率先实现双调度引擎的企业,是一流的企业级容器云服务专家。Ghostcloud推出了企业级容器云PaaS/CaaS平台,命名为EcOS(EnterpriseContainer Operation System)。Ghostcloud将EcOS平台与微服务/DevOps相融合,运用至企业IT系统的全生命周期的开发、测试、运维及发布流程中,致力于为多个领域企业向“互联网+”转型提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务,帮助企业级客户降低成本、提升效率、简化运维及产品部署,并提升系统的可靠性和安全性。

微服务架构拆分 微服务架构是一种软件开发方式,将应用程序分解为一组小的、独立部署的服务。每个服务都围绕一个特定的业务功能构建,能够独立开发、部署和扩展。微服务通过轻量级的通信机制(通常是HTTP或消息队列)进行交互。按业务功能拆分是最常见的微服务拆分方法,将系统按照业务功能模块进行分割。按数据拆分是根据数据的归属和访问频率,将系统按数据进行分割。按团队拆分是根据开发团队的组织结构,将系统按团队进行分割。微服务架构的拆分是一个复杂而关键的过程,需要根据业务需求、数据模型和团队结构等多方面因素进行合理规划。 阅读详情

相关推荐

微服务架构之服务拆分确定服务边界

微服务拆分原则和方法:               单一职责、高内聚低耦合;               服务粒度适中;              考虑团队结构:(康威定律:设计系统的组织其产生系统的设计和架构等价于组织间的沟通结构。就是指每个团队开发设计和测试发布自己团队的微服务时,要互不干扰系统效率才能得到提升,)              以业务模型切入:(领域模型:对具体某个边界领...

laomumu1992的博客 1万+

微服务拆分策略

微服务拆分没有一个绝对的标准答案,服务拆分的粒度需要根据业务场景来规划,而随着业务的发展,原先的架构方案也需要做调整。

mythsmyths的博客 541

从单体架构到微服务架构的拆分

单体架构、分布式架构和微服务架构是三种不同的软件架构模式,它们各有特点和适用场景。

大道至简,悟在天成。 1394

【微服务】拆分策略的详细说明,带图了解

1、需对业务充分了解,这是服务拆分,通信设计,资源整合的必要前提。2、适应微服务架构设计原则:小版本,高速迭代。3、快速的环境提供能力:依赖于云计算、容器技术,快速交付环境。4、服务合理拆分:需符合团队结构或能逆向影响,能对组织架构进行微调并划分职责。(康威定律和逆康威定律)5、基本的监控能力:包括基础的技术监控和业务监控。6、快速的应用部署能力:需要部署管道提供快速的部署能力。7、DevOps 自动化运维能力:需要具有良好的持续集成和持续交付能力,还需要对问题、故障的快速响应能力,开发、测试和运维能协同工

程序源日志的博客 3139

服务拆分与扩展的三维进化:AKF立方体、单元化分区与绞杀者修缮者的渐进迁移

系统扛不住和改不动常同时到来又常被混为一谈。本文从架构在集中与分散间的钟摆讲起,说明拆分只能压低腐化斜率;再用AKF扩展立方体把扩展拆成三根正交的轴:X轴复制解决计算容量,难点在无状态与复制延迟;Y轴按变更原因拆分,用四把尺子量粒度并避开三个反模式;Z轴按数据切分,详解分区键、槽位化路由、单元化三道关口与爆炸半径;随后以交易系统的四个阶段演示信号驱动选轴;最后给出绞杀者与修缮者两种渐进迁移的拦截点、影子比对与金丝雀回切等安全网、退役判据及组合路径,并附可在Java 8上运行的代码与实测数据。

曾经“等你生日那天”都遥远得像未来,如今却可欢愉的挥手说“下个十年见” 172万+

商城项目soa拆分完成

<parent> <groupId>cn.e3mall</groupId> <artifactId>e3-parent</artifactId> <version>0.0.1-SNAPSHOT</version> </parent>

微服务架构拆分策略与实践

随着互联网技术的发展,传统的单体应用逐渐显现出其局限性,特别是在扩展性和维护性方面。微服务架构作为一种解决这些问题的方法,通过将大型应用分解成一系列小型、独立的服务单元,每个单元负责单一的功能,并且可以独立部署、测试和扩展。

weixin_42564451的博客 987

微服务架构如何实现网站服务垂直化拆分

3月10日,2017阿里云网站行业热点问题和解决方案线下研讨会在上海举行。阿里云产品专家银时为大家带来《微服务架构如何实现网站服务垂直化拆分》精彩演讲。主要从服务化的缘起、微服务架构的形成,以及在大规模的服务化过程中所面临的一些挑战以及解决方案,跟大家分享整个微服务。以下内容根据现场分享和讲师PPT整理而成。倪超,阿里花名银时,阿里巴巴企业互联网架构平台产品专家、国家认证系统分析师、IT畅销书作者,著有《从Paxos到ZooKeeper》一书,2015年国内新书畅销榜Top10。2010年,以实习生身份加入阿里,入职中间件技术团队,经历了阿里中间件技术从1.0到3.0的变革,目前负责商用软件E

微服务如何拆分?

微服务拆分的终极目标是提升系统演进效率,而非追求技术先进性。合理的拆分应始终以业务需求为核心依据。

qq_43947876的博客 1585

RK3588网络调试笔记:当我把默认RTL8211F PHY换成另一款时,踩了哪些坑?

本文详细记录了在RK3588平台上将默认RTL8211F PHY芯片替换为其他型号的全过程,包括硬件设计验证、内核驱动适配、复位时序配置等关键步骤。通过实际案例分享,提供了从驱动调试到硬件优化的系统性解决方案,帮助开发者高效完成PHY芯片替换,确保网络接口稳定性。

weixin_30291791的博客 669

保姆级教程:手把手教你从NASA Earthdata下载ASTER L2地表温度数据(附shp文件拖拽技巧)

本文提供了一份详细的NASA Earthdata平台ASTER L2地表温度数据下载教程,涵盖账号注册、数据筛选、shp文件拖拽技巧及质量检查等关键步骤。特别适合遥感领域初学者,帮助快速掌握高效获取ASTER L2T数据的方法,适用于城市热岛效应和农业监测等研究。

weixin_30736301的博客 470

如何用 claude-skills Microservices Architect 设计微服务架构:从拆分到落地的完整指南

**claude-skills** 是面向全栈开发者的 Claude Code 技能库,其中内置的 **Microservices Architect(微服务架构师)** 技能,能帮你把庞大的单体应用拆分成边界清晰、通信合理、具备弹性的微服务架构。它内置了领域驱动设计(DDD)、Saga 模式、熔断器、事件溯源、CQRS 等分布式系统最佳实践,相当于给 AI 装上了一位资深架构师的大脑。 [![

gitblog_00947的博客 1055

R语言分类变量的统计描述

三篇介绍了连续变量的统计描述的R语言相关函数,计算数值的相关统计指标。本文介绍分类变量的统计描述及如何在R语言中实现。 不同于连续变量,分类变量的统计描述主要是汇总分类变量各类别例数及百分比。 1、table()函数 ...

zsc943290710的博客 1万+

微服务架构拆分介绍

“you build, you run it”

weixin_49862903的博客 1516

龙头复盘神器/复盘于导出工具最新版5.6

龙头复盘神器,复盘于导出工具

初入python踩过的坑 8255

SAP S/4HANA 数据 API 化与 MCP 集成全流程实战指南

通过 RAP 发布 OData、利用 Communication Arrangement 打通外网、再在 MCP-server 里封装函数签名,你就能把 S/4HANA 的核心数据安全、标准化地暴露给任意支持 MCP 的大模型。这条链路的每一个环节都由 SAP 与 MCP 社区提供了现成框架,既兼顾了企业合规,也让 LLM 落地更为轻量。期待你在项目里把这些拼图真正串联起来,让业务数据与生成式 AI 碰撞出高价值的火花。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 979

电商项目微服务架构拆分实战

比如微服务的接口因为升级把之前的三个参数改成了四个,上线后导致调用方大量报错,推荐做法服务接口的参数类型最好是封装类,这样如果增加参数就不必变更接口的签名。

srrsheng的博客 1278

【扣子AI开发】如何开发一个图像生成智能体?

【扣子AI开发】如何开发一个图像生成智能体,从创建到发布

tl437002770的博客 2428

四种常用的微服务架构拆分方式

微服务架构并无标准架构,不然什么架构师大会也不会各个系统架构百花齐放了。虽然没有固定的套路,却有一些经验,今天就来做一个总结。基于角色拆分这种拆分方式常见于基础设施以及其PaaS层的架构,...

xiexiaojing的博客 2万+

Mstar的Monitor方案OSD 菜单制作(五)——icon绘制

Mstar的Monitor方案(五)————绘制icon

android 系统定制开发那些事 1807

如何对正射影像DOM(卫星影像、无人机航拍影像)进行拼接、合并以及去黑边(附 Global Mapper Pro 24.0 安装包(中文注册版))

为什么要对正射影像DOM进行拼接?影像去黑边、影像拼接的操作和步骤。

从地图看世界的专栏 4300

微服务架构如何拆分服务

前言 微服务架构模式经过5年多的发展,在各行各业如火如荼地应用和实践。如何在企业中优雅地设计微服务架构?是企业面对的一个重要问题。本文将讲述微服务架构1.0设计与实践以及面临问题和破局,最后讲述微服务架构2.0设计与实践等方面,尝试去回答这个难题。 微服务架构1.0设计与实践 微服务架构定义 2014年马丁福勒提出了微服务架构设计模式,微服务架构最核心的设计有二点(如图1 绿框所示):第一,把单体服务拆分成一系列小服务;第二,拆分后的这些小服务是去中心化的,即每个服务都可以使用不同的编程语言,也可以使用不同

Arvin_zx的博客 1426

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

03-微服务架构构建之微服务拆分

微服务架构是将一个单体应用程序拆分为一个个独立且保持松耦合的服务的一种架构方式,每个服务有着独立的数据库并且能独立运行部署。微服务架构的构建过程中,第一步也是最为重要的一步是进行服务拆分。只有将微服务按照合理的方式进行拆分,才能确保整个项目能够高效而正确地运行。

月空的博客 5876

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

微服务架构拆分设计

微服务架构拆分设计

Zhuxiaoyu_91的博客 1297

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

微服务架构中的服务拆分策略深度解析

本文系统解析了微服务架构中的服务拆分方法论与实践原则。首先阐述了服务拆分的核心目标(高内聚、低耦合、独立演进)及其与单体架构的本质区别。其次详细介绍了三种主流拆分方法:领域驱动设计(DDD)的限界上下文映射、业务能力拆分法和康威定律指导的组织结构映射。接着提出实战原则(单一职责、数据自治等)并列举典型反模式。最后探讨了拆分过程中的关键技术决策(粒度评估、数据拆分、通信模式)及面试常见问题。文章强调服务拆分需平衡业务与技术因素,通过合理边界划分实现系统可维护性与扩展性。

闫磊磊 1301
上一篇: 【行业】透过云计算、工业大数据对智能制造的一点思考
下一篇: 如何拆分你的微服务架构?
ghostcloud精灵云
博客等级 码龄11年 81粉丝 88原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值