我正在尝试将传统的订单处理和库存系统重构为更清晰的面向服务的事件驱动架构。但是,我在决定应该由哪些服务负责库存的预订/分配时遇到了一些困难。
当前系统的简要概述
我已经确定了两个我认为需要开发的服务
但是,由于库存的分配/保留涉及库存和销售,我不确定上面第 2 点中的行为应该放在哪里。
我欢迎对此提供任何帮助或想法。
最佳答案
However, as the allocation/reservation of stock concerns both inventory and sales I am not sure where the behaviour in point 2 above should be put.
我一直在思考这个问题(纯学术),我目前的结论是预订管理属于库存系统。这将库存来源(从供应商处采购的元素的装载)和库存汇(订单的履行)保持在一起。
因此,库存系统会缓存自己的填写订单所需的数据副本(允许其自主工作)。一旦得知供应商提供了新库存,即使销售系统碰巧停机维护,它也应该能够取得进展。
关于domain-driven-design - 订单和库存 DDD - 应该在哪里处理分配/保留?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53108190/