【问题标题】:TimeOut Issue in Oracle Bpel 11gOracle Bpel 11g 中的超时问题
【发布时间】:2013-06-14 08:21:29
【问题描述】:

在 Oracle SOA Suite 11g 上的 bpel 故障实例中出现超时问题。请找出错误: weblogic.transaction.internal.TimedOutException:事务在 300 秒后超时。

为了进一步解释,我让读取适配器读取具有 5000 条记录的文件,并且 db 事务需要超过 5 分钟才能放入数据库,导致 JTA 事务超时,因此回滚。我可以在 weblogic 数据源配置或 soa 基础设施配置中进行任何更改以纠正此问题。

在简单的语言中,调用数据库适配器的 Bpel 进程需要更长的时间,因此会超时。我希望这能解释一切。

【问题讨论】:

  • 你应该更具体一点。
  • 我想说你应该很多更具体:) 任何代码例如?

标签: oracle oracle11g soa bpel


【解决方案1】:

我能够解决这个问题。

在 weblogic 控制台中更改了以下超时设置:

  1. 在 soa EJB 中设置超时:打开 Weblogic 控制台并单击左侧导航菜单中的“部署”。通过单击 [+] 展开“soa-infra”并以相同方式展开节点“EJBs”。通过单击以下 EJB 的“配置”选项卡,将“事务超时”(以秒为单位的值)增加到 3600: BPELEngineBean BPELDeliveryBean BPELActivityManagerBean BPELServerManagerBean BPELProcessManagerBean BPELInstanceManagerBean BPELFinderBean
  2. 在域结构中,选择服务 > JTA,将 JTA 事务超时值增加到 3600。

参考资料: http://technology.amis.nl/2011/11/18/timeouts-in-oracle-soa-suite-11g/ http://www.albinsblog.com/2012/05/weblogictransactioninternaltimedoutexce.html#.UYuFT7Wmh1Y

【讨论】:

    【解决方案2】:

    我建议关注数据库性能问题。 对于 99.9% 的性能问题,原因是糟糕的数据库或查询设计。

    尝试使用足够的索引和查询,使数据库能够使用索引。 此外尝试了解数据库优化器。

    前提条件:您可以自己编写 SQL 语句,而不是绑定到创建低效 SQL 并欺骗数据库优化器的框架。我经常看到糟糕的框架......

    只有当您拥有非常大量的数据(数十亿行)且选择性低且与其他巨大表的大量连接或复杂的递归时,才会变得困难。

    => 始终寻找问题的根本原因。你会学到很多东西,也会变得更专业。 ;)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多