在服务器间同步数据
数据可以在不同服务器之间同步。
需求
若要同步数据,你必须使用远程数据库。所有服务器都会连接到同一个数据库。
见“存储类型”章节获取更多信息。你需要使用这个章节提及的“远程数据库”。
立刻通知更新
直接连接至同一个数据库显然不能立即在服务器之间同步数据。LuckPerms 需要知道数据发生变化才能对它进行更新。
这可以通过许多方式实现。
所有这些设置都可以在 更新提醒 & 通信服务
部分中找到。
同步间隔
你可以决定 LuckPerms 从数据库中获取更新的延时。 这个时间可以在配置文件中修改,默认值为 -1
(表示禁用该功能)。
YAML
sync-minutes: -1
监控文件
若你使用的是基于文件的存储类型(YAML、JSON 或 HOCON),LuckPerms 可以监听这些文件,并在文件出现改动后自动重载。
这表示你可以编辑其中一个数据文件,所作改动会立即应用至服务器。
该设置可在配置文件中找到,默认关闭。
YAML
watch-files: true
/lp sync
/lp sync
命令会让插件从数据库/文件自动同步最新的变动。
通信服务
在安装后,其他服务器会收到更新提醒,并响应从数据库传来的最后一份复制数据。
数据不会在该服务中存储 —— 它只会被用作通信平台。
通信服务可以在配置文件的 messaging-service
部分进行设置。
可用选项
服务 | 描述 |
---|---|
sql | 使用 SQL 数据库来构建通信队列系统。若你正在使用远程 SQL 数据库,则此为默认选项。 |
pluginmsg | 使用插件信道来与群组交流。LuckPerms 必须安装在所有群组服和子服上。在多于一个群组的情况下不会生效。 |
lilypad | 使用 LilyPad Connect 的 PubSub 系统来交流。 |
redis | 连接至 Redis 实例并使用 PubSub 系统来交流。 |
rabbitmq | 连接至 RabbitMQ 实例并使用 PubSub over AMQP 系统来交流。 |
nats | 连接至 Nats 实例并使用 PubSub 系统来交流。 |
custom | 强制 messaging-service 使用你通过 LuckPerms API 实现的通信方式。 |
你也可以通过 LuckPerms API 实现自己的通信服务。但在此之前确保你将 messaging-service 设置为了 custom
,否则插件会在启用时报错。