企业IT架构转型之道:阿里巴巴中台战略思想与架构实战感想

文章目录

  • 第一章:数据库水平扩展
  • 第二章:中台战略
  • 第三章:阿里分布式服务架构HSF(high speed Framework)、早期Dubbo
  • 第四章:共享服务中心建设原则
  • 第五章:数据拆分实现数据库能力线性扩展
  • 第六章:异步化与缓存原则
  • 第七章:打造平台稳定性能力
  • 第八章 共享服务中心对内和对外的协作共享


第一章:数据库水平扩展

复杂业务系统的结构化与服务化、解耦
大型系统的消息处理
去IOE:IBM的小型机、Oracle数据库、EMC存储设备
大规模数据的线性可扩展问题,包括存储与访问,方案:开发中间件
全球分布式部署,99.99的高可用、容灾
企业互联网应用运行全程动态感知与管理,提供全部监管能力、且要根据业务流量进行业务的优雅降级,确保系统可用性。
企业架构发展
烟囱式架构(基于单个项目建设、部门间无技术、业务沉淀)-分布式架构-共享式架构
系统的建设要从生产型模型上升到运营型模型
案例
共享服务理念给企业业务发展带来的业务价值*************
案例1:大型国企进行互联网转型尝试与探索
案例2:零售企业如何基于阿里提供的企业级互联网架构重构企业IT架构

第二章:中台战略

构建符合DT- Data technology时代,“大中台,小前台“组织机制和业务机制,即前台一线业务更加敏捷、快速适应市场,而中台将集合整个集团的运营数据能力、产品技术能力,对前台业务形成支撑。居于前台和后台之间。
启发来源:Supercell公司,超级(小)团队尝试快速开发产品,不断跌迭,探索市场和用户喜爱的经营模式。
共享业务事业部框架:
在这里插入图片描述
SOA面向服务体系架构Service -Oriented Architecture
落地大多通过搭建企业有ESB-企业服务总线,属于“中心化“服务框架。大多IT企业系统都采用烟囱式架构,各种系统纷繁林立,如采用技术平台、框架、开发语言各异,为实现各种异构系统间交互。ESB-企业服务总线,提供各种技术接口(HTTP、Socket、JMS、XML、WS)的适配接入、数据格式转换、服务请求路由等功能,核心目标让企业客户能力基于SOA产品实现各系统间互联互通,同时提高开发集成效率,更快实现SOA项目落地,但各系统间服务调用每次都必须经过ESB进行服务路由。
主要特征:面向服务的分布式计算、服务间松散耦合、支持服务的组装、服务注册与自动发现,以服务契约方式定义服务交互。
SOA架构的核心-服务重用,服务共享,构建共享服务体系,将相关业务领域的业务功能和数据模型原生在业务层汇聚。
服务需要不断的滋养
在这里插入图片描述
业务拆分
可解放对单数据库集群连接数的能力依赖,缓解数据库连接瓶颈,整个平台拆分成多个服务中心以及专门应用模块(应用扩展、拆分),数据层也相应拆分,即每个核心服务和应用都拥有独立的数据库-分布式数据库。
分布式服务框架
去中心化服务器架构,中心化服务架构避免因为‘中心点’带来平台难扩展以及潜在的‘雪崩’影响。

第三章:阿里分布式服务架构HSF(high speed Framework)、早期Dubbo

架构(主要组件):服务提供者、服务调用者、地址服务器(配置服务器列表信息,Nginx提供服务能力)、配置服务器、Diamond服务器。
架构图:
在这里插入图片描述

服务交互:Netty + Hession 数据序列化(比JDK 序列化时间开销缩短20倍)协议实现

微服务架构:分布式服务组成的系统、按业务划分组织、实现产品而不是项目、智能化服务端点与傻瓜式服务编排、自动化运维、系统容错、服务快递演化。
本质上来说是SOA演变后的形态,与SOA方式和原则上没有本质区别。
面临难点:有效服务管控,即分布式服务体系下服务琏的跟踪、分析、实时业务指标的监控等问题;分布式事务管理;自动化运维和平台稳定性;微服务的服务设计(服务边界划分)

