DIDI-PALADIN智能范围引擎
Paladin是由小桔车务算法团队提供支持的策略引擎。它基于DCG(动态路由有向循环图)并结合可视化界面,降低配置成本并支持复杂算法。
Paladin采用响应式编程模型框架,结合动态脚本、插件部署,大大降低了开发和部署成本。它还保留了算法的可扩展接口,以最大限度地提高部署的便利性和灵活性。
特征
-
实现基于DR-DCG的策略框架,支持图结构的可视化、配置。
-
支持基于事件驱动编程模型的最优Action选择(Akka框架)
-
支持Action插件热部署,支持Condition动态脚本(Groovy、Aviator等)扩展性。
-
支持Condition、Action、Event不同级别的状态持久化,基于Memory、Redis、MySQL等不同引擎实现持久化存储能力。
-
支持桶测试来比较不同的策略。
-
支持触达链各环节的详细日志、API、接口,定位问题。
构建
环境
• 语言:Java 8+、SCALA、JAVASCRIPT
• IDE(Java) : IDEA/Eclipse 安装Lombok插件、VSCode
• 依赖管理:Maven、npm
• 数据库:MySQL5.7+
后端
• 基础框架:Spring Boot 2.2.0.RELEASE、Akka
• ORM框架:Mybatis-Plus 3.3.0
• 日志:logback
前端
• 语言:React
• 组件:antd
• 框架:dva
• 支架:create-react-app
• 捆绑工具:webpack
评论