Soa suite 通过DBAdapter以非阻塞方式调用存储过程

Soa suite 通过DBAdapter以非阻塞方式调用存储过程,soa-suite,Soa Suite,我想了解如何通过BPEL以非阻塞方式调用存储过程。我所关心的是我正在调用的dbadpeter中有一个存储过程,但是它需要花费大约30分钟的时间,我不能等到它完成 我正在尝试在复合应用程序中设置invoke属性nonBlockingInvoke,但它不起作用,适配器在get response之前一直处于阻塞状态 谢谢。Nonblockinginvoke用于流中,当您希望同步调用分支有单独的执行线程时,它不会阻止其他流。流是协作并行的,而不是真正的并行。同步调用在调用过程中仍然会阻塞。阅读更多 无论

我想了解如何通过BPEL以非阻塞方式调用存储过程。我所关心的是我正在调用的dbadpeter中有一个存储过程,但是它需要花费大约30分钟的时间,我不能等到它完成

我正在尝试在复合应用程序中设置invoke属性nonBlockingInvoke,但它不起作用,适配器在get response之前一直处于阻塞状态


谢谢。

Nonblockinginvoke用于流中,当您希望同步调用分支有单独的执行线程时,它不会阻止其他流。流是协作并行的,而不是真正的并行。同步调用在调用过程中仍然会阻塞。阅读更多

无论如何,您的问题的一个解决方案是使用一个新的组合调用Async,即使用DB适配器执行存储过程的组合。因此,您的新服务调用另一个异步服务,因此它不会阻塞-但调用db适配器的服务会阻塞,但此时,您的调用程序是免费的。 将db适配器调用封装在它们自己的组合中,以将真正的服务实现与db服务接口解耦/隔离,这不是一个坏主意,因为db服务接口可能会改变