技术架构 cloudalibaba,Apollo ,skywalking,elk,rabbitmq ,redis,tidb,k8s, spring boot,dubbo,netty
微服务体系架构选型搭建,并能深入应用到项目中,比如自己封装重试组件,分布式锁组件,基于spring及boot扩展机制开发通用业务组件,在业务中实现基于任务的异步处理机制,基于rabbitmq实现消息中心功能,主要支持消息持久化,消息重发,重试,死信队列,延迟队列等
作为开发组长带领四人小团队完成威马汽车电商平台微服务设计,主要负责订单系统与卡券系统设计开发,实现订单全生命周期管理,基于rabbitmq实现消息中心,采用xxl-job实现系统任务调度功能。主要亮点:在业务处理层采用受理+执行(任务)模式处理订单流程,利用事件机制实现订单状态流转,通过mq和db消息,以及任务补偿方式实现分布式系统一致性, 2020年4月开始主导做车金融产品开发。主要技术栈: cloudalibaba,Apollo ,skywalking,elk,rabbitmq ,redis,tidb,k8s, spring boot,xxljob,mysql。
订单微服务主要为app/pc/小程序提供下单逻辑,为运营系统提供订单全生命周期管理与展示,并与集团内部其他部门(tms,wms,mes,dms等)提供交互接口,目前与外部系统主要通过mq以及同步方式做请求处理。服务主要分为c端订单和b端(门店)订单,订单状态正向流转:创建-支付-确认-选车-配车-发车-发证-交车-评价,逆向流程包括取消,退款,修改配置等。系统核心交易流程:用户下单(直销/经销),计算价格(车辆产品/电池包/选配/补贴/卡券),预占库存/卡券,支付,配车,call车等。与其他微服务通过http同步调用和mq异步调用结合,系统之间事务保证最终一致性,核心流程成功任务交易是成功的,其他服务出现异常通过重试和补偿保证最终成功。
卡券微服务 基于业务规则动态创建,通过任务触发卡券模板生效,失效。目前只涉及到实物券,抵扣券,服务券三种大类的卡券,每种卡券都有不同的触发和使用场景。卡券的发放和使用基于模板通过策略模式实现动态扩展,支持外部系统(积分商城)通过积分兑换卡券。
基于rabbitmq实现消息中心功能,主要支持消息持久化,消息重发,重试,死信队列,延迟队列,幂等性一般由使用方实现。对外提供http和rpc接口。任务调度使用开源的xxl-job实现。
带领团队完成跨境汇款业务实现,使用微服务技术完成业务需求,在项目中广泛应用设计模式(模板方法,责任链,观察者等)
作为核心开发,完成支付系统以及交易系统设计开发,运用spring cloud ,nacos,seata,kafka,rocketmq,mysql,xxl-job,elasticsearch,feign,gateway等核心技术完成编码实现