规则引擎:大厂营销系统资格设计全解(上)

简介: 规则引擎:大厂营销系统资格设计全解(上)

image.png


营销活动业务在配置中会同一时间存在多个营销活动,用户进入某个场景,首先需要给用户展示目前用户能够享受的营销活动,增加用户参与此场景的意向,然后用户参与场景后需要给用户提示对应的营销活动,用户如果没有参与成功需要给用户提示具体没有参与成功的原因。那么在参与前,具体的场景中需要进行用户资格的校验,并且用户参与后需要进行资格记录。


同时,资格校验能够有效防止用户重复参与的问题,通过配置用户的次数资格来进行校验,用户参与成功一次进行记录,后面用户参与前对次数资格进行相关的校验。


image.png


资格分类  

资格设计先要针对资格进行分类,通过不同的分类进行各自分类领域模块设计。分类的原则是分层漏斗分类:优先过滤大量不满足、消耗服务器资源较少的活动,再过滤需要消耗服务器资源较多的活动,最后是进行风控资格校验。按照这个分类原则后面可能会出现多个营销活动,这个是另外一个话题—营销推荐设计。


image.png


以上是目前苏宁金融这边针对资格设计的分类:静态资格、动态资格和风控资格。此处风控资格校验作为独立的一个分类并且放在最后,主要是由两个方面考虑:(1)风控的内容很多,在苏宁金融有专门的风控中心来进行风控规则的制定和执行;(2)风控返回的风控级别也有很多,营销活动的不同、触发风控的级别不同,对应的营销活动处理逻辑也不一样。


下面针对以上的分类的静态资格和动态资格进行相关的领域模块具体设计探讨。


静态资格

静态资格在苏宁金融营销中的定义是:用户进入具体场景、当时用户属性标签的一个静态数据。


静态数据的获取方面主要通过两个部分获取:(1)上游系统的传递,这个数据主要是获取用户所处的场景数据,包括但不限于:用户当前进行的业务及业务数据、用户使用终端、网络环境等等数据。(2)用户属性标签的大数据获取。在苏宁金融大数据中心有一套完整的用户实时标签库,用户请求后通过次标签库实时查询用户目前的标签。


静态数据的过滤在技术方案中适合采用规则引擎进行相关资格校验。目前在苏宁金融的营销系统中使用Drools,主要是考虑以下几个方面:

(1) 业务规则较多,如果使用编码方式新增规则就需要进行相关的编码,增加代码量和维护成本。

(2) Drools的自定义关系操作符:通过自定义关系操作符可以针对不同的业务规则配置需要的操作符还可以针对每个活动不能匹配的原因进行内部埋点记录,方便运营进行客诉查询。

(3) 纯java实现,学习成本低。


业务配置生成drl文件设计

关于生成drl文件的设计,先来看看drools引擎原理:


image.png


Drools引擎通过每个条件进行匹配,最终匹配出相关的活动,所以在设计中需要考虑最终返回的数据是活动集合。


image.png


writeRuleFile是入口,通过入口进行内部方法组装,此方法需要功能是组装文件内容和写文件;writeDrlHead方法为写文件头部包、引用和全局变量定义;assembleEvaluatorDefinition方法是组装自定义操作符规则;getActRuleWhenCondition此方法为拼接规则字符串;writeActivityRule此方法为活动的规则写入。


以上是一种纯java代码实现Drl文件生成的一个方式,目的是为了让大家能够理解Drl文件的结构。实际操作过程中也可以通过freemarker模版来生成对应的Drl文件。


Drools规则加载

此处规则加载设计可以设计为内置定时器扫描规则生成表是否有新增记录或者采用分布式集群通知的方式进行加载。


image.png


目前,苏宁内部的统一配置平台采用的是自研的SCM平台,能够很好地支持实时修改,应用服务器集群每台应用监听具体某个配置文件的内容变更。


应用服务器监听到需要进行Drl文件 加载后,通过拉取Drl文件,并读取其中的内容生成对应的KieBase。

相关文章
|
2天前
|
运维 小程序 前端开发
结合圈层营销策略,打造稳定可靠的圈子app系统,圈子小程序!
圈子系统是一种社交平台,用户可按兴趣、职业等创建或加入“圈子”,进行内容发布、讨论和资源共享。开发时需考虑需求分析、技术选型(如PHP、MySQL)、页面设计、功能实现(注册、登录、发布、评论等)、测试优化及运维管理。圈层营销则通过精准化、高端化的方式传递品牌信息,增强客户归属感。圈子小程序基于微信等平台,具备跨平台、便捷性和社交性,开发过程中需明确需求、选择技术框架、设计页面并确保稳定性和流畅性。
|
1月前
|
数据采集 监控 并行计算
基于MCMC的贝叶斯营销组合模型评估方法论: 系统化诊断、校准及选择的理论框架
贝叶斯营销组合建模(Bayesian Marketing Mix Modeling,MMM)作为一种先进的营销效果评估方法,其核心在于通过贝叶斯框架对营销投资的影响进行量化分析。
60 3
基于MCMC的贝叶斯营销组合模型评估方法论: 系统化诊断、校准及选择的理论框架
|
2月前
|
存储 NoSQL 算法
全链路营销|基于事件驱动的流程编排系统
本文主要介绍了 AE 策略中心的技术方案选型与落地实战。
|
7月前
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp的会员制度管理的商品营销系统的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的会员制度管理的商品营销系统的详细设计和实现(源码+lw+部署文档+讲解等)
|
4月前
|
人工智能 分布式计算 架构师
大数据及AI典型场景实践问题之基于MaxCompute构建Noxmobi全球化精准营销系统如何解决
大数据及AI典型场景实践问题之基于MaxCompute构建Noxmobi全球化精准营销系统如何解决
|
6月前
|
数据可视化 搜索推荐 物联网
室内定位新突破:基于3D可视化与iBeacon技术的商场导航营销系统
**维小帮商场导航系统利用3D GIS、iBeacon定位、VR及物联网技术,提供3D导航、AR实景指引、设施查找及位置分享功能,提升顾客体验,增强商场品牌,推动经济效益增长。通过精准路径规划和沉浸式导航,用户能轻松找店,商场则塑造了智能形象,促进了交易量。**
117 1
室内定位新突破:基于3D可视化与iBeacon技术的商场导航营销系统
|
6月前
|
敏捷开发 存储 前端开发
【美团技术】领域驱动设计DDD在B端营销系统的实践
【美团技术】领域驱动设计DDD在B端营销系统的实践
|
7月前
|
JavaScript Java 测试技术
基于ssm+vue.js的会员制度管理的商品营销系统附带文章和源代码设计说明文档ppt
基于ssm+vue.js的会员制度管理的商品营销系统附带文章和源代码设计说明文档ppt
50 1
|
7月前
|
API
市面上最常见的几个邮件营销系统,哪个最好用?
本文比较了5个主流邮件营销系统:蜂邮EDM、AokSend、Sendinblue、GetResponse和AWeber。蜂邮EDM和AokSend以其易用性和丰富模板深受初学者和小企业喜爱;Sendinblue以低定价和多功能吸引中小企业;GetResponse是全能营销平台,适合各类企业;AWeber则适合有经验的用户。选择最适合自己的系统能提升邮件营销效率。
|
7月前
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp微信小程序的会员制度管理的商品营销系统的详细设计和实现
基于SpringBoot+Vue+uniapp微信小程序的会员制度管理的商品营销系统的详细设计和实现