企业IT架构之道-4
在阿里巴巴共享的中台战略中,共享服务中心是中台架构的基石,如何构建稳定可靠、最高效率支撑上层业务快速创新的共享服务能力是中台战略成功落地的关键
服务能力包括两个层次:
- 底层PaaS的能力,解决大型架构在分布式、可靠性、可用性、容错、监控以及运维层面上的通用需求;
- 业务能力,提供云化的核心业务支撑能力,这层能力建设的好与坏决定了是否真正支持上层业务达到敏捷、稳定、高效。
疑问:
- 淘宝的各个服务中心是怎么建设的?
- 我需要几个服务中心,服务中心的边界是什么?有没有划分的原则、标准?
- 服务中心多大合适?对应的组织团队和流程应该怎么保障?
- 服务中心里面的服务应该有多少?粒度应该多大?
淘宝共享服务中心概貌
最初的四大服务中心:用户中心(UIC)、商品中心(IC)、交易中心(TC)、店铺中心(SC),
1.用户中心
统一淘宝各业务线分散的业务体系,统一了用户数据、存储和服务接口
选择用户中心作为第一个服务中心的原因:
- 跟用户相关服务是业务条最频繁的服务,最大化节省开发、维护成本的同时,最能验证出服务化和系统解耦后给各业务快速响应带来的效果
- 相对商品中心、交易中心在业务复杂程度和重要性上都要小,能降低服务化改造的风险。
改造后的效果
- 用户中心构建了整个阿里巴巴集团统一的用户体系,用户中心服务提供了统一的服务接口,既简化了上层业务的使用,也方便了用户的大数据分析。
- 成立专门负责用户中心运营的团队后,显著提升了对业务需求的响应和效率。
- 系统解耦后,服务的稳定性和可扩展性都得到了极大的提高。
2.商品中心
建设原因:
- 数据量大
- 卖家众多,对同一件商品的叫法差异大,一套统一的商品发布体系很难同时满足各种卖家的需求(B和C)
- 作为电商导购的入口,对数据质量要求高;
- 类目运营小二需要根据商品的分析数据来优化商品的前端类目结构。
需提供的服务能力
- 商品描述能力:1)数据模型:类目属性体系、SPU、SKU等;2)商品存储模型;3)对外提供的服务接口。
- 商品发布能力:Open API,Browser,C/S客户端,无线端APP。
- 商品管理能力:1)数据量大,更新频繁;2)商品类目变化大
- 商品巡检能力:识别无效商品;风险违规描述;
- 商品数据分析能力:支撑小二日常运营、营销活动、类目调整;
- 商品评价能力:识别正常评价,提出恶意评价;
3.交易中心
4.店铺中心
什么是服务中心
-
服务中心一定是不断发展的
尝试服务化 => 全面服务化 => 进入平台化
-
服务中心的服务形态多样性
- 依赖于接口的服务:
- 依赖于工具的服务:1)定制的配置服务,如IC设置前台类目体系;TC配置业务交易流程。2)运营管理类工具,如商品巡检服务。
- 依赖于数据的服务:主要指对大数据的分析能力,对实时交易型的数据能力一定要通过接口暴露
-
一个服务中心的服务可以进一步划分吗?
是,服务中心是业务领域概念,落地到业务架构上不需要一一对应。一个服务中心包含单个服务模块或多个服务模块都是正常的。
服务中的划分原则
共享服务中心的架构目的
- 通过业务拆分降低系统的复杂度
- 通过服务共享来提供可重用性
- 通过服务化来达到业务支持的敏捷性
- 通过统一的数据架构来消除数据交互的屏障
划分原则
从设计层面:遵循面向对象的分析和设计方法,业务和系统建模遵循OO的基本原则。DDD?
从运营层面:服务中心是一个完成的业务模型,要有数据运营和业务整合的价值。不仅仅是提供简单的商品增删改查的服务接口,而是建立一个全球最大的商品库,同时提供该商品库的管理运营的方法和配套工具服务。
从工程层面:共享服务是基于分布式架构,解决了一体化架构大规模应用的问题,也引入了分布式事务、问题排查等难题。因此,一定要综合评估业务层对服务中心在数据库、业务、运营方面的需求和技术上的投诉。
基本原则:
- 高内聚、低耦合原则
- 数据完整性原则: 数据层面的”高内聚、低耦合”原则
- 业务可运营原则 : 服务首先是从业务出发,单纯的技术层面抽象出来的服务框架一般不作为一个可运营的服务中心。
- 渐进性原则:从降低分险和实施难度角度出发,服务化架构师一种敏捷的时间,推荐小步快跑逐步推进,不是推倒重来。