当前位置:首页 > 科技  > 软件

架构本质和微服务,你了解吗?

来源: 责编: 时间:2024-06-05 17:44:59 217观看
导读图片好的架构就像优美的散文,行散神不散。什么是服务业务封装服务是动词,对业务流程进行封装和抽象。封装针对业务深度,如下单服务封装下单一系列处理过程。抽象针对业务广度,支持类似的业务流程,如普通商品/虚拟商品/团购

图片图片8Th28资讯网——每日最新资讯28at.com

好的架构就像优美的散文,行散神不散。8Th28资讯网——每日最新资讯28at.com

什么是服务

业务封装

服务是动词,对业务流程进行封装和抽象。封装针对业务深度,如下单服务封装下单一系列处理过程。抽象针对业务广度,支持类似的业务流程,如普通商品/虚拟商品/团购商品下单。8Th28资讯网——每日最新资讯28at.com

组件复用

进程外调用,接口无状态;8Th28资讯网——每日最新资讯28at.com

职责聚焦,边界明确;8Th28资讯网——每日最新资讯28at.com

独立开发,独立部署。8Th28资讯网——每日最新资讯28at.com

图片图片8Th28资讯网——每日最新资讯28at.com

Case分析Case分析8Th28资讯网——每日最新资讯28at.com

下单服务

粗粒度 SOA

提供端到端的功能,对应用友好8Th28资讯网——每日最新资讯28at.com

服务内部实现复杂,访问一系列库表,对象之间有大量计算,耦合紧密8Th28资讯网——每日最新资讯28at.com

如果需求有变化,整个大服务跟修改和重新部署。8Th28资讯网——每日最新资讯28at.com

下单逻辑聚合

微服务8Th28资讯网——每日最新资讯28at.com

  • 每个子服务高度聚焦,边界清晰,独立数据模型
  • 需要上层应用做服务聚合,一般简单组装即可
  • 需求有变化,修改对应子服务。因子服务提供功能完备,一般应用方调整聚合逻辑即可(比如虚拟商品下单,可以跳过发票/发货环节)。

图片图片8Th28资讯网——每日最新资讯28at.com

图片图片8Th28资讯网——每日最新资讯28at.com

图片图片8Th28资讯网——每日最新资讯28at.com

图片图片8Th28资讯网——每日最新资讯28at.com

图片图片8Th28资讯网——每日最新资讯28at.com


8Th28资讯网——每日最新资讯28at.com

落地建议

粗粒度SOA

  • 系统业务之间比较独立,耦合度不高,面向具体业务需求,提供流程端到端处理,如OTA业务。
  • 业务流程比较固定,直接封装,如银行转账。

微服务

  • 业务流程环节多,易变,为每个处理节点构造微服务,允许调整,如电商下单。
  • 业务广度和深度都非常复杂,互相关联,通过主数据服务打造微内核,简化依赖并允许上层自由组合,如B2C电商业务。

微服务改造步骤:8Th28资讯网——每日最新资讯28at.com

图片图片8Th28资讯网——每日最新资讯28at.com

1. 圈定访问表

步骤:8Th28资讯网——每日最新资讯28at.com

  • 确定哪些表是某个服务所专用的,并且不允许其他服务访问这些表。例如,订单服务可能会访问订单主表和订单明细表,但不允许其他服务访问这些表,订单服务也不会访问其他服务的表。

目的:8Th28资讯网——每日最新资讯28at.com

  • 通过明确表的访问边界,减少服务之间的耦合,确保数据访问的安全性和一致性。

2. 收集SQL

步骤:8Th28资讯网——每日最新资讯28at.com

  • 收集各个应用对指定表的所有SQL访问需求。
  • 如果某些SQL涉及到关联其它表,则需要先将这些SQL进行拆分,确保每个SQL只涉及到单个服务的表。

目的:8Th28资讯网——每日最新资讯28at.com

  • 了解所有的SQL访问需求,为后续的优化和设计提供依据。

3. 提炼SQL整体设计

