【问题标题】:Maintaining Session across async calls in Mule在 Mule 中跨异步调用维护会话
【发布时间】:2016-11-23 15:27:30
【问题描述】:

我有一个特定的要求,其中 Mule 将从提供程序系统中提取信息并将其发送到其他系统,有一系列这样的异步调用,其中我们必须将每条消息与特定的用户会话相关联,有人可以将他们的见解作为我们如何在 mule 中维护会话以进行异步调用?我认为将其存储在数据库中的一种方法,但它会导致性能问题。任何想法将不胜感激。

【问题讨论】:

    标签: mule mule-component


    【解决方案1】:

    您可以尝试为此使用Object Stores,其中每个用户会话都可以通过唯一的 ID 在商店中存储和访问。它们可以在内存中或物理持久化(取决于您的要求)。检查Object Store Connector 以轻松获取和存储商店中的对象。

    【讨论】:

    • 感谢@Nuno 的回复,使用对象存储是否有任何限制,我知道它无法处理其中的大量数据并且有一些上限?
    • 如果您在 CloudHub 中运行您的应用程序,则存在限制。如果您在本地运行,我认为唯一的限制是您的堆大小。您可以查看this 示例以将对象存储保存到数据库中(推荐用于集群环境)。我不确定(希望我错了),但是即使您使用持久对象存储,存储中的对象也会保存在内存中(但是,如果您重新启动应用程序,则可以使对象保持活动状态)。但是您可以检查执行一些测试。希望对您有所帮助。
    猜你喜欢
    • 1970-01-01
    • 2011-02-09
    • 2015-11-22
    • 2011-07-28
    • 1970-01-01
    • 2023-03-14
    • 2011-02-15
    • 2012-03-08
    • 2013-10-03
    相关资源
    最近更新 更多