安庆大理运城常德铜陵江西
投稿投诉
江西南阳
嘉兴昆明
铜陵滨州
广东西昌
常德梅州
兰州阳江
运城金华
广西萍乡
大理重庆
诸暨泉州
安庆南充
武汉辽宁

如何设计交易中台服务

7月7日 星宿房投稿
  通过电商平台进行购物通常会经过下单、支付、发货、收货等多个流程,我们往往使用【链路】的方式来表达该流程,如下图所示。在画交易链路图时需要注意:圆圈表示的是一个【状态】,圆圈之间的连线表示的是一个【事件】或【动作】;【状态】是在【事件】的驱动之下进行更新和变化的;【状态】具有持续性,而【事件】则是瞬时的。
  像这样的一个交易链路是非常非常理想化的。现实中,随着用户量增大,交易中各种异常情况的出现,我们需要在该交易链路中引入各种负向的行为。所以,真实的交易链路应该是如下图所示的情况这样:交易链路应该是网状结构,而非线性结构!
  面对这样的一个交易链路,应该如何进行实现呢?相比应该难不倒大家,哪怕多写几个ifelse和switch语句也是可以落地实现的。
  我们今天的问题是:假设你是一个交易中台的技术负责人,有几十条业务线会接入交易中台系统;最关键的点是这几十条业务线都有自己专门的交易链路(比如:有的业务线是做C2C交易的,有的业务线是做B2B交易的,还有的业务线是做C2B2C交易的),这几十条交易链路都有自己的流转规则,如下图所示。
  你作为交易中台的技术负责人,针对交易链路这一块,应该如何设计交易中台呢?既要方便业务线快速接入,也要方便后续交易中台的代码维护。
  解析:
  交易链路图其本质是一个状态转换图,状态转换图表达的是一个【有限状态机】,即我们常说的【FSM】。我们基于FSM的思想来设计交易中台,整体架构如下图。
  每条业务线都有自己的状态流转规则,而且状态流转规则会随着业务发展不断进行更新;要更轻松维护这几十个FSM,需要统一对其进行结构化存储,降低状态变更和代码维护的复杂度,并由【交易中台】作为FSM执行机来执行交易流程。
  为实现业务线快速接入,可通过配置化的方式实现接入;FSM实现结构化存储之后,实现业务线配置化接入则是顺理成章的事情了!下面我们集中讨论如何实现FSM的结构化存储。
  我们对交易链路进行抽象,可以剥离出一个最小的链路单元:【一个当前状态】和【一个动作】和【一个更新后的状态】;那么所有的链路单元组合在一起,就是复杂的网状结构的交易链路了;我们用以下图来表示每一个交易链路单元。
  在这个二维表格中,纵向第一列的每一个单元格表示【交易状态】,横向第二行的每一个单元格表示【动作】,中间单元格表示每一个对应的动作触发状态的变化。
  我们将每一个最小的链路单元作为一条记录,可以很容易实现FSM的结构化表示,如下图二维关系表所示:
  我们对每一个字段逐个进行分析:
  1。【id】id是一个自增型的主键,唯一表示一条记录;每一条数据记录就是一个最小的交易链路单元;
  2。【fsmtype】fsmtype用以区分不同的业务线,每一条业务线都有其自己独立的FSM编号;
  3。【optype】optype表示动作或事件,该动作触发了交易状态的变化;
  4。【role】role用于描述触发动作的角色,例如:同意退款这个动作只能由卖家这个角色来完成,买家是没有权限触发的;因此role这个字段可以更方便实现用户的权限控制;
  5。【sourcestatus】和【targetstatus】sourcestatus是变更之前的交易状态,targetstatus是变更之后的交易状态;综述以上几个字段,就是:role角色的用户触发了optype动作,将交易状态sourcestatus变更为
  6。【handler】handler这是整个交易中台设计的亮点,体现了插件化和可插拔的设计思想;在交易状态变更时需要执行的业务逻辑由handler进行执行,配置了什么样的handler,就执行怎样的逻辑;很明显,在具体落地时,通常由【反射机制】实现字符串到实现类的映射。
  对这7个字段完全理解之后,对交易链路中台的设计在一瞬间应该会有豁然开朗的感觉。任何一条业务线,在接入交易中台时,只需在该二维表格填写记录,表达出交易链路规则即可。
  接下来就是交易中台的FSM执行机如何基于FSM的结构化存储来完成交易链路逻辑了;彻底理解整个交易中台的设计思想后,这一部分逻辑就非常简单了;这里将接口设计列出,具体实现大家自行实现,具体细节我们在后面的技术短文中继续进行分析。
  FSM执行机引擎接口
  publicinterfaceFsmEngine{
  初始化状态机配置
  voidinit();
  执行状态机
  voidperform(FsmContextcontext);
  获取执行机运行后的状态
  FsmNodeResultgetPerformResult(FsmContextcontext);
  }
  状态机在状态变化时执行的handler接口
  publicinterfaceFsmAction{
  操作权限校验
  voidcheck(FsmContextcontext);
  执行状态机handler
  voidexecute(FsmContextcontext,FsmNodeResultfsmNodeResult);
  }
  最后,总结文中关键:
  1。交易链路图其本质是一个状态转换图,表达的是一个FSM,即有限状态机;
  2。对FSM进行结构化存储,降低交易状态变更和代码维护的复杂度,方便业务线配置化接入;
  3。将每一个最小的链路单元作为一条记录,可以很容易实现FSM的结构化表示;
  4。对FSM进行结构化存储时,涉及关键字段:【id】【fsmtype】【optype】【role】【sourcestatus】【targetstatus】【handler】,handler是整个交易中台设计的亮点,体现了插件化和可插拔的设计思想。