步骤:8Th28资讯网——每日最新资讯28at.com

  • 对收集到的SQL访问需求进行分类和提炼。
  • 进行总体设计,如统一缓存、优化查询等,以提升系统性能。

目的:8Th28资讯网——每日最新资讯28at.com

  • 通过提炼和优化,减少重复的SQL访问,提升数据库访问的效率。

4. 开发接口

步骤:8Th28资讯网——每日最新资讯28at.com

  • 根据提炼后的SQL需求,开发相应的服务接口。
  • 确保这些接口能够满足各个应用的SQL访问需求。

目的:8Th28资讯网——每日最新资讯28at.com

  • 提供统一的服务接口,简化应用的开发和维护。

5. 应用接入

步骤:8Th28资讯网——每日最新资讯28at.com

  • 各个应用逐步接入新的服务接口。
  • 可以边开发边上线和接入,确保平稳过渡。

目的:8Th28资讯网——每日最新资讯28at.com

  • 通过逐步接入,减少对现有系统的冲击,确保平稳过渡到新的微服务架构。

6. 独立迁库

步骤:8Th28资讯网——每日最新资讯28at.com

  • 在条件允许的情况下,可以考虑将表的schema进行修改,并将数据迁移到独立的数据库。
  • 彻底与现有的库表分开,确保新的微服务架构的独立性。

目的:8Th28资讯网——每日最新资讯28at.com

  • 通过独立迁库,进一步减少服务之间的耦合,提高系统的可维护性和扩展性。

B2C电商系统架构:8Th28资讯网——每日最新资讯28at.com


8Th28资讯网——每日最新资讯28at.com

图片图片8Th28资讯网——每日最新资讯28at.com


8Th28资讯网——每日最新资讯28at.com

业务应⽤层

  • 包括不同业务线的应用,如自营、商城、无线、商家、供应商和第三方。这些业务应用通过业务接口调用底层的组件和服务,实现具体的业务功能。
  • 具体的业务模块如Mobile(移动端)、CMS(内容管理系统)、分类、详情页、广告、搜索、购物车、结算、订单管理、物料信息、账户管理、CRM(客户关系管理)等。

组件化/服务层

  • 这一层主要负责具体的业务逻辑和功能实现,通过组件和服务提供给上层业务应用调用。
  • 主要包含应用服务和基础服务:

应用服务

  • 下单(OMS、Shopping):负责处理订单管理和购物相关的业务逻辑。
  • 促销、个人中心、精准化、评论、PMS(商品管理系统):处理促销活动、用户个人中心、精准营销、用户评论和商品管理相关的业务。
  • 客⼾服务(Invoice、GRS(退货管理系统)):处理客户服务和发票、退货相关的业务。
  • YCM(优惠券管理)、PIS(库存管理系统)、团购、Coupon(优惠券):处理优惠券、库存管理、团购和其他促销活动。
  • Search、AD(广告)、Store、特卖、Finance(财务)、Payment(支付)、更多服务:处理搜索、广告、商店、特卖、财务、支付等其他服务。

基础服务

  • 产品服务:处理产品信息的管理。
  • 库存服务:管理库存相关的数据和操作。
  • 价格服务:管理商品价格和定价策略。
  • 用户服务:管理用户信息和用户操作。
  • 订单服务:管理订单相关的数据和操作。
  • 支付服务:处理支付相关的操作和数据。

数据层

  • 这一层负责数据的存储和管理,包含了不同类型的数据仓库:

Product:产品数据。8Th28资讯网——每日最新资讯28at.com

User:用户数据。8Th28资讯网——每日最新资讯28at.com

Stock:库存数据。8Th28资讯网——每日最新资讯28at.com

Order:订单数据。8Th28资讯网——每日最新资讯28at.com

Wireless:无线相关数据。8Th28资讯网——每日最新资讯28at.com

SBY:可能是某个特定业务线的数据(需要具体上下文来确认)。8Th28资讯网——每日最新资讯28at.com

BI:商业智能相关的数据。8Th28资讯网——每日最新资讯28at.com

