⌘CtrlK
Appearance
Appearance
本节讲述了ESB中线程池相关的配置,通过本节你将了解到以下内容:
线程池配置是ESB性能调优的核心配置之一。一般而言,请求消息依次经过代理服务、中介服务、业务服务,响应消息以相反顺序依次返回,消息处理过程如下所示:

为提升ESB消息处理能力,在消息接收处配置了线程池机制,如上图中所示。根据消息的流向,线程池分为了请求线程池和响应线程池,如下:
线程池配置界面(以响应线程池为例)如下所示:

:勾选上图中的"采用全局配置"复选框,即为采用全局线程池,否则为本地线程池:
本地线程池:为代理服务、业务服务及中介服务设置的独享线程池。本地线程池配置支持热更新;
全局线程池:ESB Server的共享线程池。全局线程池配置支持热更新;
最大线程数:线程池中线程数的最大值。
核心线程数:线程池中线程数的最小值。
队列容量:线程池中工作队列的容量值。
存活时间:如果池中有多于核心线程数的线程,这些线程在空闲时间超过存活时间时将会被销毁。
拒绝策略
:当线程池工作队列已满并且线程数达到最大值时,新请求到来时,将执行拒绝策略。支持ABORT、CALLER_RUNS、DISCARD、DISCARD_OLDEST四种拒绝策略:
线程池配置信息的填写规则如下:
| 属性名称 | 填写规则 |
|---|---|
| 采用全局配置 | 选中或不选中 |
| 最大线程数 | 范围从1到100,支持设置int型的变量或常量 |
| 核心线程数 | 范围从1到100,支持设置int型的变量或常量 |
| 队列容量 | 范围从1到1500,支持设置int型的变量或常量 |
| 存活时间 | 范围从0到120,支持设置int型的变量或常量 |
| 拒绝策略 | ABORT、 CALLER_RUNS、DISCARD、DISCARD_OLDEST |