有限状态机在国际计费中的应用探索 | 京东物流技术团队
💡
原文中文,约11800字,阅读约需28分钟。
📝
内容提要
本文介绍了一个轻量级的状态机框架,通过内部类TransitionBox整理状态转换关系为3个map,实现状态机行为判断。给出了海外应收账单状态机使用案例,讨论了分层多级状态的改进空间。
🎯
关键要点
-
国际计费系统自动生成账单,涉及多个角色共同处理。
-
状态机用于管理账单状态变化,避免不当操作。
-
传统的if判断方式难以维护,容易出错。
-
有限状态机是一种有效的状态管理方式。
-
现有的状态机框架如Spring State Machine功能强大但复杂。
-
开发轻量级有限状态机框架(SimpleFSMFrame)以满足特定需求。
-
框架设计目标包括可复用、简单易用、与业务无关、可扩展。
-
框架包含状态机接口、状态接口、事件接口和状态转换关系接口。
-
使用者只需实现状态和事件接口,定义状态转换关系,继承框架类即可。
-
讨论分层多级状态的改进空间,支持复合状态。
➡️