前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一周技术学习笔记(第89期)-共享服务放大就是中台

一周技术学习笔记(第89期)-共享服务放大就是中台

作者头像
王新栋
发布2022-12-01 15:30:28
2180
发布2022-12-01 15:30:28
举报
文章被收录于专栏:程序架道程序架道

整个架构结构发展的历程,大概是从单体到分布式,到SOA,到微服务,最后或者说是现在的中台。

图自《架构实战案例解析》

这个历程,以及最终结果的产生,都是因为系统要不断适应业务复杂化

一个业务流程从开始到结束的长度,我们称之为业务的深度。自然也就有它自身的复杂性。比如查看商品详情,自然要将商品信息从数据库里面读取出来,然后需要组装商品的促销信息和价格,以及有无商品标签,比如7天无理由退货等等,最后将全面的商品信息展示给用户。

其实,在单体的时候,它是很清晰的能把这种业务流程的深度展示清楚的。

图自《架构实战案例解析》

但是呢,业务流程不仅仅只有从页面到数据库这样的简单。比如一个电商的下单流程,先浏览商品详情,加入购物车,提交订单,最终进行支付,如果要考虑后续的履约流程,那么这个业务流程模块就会更多。

这个时候,单体应用就缺乏清晰的边界,模块结构是否合理,很大程度上只能依赖于程序员的个人水平。

即使个人的水平很高,那么他处理一个把首页、搜索页、详情页、支付页等所有的功能在一起的系统里面也是一个很大的心理负担和挑战。而且,当这样的每个模块的业务都变得越来越复杂的时候,程序员就要维护一个庞大的网状依赖系统。

业务的复杂度急剧上升,模块的数量大幅增加。

所以就开始分,人类最聪明的地方,就是善于把大事化小,把整体化零碎。

你可以看到分布式、微服务都是这样的思路。这样就把一个大系统的业务复杂度,分割成多个小业务的复杂度,从而降低了整体的复杂度。从而进行了业务广度上的切分

微服务架构= 80% 的SOA 服务架构思想+ 100% 的组件化架构思想+ 80% 的领域建模思想。

封装底层基础业务的是共享微服务,封装流程的是聚合微服务,封装具体业务场景的服务端是应用微服务,封装基础中间件(如 Redis 缓存、消息推送)的是系统微服务。

把共享微服务放大,就是中台。

参考资料:《架构实战案例解析》

----END----

这里记录,我每周碰到的,或想到的,引起触动,或感动的,事物的思考及笔记。不见得都对,但开始思考记录总是好的。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-11-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序架道 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档