我在 Ubuntu 18.04 的/var/lib
内创建了 broker 文件夹。/var/lib/[broker]/etc
里面有一个broker.xml
文件,可用于定义地址和队列。但是,我使用管理控制台创建了一个具有几个队列的地址,并且此文件不会更新。事实上,经纪人目录或Artemis主页更新中没有文件。
那么管理控制台在哪里存储定义呢?
此外,在broker.xml
文件中创建地址和队列而不是通过控制台是否更好?
运行时创建的地址和队列的定义以二进制形式存储在代理日志中,特别是在与存储消息的位置分开的"绑定"日志中。在您的配置中,绑定日志默认处于/var/lib/[broker]/data/bindings
状态。
就最佳实践而言,这实际上取决于用例。一些用户喜欢在broker.xml
中拥有地址和队列定义。broker.xml
可以在运行时更新,代理将部署新配置的地址和队列。但是,其他用户不喜欢手动编辑broker.xml
,而是宁愿通过 Web 控制台或其他管理界面(例如通过 Jolokia、JMX、管理消息等的 HTTP(使用管理 API。还有一些人根本不管理地址或队列,而只是允许代理自动创建其应用程序所需的资源。