1.数字化转型概述

中台数字化转型的问题

在中台数字化转型过程中,如何进行业务领域边界划分,如何完成中台领域建模实现能力复用,如何完成单体应用拆分利微服务设计,如何实现前中后台的协同设计;

DDD解决的问题

  • DDD首先从业务领域人手,划分业务领域边界,采用事件风暴工作坊方法,分析并提取业务场景中的实体、值对象、聚合根、聚合、领域事件等领域对象,根据限界上下文边界构建领域模型,将领域模型作为微服务设计的输人,进而完成微服务洋细设计;
  • 用DDD方法设计出来的微服务,业务和应用边界非常清晰,符合“高内聚’低耦合”的设计原则,可以轻松适应业务模型变化和微服务架构演进;
  • 软件按照相对的“稳定性”来排序,领域层>应用层>界面层;
  • 领域分析的价值所在就是寻求“千变万化”中相对的“稳定性、第一性”,然后通过合理的架构分层及抽象隔离的业务复杂度和技术复杂度,隔离业务领域的稳定性和易变性,从架构上精巧快速地支持业务的变化;
  • DDD是中台和微服务设计的最佳指导方法,而微服务则是中台的最佳技术实现;

KF可扩展能力立方体模型

AKF可扩展能力立方体模型

x轴: 容量扩展能力

x轴关注无差别的服务和数据的复制,解决应用和数据库容量水平扩容的问题。当应用或数据库实例负载过重时,可以复制应用或数据库实例实现扩容。扩容后,任务可以通过负载均衡均匀分布到不同应用服务或数据实例,所有的实例都可以无差异地完成任务;
在分布式架构下,x轴的典型实践案例主要体现在应用和数据库实例的水平扩展能力上。如Nginx负载均衡,应用或数据库的多实例,应用的弹性伸缩,数据库多副本和读写分离等场景;

y轴: 业务扩展能力

y轴关注应用的业务职责划分,如根据数据类型、交易类型或根据两者组合来划分业务和应用边界,在划分过程中会遵循单—职责原则。y轴主要用于划分业务和应用边界,解决业务能力复用的问题;
y轴的典型实践案例是从单体向微服务的演进。这个过程会有业务和应用边界拆分的问题。DDD(领域驱动设计)方法就是一种行之有效的划分业务领域边界的方法,以帮助完成应用的拆分和微服务的设计;

z轴: 数据扩展能力

z轴关注数据的扩展能力,它按照业务类型或数据属性进行数据分片。根据数据分片策略将数据集划分为不同的数据子集,提升数据的扩展能力。如按照地域、机构或按照客户ID哈希进行数据分片;
z轴的典型实践案例有: 数据库水平切分和单元化架构;

总结

AKF可扩展能力立方体模型的x、y、Z轴代表的三个维度相辅相成,涵盖业务和技术的多个领域;
通过克隆应用和数据库实例,可以提高应用和数据库的业务承载容量,对应x轴扩展能力;
通过划分业务职能边界建立领域模型,以拆分应用和设计微服务,可以提高业务的复用和扩展能力,对应Y轴扩展能力;
通过分片策略将数据集拆分为多个数据子集或业务单元,可以提高数据的扩展能力,对应Z轴扩展能力;
企业将多个不同维度的扩展能力融合在一起,就可以实现应用能力的无限扩展了;

企业数字化转型的重要关注点

提升技术能力,完成从集中式架构向分布式架构的转型

降低应用建设复杂度,完成从单体到微服务的转型

微服务业务职责单一,团队规模较小,可以更好地实施敏捷开发。微服务软件部署包较小,可以更好地上云,实现应用弹性扩展能力,提高自动化的运维能力,更好地管理和利用好资源;

提升业务复用能力,从IT重复建设到中台战赂

通过划分业务边界构建领域模型,将可复用的业务能力沉淀到中台领域模型,建立企业级整体解决方案,实现业务和流程的组合、复用和融合;

