开发者学堂课程【Spring Cloud 微服务架构设计与开发实战 :微服务架构 Microservice 的淘宝改造案例】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/60/detail/1108
微服务架构 Microservice 的淘宝改造案例
目录:
一、 微服务架构典型案例公司
二、 淘宝微服务架构改造案例
三、 微服务架构拆分原则
一、 微服务架构典型案例公司
(1)典型公司
微服务架构典型的行业有电商、游戏、直播、社交、导航、物联网等等。具体案例公司有淘宝、支付宝、微信、微博等等公司,新兴的公司例如美团、拼多多等等,都是典型的微服务架构的公司。
(2)国内微服务架构
国内的互联网公司普遍是 Java 的技术架构相对多一点,阿里基本都是 Java 技术站,无论是分布式hv服务治理还是微服务架构方面,阿里在 Java 领域都是贡献很大的。
亚马逊现在也有属于自己的 JavaSDK 的分支,亚马逊是现在全球最大的电商和云计算公司,阿里紧随其后;而腾讯是以社交和游戏为主;蚂蚁金服算是阿里的精英,是偏金融类的;京东、拼多多、网易、哈啰单车以及新兴的 APP 平台都是以 Java 技术站为主的公司。Java 的诞生时间较早,企业级架构是顶尖的,非常完善,在云计算领域的公司里 Java 技术架构占比很高,尤其是微服务方面。
(3)全球微服务架构
在全球来看,国外的 Google 和亚马逊是开发技术非常强的两大公司。奈飞公司共建的公司内部自研的核心微服务架构的方案,其他公司也在采用此类模式,例如制作《愤怒的小鸟》的游戏公司。早期使用分布式架构、集群架构、SY 架构,现在大多数使用 SY 架构。
(4)新兴企业
国内华为也在努力引入 Java 技术站,华为早期做通信,而现在做华为云、华为手机后台应用都引入了 Java 的技术;平安公司、IBM 使用老牌的 Java 技术战备。京东2010年转 Java,携程在2016年转入 Java,百度也有 Java 的项目,但它以语言为主,在企业级开发的项目较少。
二、 淘宝微服务架构改造案例
(1)淘宝架构
淘宝在2003年创立,至今已近20年。淘宝在这么长的时间里经过多次技术站的转型,从单体到集群,到分布式微服务架构,甚至云计算平台改造,一系列改造过程几乎代表了互联网在中国发展的最典型的案例。淘宝架构也在不断变化,而不是一成不变的,这也是大多数人在学习中常常以淘宝案例为参考的原因。
(2)淘宝组建
业务一成不变的公司可以说明业务十分成熟,或者在一个水平上不变,可以重复若干年,比如早期银行、IBM 或者其他的数据库等等,都是很典型的架构。
在当年的环境下,IOE 的解决方案价格较高,但是能很有效的解决银行的安全性、稳定性、发展中的需求。但现在如今淘宝转战 Java,尝试用低成本的方案解决高成本的问题,这在当时可以说是前无古人。淘宝当时冒着很大的转型风险,除了可以看到的 MySQL 数据库、HSM 数据库、springcloud 数据库等等阿里巴巴一系列的组建。
(3)淘宝经验
如今也可以看到这些源码,国内在开源领域贡献最大的公司可以排到前二的成绩,Google 微软每年的贡献都是排名靠前的,他们对于中国的技术社区发展分享了许多宝贵的经验,无论来自于哪个技术领域,淘宝的技术架构都是有很大的价值供大家学习的。
(4)阿里人才
阿里的技术人才不仅仅在阿里集团,他们对于中国的互联网发展也产生了很大的影响。阿里的很多技术专家在其他公司也担任了核心技术的岗位,完成设计架构的工作。
(5)互联网发展代表
淘宝和大规模分布式集群服务治理的阶段,以及 oracle 数据库和 MySQL 数据库和新的数据库的出现。
如此看来淘宝也是在逐步微服务化,比如淘宝、天猫、闲鱼等等业务都介入了淘宝里面,淘宝的业务也越来越多,包括淘宝的广告系统、客服系统。以上,淘宝是典型的服务式过渡到微服务阶段,从 PC 阶段逐步移动到互联网 APP 前端的时代,还拓展了小程序。这是很典型的互联网发展的代表。
(6)中台架构
目前还在发展的中台架构。严格来讲中台架构是技术总监,或称为 CTU,是一个战略层次的方案方针。无论是做微服务架构,还是中台架构,还是 HV 架构,一定要得到落地实践。
三、 微服务架构拆分原则
实战阶段以最成熟的 springcloud 微服务架构体系为主。