我有一个用例,我需要能够在自己的平台上出售不同类型的不相关服务和产品,并且需要为这些商品创建订单管理系统。
我能想到的一种方法是为每种产品/服务类型创建单独的OMS系统,并将这些功能公开给应用程序。另一种方法是创建1个通用OMS(公司范围的OMS),并具有订单项的概念,其中按类型对订单项进行分组,然后进行处理。
第一个系统的优点是去耦(我认为),缺点是随着服务类型的增长,OMS的数量将增加。第二个系统的优点是,它在公司范围内创建了一个OMS,并且任何扩展都只需要新的工作流插件即可。
在系统级别,首选方法是什么?我还将不同的OMS保留为单独的微服务,因此拥有一个大型OMS可能是单点故障。正确的进行方式应该是什么?
P.S。付款是其中很大一部分,我们还需要适应不同的付款工作流程(严格的预付款,后付款和混合付款)。