提升移动运营能力,从传统PC端向移动线上化转型

智能技术在移植到PC端应用时,总是受限于PC端应用各种条件的限制,存在这样或那样的“水土不服”。但这些智能技术在移动端应用中却可以实现完美结台。移动端应用有更好的用户体验设计,正吸引着越来越多的用户,也改变了用户的消费行为和使用习惯;

提升企业组织能力,建立与中台相适应的组织架构和万法体系

组织优化是企业数字化转型面临的最复杂、最棘手的问题,需要一把手用很大的魄力来推动;

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

上机练习 8: DataFrame 综合练习

记录一下做的练习题 目录 1)自定义一个 Series 并命名为 s1,自定义索引值,采用随机数作为其中数据尝试使用 s1.sum(计算其中所有数据的和,使用 s.mean(计算其中所有数据的平均值。 2)创建一个形状为4*6的 DataFrame 并命名为 df1,并指定行索引为[“a”…

Linux服务器安装Dotnet8

1. 下载dotnet8 sdk 下载 .NET 8.0 SDK (v8.0.100) - Linux x64 Binaries 拿到 dotnet-sdk-8.0.100-linux-x64.tar.gz 文件 2. 把文件上传到 /usr/local/software 目录 mkdir -p /usr/local/software/dotnet8 把文件拷贝过去 mv dotnet-sdk-8.0.100-linux-x64.tar.gz /usr/loc…

Python 如何实现 Mediator 中介者设计模式?什么是中介者设计模式?Python 设计模式示例代码

什么是中介者设计模式? 中介者(Mediator)设计模式是一种行为型设计模式,其主要目的是通过将对象之间的直接交互转变为通过中介者对象进行的间接交互,从而减少对象之间的耦合度。中介者模式通过集中控制对象之间的通信…

golang学习笔记——递归函数

递归函数 递归,就是在运行的过程中调用自己。 语法格式如下: func recursion() {recursion() /* 函数调用自身 */ }func main() {recursion() }阶乘 阶乘最初的定义就是小于等于某个正整数的所有正整数的乘积,5 的阶乘(记作 5!…

我所理解的 UI Toolkit 启蒙阶段(一)

我所理解的 UI Toolkit 启蒙阶段(一) 对于自己不会的新东西的学习,我认为最合适的路径就是: 实例教学视频 —> 实操熟悉 —> 官方文档查漏补缺 —> 拟定思路实现功能 但这 4 步并非每一步都需要下 100% 的功夫&#x…

三菱FX3U小项目—传输带定分级控制

目录 一、项目描述 二、IO口分配 三、项目程序 四、总结 一、项目描述 两条运输带顺序相连,为了避免运送的物料在1号运输线上堆积,所以启动时,1号运输带开始运行,5S后2号运输带自动启动。停机时顺序与启动刚好相反&#xff0c…

什么是智慧仓储?

“关于智慧仓储,有的说是AGV,有的说是自动化立库,还有的WMS厂家也说自己的系统是智慧仓储,到底什么是智慧仓储?” 先一句话总结一下智慧仓储—— 智慧仓储是指利用先进的信息技术和物联网技术对仓储管理进行优化和智能…

游戏工作中用到的一些第3方软件和作用

记录下平时工作中发现的一些好用的软件: Snipaste:截屏软件 最好用的功能就是可以将截的图留在屏幕上,用来做提醒或者对比. RenderDoc:图形调试器 图形图像开\分析和捕捉时要用到的强大工具,可以捕捉图形帧并分析和调试.涵盖Vulkan,D3D11,D3D12.OpenGL,OpenGL ES以及windows …

postman查询数据库-Xmysql

步骤1:安装node.js 下载地址:Download | Node.js步骤2:安装Xmysql工具,命令行输入 npm install -g xmysql ,过程中会自动安装相关依赖;步骤3:连接数据库 xmysql -h ip -u 账号 -p 密码 -d 库名 如下表示连…

期刊会议的选择

目录 找到所有⽬标期刊定具体期刊 找到所有⽬标期刊 定具体期刊

用Python做安全测试攻击实战

在本文中,我们将使用Python进行一次安全测试的实战演练,目标是找出并利用应用程序的安全漏洞。请注意,这个演练仅用于教育和研究目的,切勿将这些技术用于非法活动。 注意:未经授权的攻击是违法的。确保你在拥有明确权…

Redis数据的持久化

Redis的持久化有两种方式: RDB(Redis Database)和AOF(Append Only File) 目录 一、RDB 保存方式 2、rdb在redis.conf文件中的配置 二、AOF 1、保存方式 2、aof方式持久化在redis.conf文件中的配置 三、持久化建…

JAXB的XmlElement注解

依赖 如果基于JAX-WS开发&#xff0c;可以在maven工程的pom.xml文件中增加如下依赖&#xff0c;会将依赖的JAXB库也下载下来&#xff1a; <dependency><groupId>jakarta.xml.ws</groupId><artifactId>jakarta.xml.ws-api</artifactId><vers…

Kafka学习笔记(三)

目录 第5章 Kafka监控&#xff08;Kafka Eagle&#xff09;5.2 修改kafka启动命令5.2 上传压缩包5.3 解压到本地5.4 进入刚才解压的目录5.5 将kafka-eagle-web-1.3.7-bin.tar.gz解压至/opt/module5.6 修改名称5.7 给启动文件执行权限5.8 修改配置文件5.9 添加环境变量5.10 启动…

一文带你了解docker技术

什么是Docker Docker是一种虚拟技术&#xff0c;诞生于2013年&#xff0c;是dotCloud公司研发的开源项目&#xff0c;因为docker这个公司后来改名docker inc&#xff0c;docker的目标是实现轻量级的操作系统虚拟化解决方案。通俗点说&#xff0c;我们想在一台机器上运行多个系…

卫士之选:迅软DSE解决方案助力IT企业应对数据泄密威胁!

随着信息技术的迅猛发展&#xff0c;软件IT行业正面临着前所未有的数据安全挑战。病毒传播、内部泄密等安全威胁不断涌现&#xff0c;对企业的重要资产和运营造成了严重威胁。与此同时&#xff0c;国家对数据安全的法律法规日益严格&#xff0c;要求企业采取更加有效的措施来保…

Python大数据之linux学习总结——day09_hive函数

hive函数 函数分类标准[重点] 知识点: 原生分类标准: 内置函数 和 用户定义函数(UDF,UDAF,UDTF)分类标准扩大化: 本来&#xff0c;UDF 、UDAF、UDTF这3个标准是针对用户自定义函数分类的&#xff1b; 但是&#xff0c;现在可以将这个分类标准扩大到hive中所有的函数&#…

基于vue-tianditu实现瓦片数据层添加

效果 瓦片TileJson 包下载 pnpm add vue-tianditu main.ts import VueTianditu from "vue-tianditu"; const app createApp(App); app.use(VueTianditu, { v: "4.0", //目前只支持4.0版本 tk: "0b58ed11713850170e0d643e06be225e", }); 拿到瓦…

Spring3新特性:graalvm打包Springboot+Mybatis

Spring3新特性 graalvm打包SpringbootMybatis 项目源代码 https://github.com/cmdch2017/SpringNative_Graalvm_Mybatis 如何安装与运行 安装graalvm与配置环境 首先安装步骤参考这篇博客 https://blog.csdn.net/weixin_38943666/article/details/129505945 其次如何处理…

Linux下非root用户安装CUDA

目录 前言 参考链接 步骤 一. 首先&#xff0c;需要查看系统版本&#xff1a; 二. 安装包下载。 下载CUDA&#xff1a; cuDNN下载 三. 开始安装CUDA和cuDNN 安装CUDA 修改环境变量 安装 cuDNN 查看是否安装成功&#xff0c;输入nvcc -V 前言 由于一些代码实现&…