第四章:共享服务中心建设原则

共享服务中心是集团中台架构的基石。如何构建稳定可靠、最高效地支撑上层业务快速创新的共享服务能力是中台战略成功落地的关键。
服务能力包括两个层次:底层Paas的能力(解决大型架构在分布式、可靠性
可用性、容错、监控以及运维层面上的通用需求)、业务能力(提供云化的核心业务支撑能力,直接决定了对上层业务达到敏捷、稳定、高效的支撑结果)
淘宝共享服务中心:用户中心、商品中心、交易中心、店铺中心。
用户中心:统一各业务线分散的用户体系,统一用户数据、存储、服务接口;
商品中心:提供6核心服务能力,商品描述能力(商品描述数据模型-类目属性体系、SPU、SKU,商品存储模型、商品服务接口);商品发布能力;商品管理能力(大数据量管理);商品巡检能力(在有效生命周期内对商品管理,纠正用户搜索违规行为);商品数据数据分析;商品评价能力;
交易中心:交易业务领域的服务中心,包括交易相关的服务信息(如交易流程、订单管理、支付、结算等)。
店铺中心:承担卖家店铺管理、装修、生命同期管理以及日常管理等业务。
***什么是服务中心:***1)随着业务不断发展 2)服务形态多样化:依赖于接口的服务、依赖于工具的服务(定制配置服务、运营管理类服务)、依赖于数据的服务(如大数据分析能力)、,接口只是服务的最主要形式,服务不能拘泥于接口形式,如有可提供界面形式的服务能力
3)服务中心可进一步划分,服务中心是根据业务和数据的完整性与独立性来设立,服务中心包含的子模块更多是从系统设计和业务架构层面来考虑。现实中业务通常需要多个子服务模块协作配合实现服务,所以真实的服务中心场景中分为单个服务模块和多个服务模块两种形态,如多个服务模块交易中心服务包括订单服务和购物车服务。
服务中心划分原则:建设考量三方面:设计、运营、工程。设计原则上的平衡,技术、成本、资源、性能、团队等各方面的平衡。
从共享服务中心目标服务层面:通过业务拆分降低系统复杂性;通过服务共享提供可重用性;通过服务化达到业务支持的敏捷性;通过统一的数据架构消除数据交互的屏障;
从设计层面:主要遵循面向对象的分析和设计的方法,即业务和系统建模遵循面向对象的基本原则。
从运营层面:服务中心是一个完整的业务模型,有数据运营和业务整合的价值。
从工程方面:共享服务的架构基于分布式架构,在规划服务中心时需要综合评估业务层对服务中心在数据库、业务以及运营方面的需求和技术上需要的投入。
总结基本原则:
1)高内聚、低耦合原则:服务中心内的服务间是相关性高、依赖性高,而各服务中心间业务隔离性大,即尽可能的低耦合。
2)数据完整性原则
3)业务可运营性原则,期望服务中心是承载业务逻辑、沉淀业务数据、产生业务价值的业务单元。
4)渐进性的建设原则,服务化从简单开始,通过真实的业务需求锤炼稳定可靠的共享服务。

第五章:数据拆分实现数据库能力线性扩展

5.1数据库瓶颈阻碍业务的持续发展
采用数据垂直分区方式对业务数据进行分区。数据库读写分离扩展数据库对数据读的处理能力。而主库因写入数据量大而产生数据压力时,采取水平分区方式对数据行为拆分,即将同表中的不同数据拆分到不同数据库中,如用户中心用户数据6亿,通过用户ID hash取模方式实现用户数据平均分布。
5.2数据库分库分表的实践
分布式数据库产品DRDS-Distributed Relational Database Service,按量付费,共享实例的DRDS,目前价格为0.2元/小时。

第六章:异步化与缓存原则

