最近在一个电商项目中,应用到了pipeline,特地和大家分享一下。
由于在订单生成时,会进行1、初始化,2验证,3,操作(优惠劵、促销、减价、拆分订单),4保存订单,5,订单审批流处理等等。以此说明这个流程是相当复杂的。然后就使用 了pipeline管道。
pipeline模型应用可以插件式的按逻辑处理一序列的程序。
可以配置filter1、filter2、filter3、filter4等等逻辑处理不同的业务。而且只会向下传递。
这个可以用来处理繁杂的逻辑。
管道模式就像一条管道把多个对象连接起来,整体看起来就像若干个阀门嵌套在管道中,而处理逻辑就放在阀门上,如下图,需要处理的对象进入管道后,分别经过阀门一、阀门二、阀门三、阀门四,每个阀门都会对进入的对象进行一些逻辑处理,经过一层层的处理后从管道尾处理,此时的对象就是已完成处理的目标对象。