大数据:大数据平台,用于存储和分析大量业务数据。8Th28资讯网——每日最新资讯28at.com

缓存平台

  • 提供了系统的缓存功能,以提升数据访问的速度和系统的响应时间。

这个架构展示了一个分层清晰、职责明确的电商平台架构,通过不同层次的分工和协作,实现了复杂业务需求的处理。每一层都有特定的职责,从数据存储、基础服务,到业务逻辑和具体应用,实现了高效的业务处理和良好的扩展性。8Th28资讯网——每日最新资讯28at.com

关键点:8Th28资讯网——每日最新资讯28at.com

  • 分层设计:每一层都有明确的职责,确保了系统的模块化和可维护性。
  • 组件化服务:通过组件化和服务化的设计,提高了系统的灵活性和可扩展性。
  • 数据管理:数据层管理着不同类型的业务数据,通过统一的数据平台支持上层业务应用。
  • 缓存机制:通过缓存平台提升了系统的性能和响应速度。

本文链接:http://www.28at.com/showinfo-26-92146-0.html架构本质和微服务,你了解吗?

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 好坑,流水号重复竟然导致了一次生产事故!

下一篇: 我们一起聊聊Python中的多线程与线程池

标签:
  • 热门焦点
  • 5月iOS设备性能榜:M1 M2依旧是榜单前五

    和上个月一样,没有新品发布的iOS设备性能榜的上榜设备并没有什么更替,仅仅只有跑分变化而产生的排名变动,刚刚开始的苹果WWDC2023,推出的产品也依旧是新款Mac Pro、新款Mac Stu
  • 帅气纯真少年!日本最帅初中生选美冠军出炉

    日本第一帅哥初一生选美大赛冠军现已正式出炉,冠军是来自千叶县的宗田悠良。日本一直热衷于各种选美大赛,从“最美JK”起到“最美女星&r
  • 掘力计划第 20 期:Flutter 混合开发的混乱之治

    在掘力计划系列活动第20场,《Flutter 开发实战详解》作者,掘金优秀作者,Github GSY 系列目负责人恋猫的小郭分享了Flutter 混合开发的混乱之治。Flutter 基于自研的 Skia 引擎
  • 企业采用CRM系统的11个好处

    客户关系管理(CRM)软件可以为企业提供很多的好处,从客户保留到提高生产力。  CRM软件用于企业收集客户互动,以改善客户体验和满意度。  CRM软件市场规模如今超过580
  • 零售大模型“干中学”,攀爬数字化珠峰

    文/侯煜编辑/cc来源/华尔街科技眼对于绝大多数登山爱好者而言,攀爬珠穆朗玛峰可谓终极目标。攀登珠峰的商业路线有两条,一是尼泊尔境内的南坡路线,一是中国境内的北坡路线。相
  • 东方甄选单飞:有些鸟注定是关不住的

    文/彭宽鸿编辑/罗卿东方甄选创始人俞敏洪带队的“7天甘肃行”直播活动已在近日顺利收官。成立后一年多时间里,东方甄选要脱离抖音自立门户的传闻不绝于耳,“7
  • 年轻人的“职场羞耻感”,无处不在

    作者:冯晓亭 陶 淘 李 欣 张 琳 马舒叶来源:燃次元“人在职场,应该选择什么样的着装?”近日,在网络上,一个与着装相关的帖子引发关注,在该帖子里,一位在高级写字楼亚洲金
  • 三星Galaxy Z Fold5今日亮相:厚度缩减但仍略显厚重

    据官方此前宣布,三星将于7月26日也就是今天在韩国首尔举办Unpacked活动,届时将带来带来包括Galaxy Buds 3、Galaxy Watch 6、Galaxy Tab S9、Galaxy
  • 荣耀Magicbook V 14 2021曙光蓝版本正式开售,拥有触摸屏

    荣耀 Magicbook V 14 2021 曙光蓝版本正式开售,搭载 i7-11390H 处理器与 MX450 显卡,配备 16GB 内存与 512GB SSD,重 1.48kg,厚 14.5mm,具有 1.5mm 键盘键程、
Top