开发者学堂课程【Spring Cloud 微服务架构设计与开发实战 :微服务架构 Microservice 的典型应用场景】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/60/detail/1107
微服务架构 Microservice 的典型应用场景
内容介绍:
一、微服务架构4大互联网公司案例
二、微服务架构 Microservice 典型场景
三、微服务架构经典案例
一、微服务架构4大互联网公司案例
目前智能手机的首页应用均为微服务架构。
例如淘宝、支付宝、微信、微博等等。此类APP其中有许多子系统,子系统不能同时进行开发项目,业务模式决定了其架构不能采用一种单体架构形式解决所有问题。
业务孵化过程
在互联网公司的业务创新方面都有创新孵化团队,在新项目或新业务最初常常只有几个人,项目壮大后团队会拓展到几千甚至几万人。这是业务内部孵化过程。
孵化后项目总平台将开始引流的过程。
例如抖音的电商平台,淘宝直播,微信小程序,支付宝小应用。此类引流时间可不同于大平台,有需求时开通流量入口,此时引流不单单称作单一应用,而是应用生态,或称为大的应用平台。此类生态或平台 APP 适合微服务架构,业务可常年在此独立运行。
二、微服务架构 Microservice 典型场景
微服务典型场景
场景包括:社交、电商、游戏、导航、聊天、搜索及 IOT。此类业务快速发展领域的 APP 都适合微服务架构。
不适合迭代的系统
有些业务不发展的系统和业务稳定的系统架构不适合迭代,长时间用一套系统,不需要更新换代。例如一套不需要人脸识别的门禁系统,长时间运行也不需要更新,或者银行某个系统不需要与移动端对接,只需要过脚本。
用微服务架构要与实际相联系
是否用微服务架构要与实际情况相联系,要与实际业务需求有关系,并非不用微服务架构是落后的,在当前时代或业务在当前时代的契合度不是很高,例如内部的招聘系统就不需要微服务系统,只有几个用户,做简历时几个人共同完成,不需要迭代,此时如果运用微服务系统,运营成本比平时上升了许多,甚至增加了开发人员、基层测试人员,各种复杂的问题都会出现。
三、微服务架构经典案例
《电商网站微服务架构设计案例》
《新浪微博微服务架构设计案例》
《微信聊天微服务架构设计案例》
《支付系统微服务架构设计案例》
《地图导航微服务架构设计案例》
《手机游戏微服务架构设计案例》
《物联IOT微服务架构设计案例》
《广告数据微服务架构设计案例》
以上反映架构的拆分,本质上反映的是业务的拆分。业务快速发展时,技术要快速发展,架构要快速迭代,要适应业务快速发展的模型。
(1)微服务与电商架构
淘宝的微服务架构、微服务的拆分原则以及框架选型
电商以淘宝为例,淘宝是“巨头”,是对重度使用Java技术架构,它是阿里对Java的整个体系发展做出了突出贡献,它有很多实践落地的方案,包括自己开发页面和开发框架。淘宝的账户衍生出支付平台,渐渐剥离出支付宝,它又发展成庞大的系统平台,而且里面包含若干个子系统、子业务,例如余额宝就是独立的微服务架构。拆分微服务后期要做机群,体现了弹性伸缩的概念。
一般在共享账号方面体现出来,比如现在支付宝与淘宝、支付宝与天猫可以共享账号。淘宝要打通所有平台,可以称为单点登录,意为一个账号即可完成所有活动,近年来抖音和美团也在向单点登录靠拢,账号提供全局统一验证服务。
如今支付宝稍微复杂一点,关于信用的接口,个人支付信用大数据都同时记录。商品的服务也独立,支持不同商品有不同的服务接口,无法做到完全统一,其间有商品团队、订单团队、快递团队(菜鸟)、支付团队(支付宝)、评价团队。
而评价并不是只包含五星好评,而且包含追评,评论需要大数据,例如做排名、行家买手等等业务都可衍生。以淘宝、京东、拼多多为例都是典型的电子架构,前端支持的客户端都是不只是传统的 pc,且包含 APP、小程序都支持,且客户端会对接不同的系统,数据库不只是 MySQL 的单一数据库,MongoDB 之类的数据库会大量使用。
(2)微服务与物联网 IOT 架构物联网现在火遍华南,物联网来看监控设备、侧脸设备、移动导航设备等等都是物联网的体现。而且移动物联网在侧脸设备中运用比较多,例如特斯拉、次脸雷达、摄像头、交通监控网络、公安人脸识别任务。汽车的车载物联网系统适合运用为辅架构,每台车后期数据量收集量必然增加,一些对于实时性要求高的数据需要实时采集,飞机同理,飞机都配备了定位导航的设备,大楼对于火灾温度、光照、湿度等都有实时采集的需求。
物联网架构体系前端对于不同 IOT 设备,数据采集对于后面进行存储分析。比如如果苹果手机丢失后,手机后台开关设置允许提交最后一次开机的位置,通过AppleID 账户寻找手机。
在车载市场,哈啰单车、小黄车、摩拜单车都是典型的物联网设备,其开锁都是由远程控制,它的数据、定位一定会添加 GPS 定位的装置,否则无法计算里程。以上都是典型场景与物联网结合的行业,它既是物联网,也是互联网,并没有完全划清界限,以上案例都是典型代表,可作为参考案例。
(3)微服务与游戏架构
腾讯在国内作为最大的游戏厂商,不仅有 APP,而且开拓了微信小程序入口,这是典型的微服务架构,因为不论进入哪一个游戏,都需要用腾讯账号登录。在数据独立统一后,方便用户访问不同的游戏平台,快速进行推广上线,提高用户体验,利于用户充值及继续游戏的心理,则腾讯利益增长速度增快。
用户在游戏中的切身体会越舒适,用户便更愿意玩,企业盈利速度更快。当游戏的每一个部分分别独立,整合资源,便可以更加迅速的开发下一款项目。例如微信刚刚开发完毕时,利用 qq 用户的账号直接登录,减少了用户的注册环节。
(4)微服务与地图导航架构
导航如今增加了许多业务。例如打车、旅游线路、酒店推广等等。在使用这类业务时手机会自动采集数据,收集的数据会用来做大数据分析以及后续业务创新。平台的重要特点是业务创新,这促进了技术的发展。在中国的互联网公司大部分不是技术驱动,大部分公司面临业务生存的压力,所以只要解决了用户需求,创业成功是一件很容易的事情。
不同的公司都有自己诞生的背景,但作为技术人员来说,我们本质要以业务为根本出发点。