首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WSO2调用(阻塞vs非阻塞) vs发送中介

WSO2调用(阻塞vs非阻塞) vs发送中介
EN

Stack Overflow用户
提问于 2020-11-20 13:30:34
回答 1查看 368关注 0票数 0

call mediator阻塞模式和非阻塞模式有什么区别?根据wso2文档,两者都是同步调用,这两者有何不同。请帮助我理解什么时候使用(实时集成用例)这个调用,中介器阻塞和非阻塞模式。在哪些情况下,发送中介器不合适,只能使用调用中介器。我看到call = send+respond (在一个端点情况下)..使用的最佳实践是什么?call或send+respond..请给我们建议

EN

回答 1

Stack Overflow用户

发布于 2020-11-20 14:32:16

是的,您的理解是正确的,调用中介器阻塞模式和非阻塞模式都以同步方式工作。非阻塞模式的调用中介器使用直通传输,因此具有更好的性能。因此,建议在非阻塞模式下使用call mediator,除非在阻塞模式下有特殊要求。

阻塞和非阻塞模式的显着区别在于,在阻塞模式中,中介是在单个线程中执行的。在非阻塞模式下,线程将注册一个回调,并将该线程释放回池。当接收到响应时,一个新线程将获取响应并继续中介。这不会影响中介中的中介者的同步处理。因此,有些用例需要在单个线程中执行中介,其中一些用例如下所示:

如果您想要回滚失败的消息,请在JMS消息处理场景中使用

  • 。如果您希望在中介程序(如克隆中介程序、迭代中介程序或消息存储处理器用例)中按顺序处理消息,请使用
  • 。这意味着企业服务总线通常会并行处理消息,如果您希望避免这种情况,则需要使用阻塞调用。

关于发送中介器,应该按如下方式进行更正。但它有一些不同之处。当我们使用调用中介器时,无序响应将返回到无序。在调用中介器之后,如果我们使用响应中介器,它将响应回客户端。

代码语言:javascript
复制
call+respond = send

但是,当我们在无序中使用发送中介器时,响应将到达反序列。这是两个中介器之间的主要功能差异。因此,当涉及到如何使用它们时,这取决于您希望如何安排您的中介器。此外,发送中介器不具有配置阻塞和非阻塞的能力。它的功能类似于非阻塞调用中介器(在线程利用率方面)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64924300

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档