好的设计可很好提高分布式应用架构和性能。
6.1 业务流程异步化
6.2 数据库事务异步化
6.2事务与柔性事务。数据库事务核心体现ACID[Atomicity、Consistency、Isolation、Durability],业务一致性,分布式领域CAP[强一致性Consistency、可用性Availability、网络容错性Partition-tolerance]理论和BASE理论[基本可用性BA、柔性状态Soft State、最终一致性Eventual Consistency]。

第七章:打造平台稳定性能力

7.1 限流和降级,限流一般通过服务的QPS[Queries-per-second]作为限流的关键指标,业务场景有:能力+平台+省份业务限流、黑名单限流、Cookie限流等。降级是指当服务器压力剧增的情况下,根据当前业务情况及流量对一些服务和页面有策略的降级,以此释放服务器资源以保证核心任务的正常运行。
7.2 流量调试
7.3业务开关
7.4容量压测及评估规划

第八章 共享服务中心对内和对外的协作共享

共享服务平台建设思路:借鉴SOA和API管理的思想。

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

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

相关文章

征程 6 工具链性能分析与优化 2|模型性能优化建议

01 引言 为了应对低、中、高阶智驾场景,以及当前 AI 模型在工业界的应用趋势,地平线推出了征程 6 系列芯片。 在软硬件架构方面,征程 6 不仅保持了对传统 CNN 网络的高效支持能力,还强化了对 Transformer 类型网络的支持&#xf…

字符编码和字符集

1. 字符编码和字符集 1.1. 字符编码 编码:字符 –>字节解码:字节 –>字符字符编码Character Encoding : 就是一套自然语言的字符与二进制数之间的对应规则。 1.2. 字符集 字符集 Charset:是一个系统支持的所有字符的集合&#xff0…

Kafka面试题解答(二)

1.怎么尽可能保证 Kafka 的可靠性 kafka是可能会出现数据丢失问题的,Leader维护了一个动态的in-sync replica set(ISR),意为和 Leader保持同步的FollowerLeader集合(leader:0,isr:0,1,2)。 如果Follower长…

Chromium127编译指南 Linux篇 - 获取Chromium源码(四)

引言 在前一节中,我们成功配置了 depot_tools 并验证了开发环境的基本可用性。接下来,我们将着手于拉取和初始设置 Chromium 的源码,这是进行 Chromium 开发的首要步骤。通过有效的源码管理和版本控制,我们能更高效、流畅地进行开…

LINUX离线安装Milvus

一.下载安装包 离线安装Docker需要你提前下载Docker的安装包,并将其传输到目标机器上进行安装。以下是一个基于Linux系统的离线安装Docker的简要步骤和示例: 从有网络的机器上下载Docker安装包。 将下载的安装包拷贝到离线的服务器上。 在离线的服务…

【HGT】文献精讲:Heterogeneous Graph Transformer

