如何通过Docker或arangojs在ArangoDB中启用缓存?

gajydyqb  于 2022-12-09  发布在  Go
关注(0)|答案(1)|浏览(192)

我想在ArangoDB中启用缓存,当我的应用程序启动时自动启用。
我使用docker-compose来启动整个过程,但显然没有简单的参数来启用ArangoDB官方映像中的缓存。
根据doc/docker-entrypoint-initdb.d/中的所有文件都在容器开始时执行。

require('@arangodb/aql/cache').properties({mode: 'on'});

它确实被执行了,但是缓存似乎没有被启用(从我在容器中看到的arangosh来看)。
我的应用程序是一个JS应用程序使用arangojs,所以如果我能这样做,我也会很高兴。
谢谢你!

hjzp0vay

hjzp0vay1#

根据性能和服务器配置文档,您可以通过多种方式启用缓存。
您将require("@arangodb/aql/cache").properties({ mode: "on" });添加到/docker-entrypoint-initdb.d/目录中的.js文件的方法应该可以工作,但要注意日志。您可能需要使用不同的驱动程序(日志、系统日志等)重定向日志输出,以查看发生了什么。确保通过arangosh运行该命令,以查看它是否工作。
如果这是一个失败,您可能希望看看是否有一种方法可以在运行时传递参数(例如--query.cache-mode on)。
如果没有传递参数的方法,那么您可以修改配置文件:/etc/arangodb3/arangod.conf .
不要忘了REST API的系统管理方法,您可以通过点击Support-〉Rest API-〉AQL在Web UI中访问AQL配置(查看和修改)。
有一点要记住-我不确定缓存设置是全局的还是绑定到特定的数据库。请查看多个数据库(包括_system)上的配置以测试设置。

相关问题