0

我可以从 Marklogic 中的另一个 .xqy 页面调用 .xqy 页面吗?

4

1 回答 1

2

有几种方法可以执行另一个 .xqy,但最明显的可能是使用 .xqy xdmp:invoke。这会调用 .xqy,等待其结果并在您的代码中当场返回它们。xdmp:function您还可以使用和的组合调用单个函数xdmp:apply。你也可以乱用xdmp:eval,但这通常是最后的手段。

另一种策略可能是使用xdmp:http-get,但随后执行在不同的事务中运行,因此将始终提交。您还需要知道另一个 .xqy 的 url,这需要一些关于是否以及如何在应用服务器中重写 url 的知识(默认情况下不是)。

也可以使用 .xqy 运行其他 .xqy 而不等待结果xdmp:spawn。对于调度例如内容处理的重负载特别有用。分批分批 100 到 1000 个文档是很常见的。不过请注意任务队列的大小..

于 2012-06-19T15:03:50.077 回答