【HGT】文献精讲:Heterogeneous Graph Transformer 标题: Heterogeneous Graph Transformer (异构图Transformer) 作者团队: 加利福尼亚大学Yizhou Sun 摘要: 近年来,图神经网络(GN…

书客、柏曼、爱德华护眼台灯护眼效果怎么样?真实测评告诉你真相

现在的孩子学习压力很大,在学校课程已经塞满了大半天,课后的作业更是不少,空闲时间还需要去课后补习班的数不胜数。用眼的次数非常的高,眼睛很容易感到疲惫,这时候我们的护眼台灯大有作用,好的护眼台灯可以…

(一)<江科大STM32>——软件环境搭建+新建工程步骤

一、软件环境搭建 (1)安装 Keil5 MDK 文件路径:江科大stm32入门教程资料/Keil5 MDK/MDK524a.EXE,安装即可,路径不能有中文。 (2)安装器件支持包 文件路径:江科大stm32入门教程资料…

Springboot 整合 Java DL4J 打造文本摘要生成系统

🧑 博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/literature?__c1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,…

外排序之文件归并排序实现

1. 外排序 外排序(External sorting)是指能够处理极⼤量数据的排序算法。通常来说,外排序处理的数据不能 ⼀次装⼊内存,只能放在读写较慢的外存储器(通常是硬盘)上。外排序通常采⽤的是⼀种“排序-归并”的策略。在排序阶段&…

校园官网练习---web

HTML&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>西安工商学院</title><…

JAVA-08-继承

继承 父类&#xff1a;被继承的类 子类&#xff1a;继承父类的类&#xff0c;可以访问父类的公有和保护成员。 extends:使用 extends 关键字来表示一个类继承另一个类。 方法重写:子类可以重写父类的方法&#xff0c;以提供特定的实现。重写的方法必须与父类中的方法具有相…

Trimble X12三维激光扫描仪正在改变游戏规则【上海沪敖3D】

Trimble X12 三维激光扫描仪凭借清晰、纯净的点云数据和亚毫米级的精度正在改变游戏规则。今天的案例我们将与您分享&#xff0c;X12是如何帮助专业测量咨询公司OR3D完成的一个模拟受损平转桥运动的项目。 由于习惯于以微米为单位工作&#xff0c;专业测量机构OR3D是一家要求…

SpringBoot框架下的资产管理创新

4系统概要设计 4.1概述 系统设计原则 以技术先进、系统实用、结构合理、产品主流、低成本、低维护量作为基本建设原则&#xff0c;规划系统的整体构架. 先进性&#xff1a; 在产品设计上&#xff0c;整个系统软硬件设备的设计符合高新技术的潮流&#xff0c;媒体数字化、压缩、…

统信UOS开发环境支持Perl

UOS凭借广泛的编程语言支持,为开发者构建了一个高效灵活的开发环境,无需担心环境兼容性问题。 文章目录 一、环境部署1. Perl开发环境安装2. Perl开发环境配置环境变量配置模块管理器编辑器集成调试工具二、代码示例文件处理Web开发三、常见问题1. 依赖管理问题2. 性能问题3.…

qt QClipboard详解

1、概述 QClipboard是Qt框架中的一个类&#xff0c;它提供了对窗口系统剪贴板的访问能力。剪贴板是一个临时存储区域&#xff0c;通常用于在应用程序之间传递文本、图像和其他数据。QClipboard通过统一的接口来操作剪贴板内容&#xff0c;使得开发者能够方便地实现剪切、复制和…

机器学习在时间序列预测中的应用与实现——以电力负荷预测为例(附代码)

&#x1f4dd;个人主页&#x1f339;&#xff1a;一ge科研小菜鸡-CSDN博客 &#x1f339;&#x1f339;期待您的关注 &#x1f339;&#x1f339; 1. 引言 随着数据采集技术的发展&#xff0c;时间序列数据在各个领域中的应用越来越广泛。时间序列预测旨在基于过去的时间数据来…

强大的吾店云建站平台介绍

经过多年在WordPress建站领域的摸索和探索&#xff0c;能轻松创建和管理各种类型网站的平台 – 吾店云建站平台诞生了。 应该说这是一个艰苦卓绝的过程&#xff0c;在中国创建一个能轻松创建和使用WordPress网站的平台并不容易&#xff0c;最主要是网络环境和托管软件的限制。…

猿创征文|Inscode桌面IDE:打造高效开发新体验

猿创征文&#xff5c;Inscode桌面IDE&#xff1a;打造高效开发新体验 引言 在当今快速发展的软件开发领域&#xff0c;一个高效、易用的集成开发环境&#xff08;IDE&#xff09;是每个开发者必不可少的工具。Inscode 桌面 IDE 作为一款新兴的开发工具&#xff0c;凭借其强大…

Java多线程并发安全问题

多线程并发安全问题 概念 当多个线程并发操作同一临界资源,由于线程切换时机不确定,导致操作临界资源的顺序出现混乱严重时可能导致系统瘫痪. 临界资源:操作该资源的全过程同时只能被单个线程完成. 例 当beans为1时&#xff0c;若两个线程同时调用getBean方法&#xff0c;t…