AM缓冲池中的AM实例会随着客户端请求的增加而增长。

相对于增长,负责清除操作的是存在于Java虚拟机中的monitor,该monitor在每jbo.ampool.monitorsleepinterval时间后进行AM实例的清除操作。清除的对象先考虑是否有AM实例的inactive时间大于jbo.ampool.maxinactiveage,如果是就清除。实例剩余数量尚未达到jbo.ampool.maxavailablesize,就使用其定义的算法对其他对象进行清除操作。

AM缓冲池中保留AM实例的上下限由jbo.ampool.minavailablesize和jbo.ampool.maxavailablesize来定义。不过,除这些参数外,jbo.ampool.timetolive会定义每个AM实例在超过该时间后被强制清除出缓冲池,这样AM缓冲池中的AM实例最终会达到数量0;同时,如果定义jbo.doconnectionpooling为true的情况下,AM实例中关联的数据库连接也将被释放。

如果你不希望AM实例数量下降太快,可以加大jbo.ampool.maxinactiveage、jbo.ampool.monitorsleepinterval、以及jbo.ampool.timetolive的值。


有关AM的更多介绍可以参考我的另一篇文章:ADF BC中AM的参数和配置方法

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