文章目录
前言
本文首先基于自己最近三年在电商营销领域的架构实践工作,梳理一下营销平台整体业务形态、以及应用架构、数据架构等工作的基本设计过程和内容框架。接下来,聚焦讨论在系统架构设计及落地过程中主要遇到的几个主要挑战
- 软件架构设计如何管理系统复杂性?
- 如何兼顾业务功能和系统稳定性?
一、营销平台整体架构
营销平台划分以下四个子领域广告投放/频道导购/互动权益/订单转化。
领域划分原则:
- 基于业务单元、职能部门划分。一级业务领域应以业务领域的职责完整性做拆分。例如营销和商品属于典型的不同一级业务域,营销服务既可指商品营销,也可针对品牌做营销。营销和商品之间不存在垂直隶属的业务属性与关系,两者之间可以以服务组合、交互等方式实现业务价值的关联和传递。
- 基于同一层面原则:包含同一维度和同一层次两个概念。维度指同一个业务问题下的子问题都属于同一个业务范围,如现金支付和电子支付本质上属于同一个维度的支付领域,因此属于一个领域。层次指能属于一个业务领域的不同逻辑、结构上,如虚拟订单与实物订单本质都属于订单范畴,也应属于同一个领域。
1.营销平台架构设计
基础能力组件
组件 | 名称 | 用途 |
---|---|---|
redis-enhance.sdk | redis增强器 | 基于流量分桶算法的调流、热key洞察,幂等生成器 |
rate-route.sdk | AB实验 | AB切量,支持正向、反向、多层切量 |
xx.sdk | 线程编排插件 | 支持子线程串行、并发编排 |
project-generator.sdk | 工程脚手架 | 基于配置生成工程框架 |
dynamicService.sdk | XX | 基于Java SPI机制的动态热插拔 |
二、组件交互架构
1.营销投放组件交互图
营销频道交互链路
导购频道SKU销量预测流程