码迷,mamicode.com
首页 > 其他好文 > 详细

如何为PAC运算设定请求集

时间:2014-06-27 17:59:01      阅读:262      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   com   strong   2014   

由于第一支PAC:定期请购成本处理程序 请求在运行过程中会自动提交 定期实际成本处理程序 请求,且 这两个请求不存在父子关系,导致 第二个请求尚未处理完成时 第一个请求已经运行完成,这就导致在设定请求集时无法设定 链接阶段。 第二支PAC情况也是一样。

         思路:设定 第二支PAC请求 :期间平均成本处理程序 和第三支PAC请求:定期成本分配处理程序,均与 定期实际成本处理程序 不兼容,这样一旦 定期实际成本处理程序 处于运行状态时,第二支和第三支请求即会处于等待状态。如下图:

bubuko.com,布布扣

        

这样设定完后还有一个问题:当第一支 或者 第二支PAC请求触发 定期实际成本处理程序 请求时由于自身也已经完成,这就导致下一阶段(第二支PAC或第三支PAC)开始运行,所以:定期实际成本处理程序 和 下一阶段(第二支PAC或第三支PAC)很可能同时处于待定状态,这个时候发现即使设定了兼容也存在不确定因素,有时先跑前者,有时又先跑后者,导致最终运行失败(这里我也将 优先级 设定上去测试过,但是结果还是一样)

解决办法:加入 Oracle自带的休眠请求,如下:这边需注意,需要定义下这个请求,标准仅提供了 pl/sql存储过程,未提供这个请求,需新定义下:

 bubuko.com,布布扣

这边如果不给默认值,系统标准默认值为:20秒,给了默认值的好处是当请求集运行时还可以调整这个参数值,这边的值需根据系统资源情况来设定:其主要作用就是延迟下一阶段开始 运行,以便让 定期实际成本处理程序 请求已经处于运行状态,这样第二只或第三支PAC由于不兼容自然会处于等待状态(因此这边的休眠时间主要看服务器处理 冲突请求的反映时间快慢,如果慢的话设定时间稍微长点)。

 bubuko.com,布布扣

最终设定如下图:

注意:由于第3支PAC均基于前面一支请求,当前面一支请求尚未跑完,后面一支请求是选择不到期间的,因此在PAC期间刚打开时,需要先跑下第一支和第二支请求,这样请求集才能赋值参数。(或者 改变系统标准值集也行)

 bubuko.com,布布扣

bubuko.com,布布扣

 bubuko.com,布布扣

延迟到  定期实际成本处理程序 请求运行中 则成功处理请求集

 bubuko.com,布布扣

如何为PAC运算设定请求集,布布扣,bubuko.com

如何为PAC运算设定请求集

标签:style   blog   http   com   strong   2014   

原文地址:http://www.cnblogs.com/bruce_zhao/p/3809865.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!