【发布时间】:2020-03-30 12:40:56
【问题描述】:
我一直在到处寻找解决这个问题的方法。
在我的工作中,我们正在尝试通过其他系统 REST API(返回 JSON 响应)将 Maximo 与其他系统集成。我能够使这种集成在小范围内工作,但是这个 API 需要 5 秒以上的时间来响应每个请求。目前,我已将此系统定义为 JSON 资源,并使用自动化脚本将非持久数据的每日“快照”复制到持久属性。所有请求都按顺序运行 - 对于 5 个正在测试的资产运行缓慢,并且绝对不会扩展到每天 1000 次调用。
假设不能以任何方式修改外部系统的API……有没有办法以非阻塞的方式查询这个API?我想如果我可以发送一个请求,然后发送下一个请求等,而无需等待回复继续进行,这将解决问题。
我查看了调用和发布通道以及企业服务,似乎企业服务和 JMS 队列可能是我需要的,但是文档说这些仅支持排队传入数据。 ..我看不出这如何解决我的问题。
有什么帮助吗?我完全坚持这一点。
谢谢!
【问题讨论】:
-
如果您使用 SoapUI 或仅使用浏览器查询远程 API 会发生什么?响应时间是否更快,指向 JSON 资源是慢点?你能请求更少的数据,比如更少的列,减少双方的序列化/反序列化工作吗?
-
您是否在 Maximo 中激活了正确的日志记录并分析了生成的日志?我在想 SQL-->INFO、INTEGRATION-->DEBUG、AUTOSCRIPT-->INFO...
-
@JPTremblay:我使用 POSTMAN 独立测试了 API 调用 (REST)……返回数据需要很长时间。
-
@Preacher:不幸的是,API 非常有限,基本上只返回一种类型的静态数据集......我目前只检索一条记录。一条记录会导致 5 秒以上的延迟...不过我会尝试使用 SOAP - 您的意思是向 API 发送数据?
-
请提供有关您当前的解决方案和 Maximo 中的数据集成过程的更多信息。您是如何实现这个“我使用自动化脚本将非持久数据的每日“快照”复制到持久属性的。”?
标签: json rest asynchronous jms maximo