投诉 评论 转载

连花清瘟爆火链式反应连翘价格3年翻5倍中成药成本承压21世纪经济报道记者董鹏成都报道据生意社统计,2022年度涨幅排名前三的商品分别为氢氧化锂(155。38)、连翘(119。03)、工业级碳酸锂(89。47)。两个锂……您只需要把死磕推到极致,把自律推到极致,行云流水,炉火纯青您要想实现暴富,您就能实现暴富。这个世界是很有意思的。您想要得不得了,您日思夜想,您每天都想,您想到了您就去干活,干活,干活,干活,干干干!日日夜夜的干,白天黑夜的……如何设计交易中台服务通过电商平台进行购物通常会经过下单、支付、发货、收货等多个流程,我们往往使用【链路】的方式来表达该流程,如下图所示。在画交易链路图时需要注意:圆圈表示的是一个【状态】,圆圈之间……NBA东部排名榜前6名战无不胜,公牛不敌榜首,但拉文却有望留20222023赛季NBA常规赛正在如火如荼的进行中,1月10日东西部6场比赛结束后,东部排名榜新鲜出炉:前6名纷纷取胜,凯尔特人喜提3连胜,稳居榜首;尼克斯错失前6名,公牛落……长寿风险如何量化和预防,从家庭财务风险管理角度家庭财务风险保障结构,分为四个级别,前段时间完成了基础和初级的风险量化的介绍。下面进入AFFRMS最为重要的部分,投资理财风险。而投资理财风险,又分为储蓄型投资理财风险和投机型……世界杯卡塔尔开始拆除球场,八强已出,有你支持的球队吗?2022世界杯12月7日上午,974球场已经开始了拆除工作,周围的所有帆布和隔离栏已经被去除,可以看到很多工人们正在进行清理和拆卸工作。云吞皮974球场是世界……做金钱的主人你是金钱的主人吗?钱这个字确实太有诱惑力了。我们每个人的兴趣喜好都不同,但当问到边的朋友有什么喜好时,可能很多人都会说:我喜欢‘钱’。所以钱普遍)为大家共同认可并想……壹邦小知识润唇膏吃进去有毒吗?润唇膏可以涂着睡觉吗最近嘴唇好干,我昨天在超市的时候买了一支润唇膏,下午涂了一会儿,晚上吃饭的时候没来得及擦就去吃饭了,这样没问题吗?会不会中毒啊?润唇膏吃进去有毒吗?润唇膏吃进去有毒吗……有点不敢看!盘点瘦成排骨的艺人,张天爱成皮包骨,鲁豫头比身大导读:瘦是美的标准吗?很多明星演员为了瘦,真的是无所不用其极。一味追求瘦,拼命减肥,瘦到脱相也在所不惜。瘦一些,确实很上镜,但是太瘦了就看着很不舒服了,甚至有点恐怖。下面我们来……烟云往事时间如离弦之箭,快的有些美好的东西还没来得及慢慢感受,细细回味,便遗落在岁月的长河里,像大海里一朵翻腾的浪花,仓促而短暂,美丽而渺小。逝去的的青春花开花谢,四季轮回……网络奇兵重制版新视频片段敌人模型全部能切割!经典科幻冒险游戏《网络奇兵》正在进行重制,目前它计划于今年3月份推出。制作组最近发布了几段简短的视频,展示了几个新的游戏特性。首先,当玩家要进入一个被上锁的区域时,需要先……花开盛夏,绿阴满野有多久没有去公园里逛逛了?有多久没有去闻一闻花香了?有多久没有去看看满眼的绿色了?不外出,少聚集,疫情的反复,让人只能窝在家里,透过小小的窗户,打量着外边的天……
如何面对让我们又爱又恨的电子产品?中国跳水队世锦赛名单浮出水面全红婵冲击两金,任茜搭档新秀乌方损害中国利益!强行将马达西奇收归国有,中企抵制商业政治化著名演员万茜从坚定不婚不育,到爱家宠女狂魔,她经历了什么?iOS15。6。1正式版发布,提供安全性更新凯尔特人三人20逆转雷霆获7连胜,亚历山大空砍37分建口中国偏远而危险的长城什么是真正的幸福?发现宝藏,终于有基于中文的AI绘画了,界面友好,画面美好游凤凰沱江有感等诗五首中国唯一400年不通车的古镇漂在水上,没有桥!无数人向往摊牌了,梅西做出强势决定!大巴黎很欣慰,球王不会为某人牺牲了不止全满贯,突破六边形,1658天外战不败,马龙单打冠军数据教师教学总结冰箱冷藏室适合保存所有水果吗劳动仲裁律师费需要多少奇怪拆家本领强大的哈士奇居然会被这么豆瓣7。1高分,伊藤智彦你好世界,诠释校园初恋年裸辞的年轻人现在都过得怎么样女人吃荔枝的好处荔枝的营养价值吃杨梅是不是会发胖呢夏季适量吃杨梅可以减肥的2021看央视开学第一课观后感范文5篇,学生看开学第一课感想你真的把你的孩子当人看了吗?父母第一课确认婚姻无效能两审的条件是什么?

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找七猫云易事利