【发布时间】:2016-08-18 11:59:46
【问题描述】:
谁能解释一下 TIBCO BW Engine 的 StepCount 和 ThreadCount 属性之间的区别。我试图通过 TIBCO 文档理解但无法理解。 所以,如果有人能解释我这将是伟大的。 提前致谢。
【问题讨论】:
标签: tibco tibco-business-works
谁能解释一下 TIBCO BW Engine 的 StepCount 和 ThreadCount 属性之间的区别。我试图通过 TIBCO 文档理解但无法理解。 所以,如果有人能解释我这将是伟大的。 提前致谢。
【问题讨论】:
标签: tibco tibco-business-works
ThreadCount 属性定义了执行所有进程的线程(java 线程)的数量。因此,使用默认值 8 个线程,您可以同时运行 8 个作业。
另一方面,StepCount 定义了在线程可以上下文切换到另一个作业之前执行的活动数量。
示例场景:
如果有 3 个传入请求,前两个请求会分别生成 1 个作业。第三个作业已生成,但由于线程不足而暂停。
第一个作业完成第四个活动后,线程被释放并可以分配给另一个暂停的作业。 所以第一个作业将暂停,第三个作业开始执行。
当第二个作业到达第四个活动时,该线程将被释放并可以重新分配。所以第二个工作暂停,第一个恢复。
第三个作业到达第四个活动后,线程再次被释放并恢复第一个作业(并完成这个作业)。然后完成第 3 项工作。
所有这些都是理论上的场景。您通常需要的是设置并发作业的数量(即 ThreadCount)。 StepCount 几乎无关紧要,因为引擎将负责物理线程到虚拟 BW 作业的池化和映射。
【讨论】:
线程计数概念说明了 TIBCO BW 引擎可以分配的线程数。默认线程数为 8。
线程数是指引擎中可以同时执行的作业数。因此引擎中可以并发的最大作业数被限制为线程数,即八个。该属性指定作业线程池的大小,如果在 AppSpace 级别设置,则应用于 AppSpace 中的所有 AppNode。
线程不间断地执行有限数量的任务或活动,然后让步到下一个准备好的作业。从默认值 8 个线程开始,线程数可以调整到最佳值,现在可以加倍,直到达到 CPU 最大级别。
StepCount 概念说明在将引擎线程让给作业池中准备好的另一个作业之前,引擎线程在没有任何中断的情况下完成的活动数量。计步器的默认值为 -1。当该值设置为 -1 时,引擎可以决定所需的 StepCount 值。较低的 StepCount 值可能会因频繁的线程交换而降低引擎性能,具体取决于具体情况。
【讨论】: