You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何更新OrionLD(MongoDB)中缓存的上下文并让其识别内容修改

OrionLD上下文更新解决方案

问题原理

OrionLD post-v0.8.1版本上线持久化上下文缓存功能后,所有已加载的远程JSON-LD上下文都会持久化存储在MongoDB中,默认不会随服务重启自动更新,因此修改源上下文文件后无法被自动识别。

可行方案

方案1:通过NGSI-LD上下文管理API刷新(推荐)

无需操作数据库,调用官方接口删除缓存的上下文即可:

  • 对你的上下文URI做URL编码,例如https://example.com/context.jsonld编码后为https%3A%2F%2Fexample.com%2Fcontext.jsonld
  • 执行删除缓存请求:
curl -X DELETE http://<你的OrionLD服务地址>:1026/ngsi-ld/v1/jsonldContexts/<编码后的上下文URI>
  • 后续业务请求再次引用该上下文时,OrionLD会自动重新拉取最新的上下文内容完成更新。

可通过以下请求验证缓存状态:

curl http://<你的OrionLD服务地址>:1026/ngsi-ld/v1/jsonldContexts/<编码后的上下文URI>

方案2:手动删除MongoDB缓存记录

如果无法调用管理接口,可直接操作数据库删除缓存:

  • 连接MongoDB服务,切换到OrionLD使用的数据库(默认库名为orion)
  • 执行命令删除对应上下文的缓存记录,如需清空所有上下文缓存可执行:
db.csrcs.deleteMany({})
  • 重启OrionLD服务,后续拉取的上下文即为最新版本。

注意事项

  • 内嵌在请求体中的@context内容不会进入持久化缓存,无需执行刷新操作
  • 生产环境优先使用API操作,避免直接修改数据库引发的服务异常

内容的提问来源于stack exchange,提问作者ctc-enokida

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 07:36:03