我想在ArangoDB中启用缓存,当我的应用程序启动时自动启用。
我使用docker-compose
来启动整个过程,但显然没有简单的参数来启用ArangoDB官方映像中的缓存。
根据doc,/docker-entrypoint-initdb.d/
中的所有文件都在容器开始时执行。
require('@arangodb/aql/cache').properties({mode: 'on'});
它确实被执行了,但是缓存似乎没有被启用(从我在容器中看到的arangosh
来看)。
我的应用程序是一个JS应用程序使用arangojs
,所以如果我能这样做,我也会很高兴。
谢谢你!
1条答案
按热度按时间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
)上的配置以测试设置。