Contenido generado con IA — puede contener errores.

Referencia

Configuración

config.properties clave por clave: el Redis de la red, el prefijo, el interruptor de actualizaciones y las claves y canales de Redis que usa el plugin.

Toda la configuración es un archivo, escrito en el primer arranque y nunca sobrescrito:

ProxyRuta
Velocityplugins/exyliaproxyutils/config.properties
BungeeCordplugins/ExyliaProxyUtils/config.properties
config.properties
# ExyliaProxyUtils talks to the backends over Redis, so nothing a player
# sends can ever reach it. Point this at the same Redis every backend has
# under database.redis in plugins/ExyliaLib/database.yml, with the same
# key-prefix. Server names on this proxy must equal the backends' server-id.
redis.host=localhost
redis.port=6379
redis.password=
redis.database=0
redis.key-prefix=exylia
# New releases download at start and stop and load on the next restart.
updates.enabled=true

Se lee una vez, al arrancar. Reinicia el proxy después de editarlo.

ClavePor defectoQué hace
redis.hostlocalhostEl host de Redis.
redis.port6379El puerto de Redis. Tiene que ser un número, o el plugin no arranca.
redis.passwordvacíoLa contraseña; vacía si no hay. Se toma tal cual, espacios incluidos.
redis.database0Qué base de datos numerada de Redis. Tiene que coincidir con la de los backends.
redis.key-prefixexyliaCon qué empieza cada clave y canal. Tiene que coincidir con el key-prefix de los backends. Vacío vuelve a exylia.
updates.enabledtrueInstala versiones nuevas de la misma versión mayor al arrancar y al apagar. Solo false lo desactiva. Ver Actualizaciones.

Una clave que falte en el archivo toma su valor por defecto. Todos los valores salvo la contraseña se recortan.

Coincidir con los backends

Los valores son los que cada backend tiene en su database.yml:

plugins/ExyliaLib/database.yml (en un backend)
database:
  redis:
    enabled: true
    host: 10.0.0.6
    port: 6379
    password: ""
    database: 0
    key-prefix: exylia
    server-id: survival-1
config.properties (en el proxy)
redis.host=10.0.0.6
redis.port=6379
redis.password=
redis.database=0
redis.key-prefix=exylia

server-id no tiene equivalente aquí: vive en la lista de servidores del propio proxy, donde el nombre del backend tiene que ser ese mismo server-id.

Dos redes, un Redis

El prefijo es lo que las separa. Dos redes con el mismo prefijo en el mismo Redis responden a los servidores de la otra y leen sus baneos.

Conexión

El plugin abre un pool pequeño (como mucho cuatro conexiones, 200 ms de espera por una libre) para respuestas y escrituras, y una conexión dedicada para escuchar, con dos segundos de timeout de conexión y de lectura. Se identifica ante Redis como exylia-proxyutils.

Claves y canales de Redis

NombreTipoDirección
<prefix>:bridge:proxyCanal pub/subDe los backends al proxy: peticiones.
<prefix>:bridge:<server-id>Canal pub/subDel proxy a un backend: respuestas y pushes.
<prefix>:punish:externalStreamDel proxy a ExyliaStaff: sanciones de los plugins de sanciones del proxy.
<prefix>:punish:ban:<uuid>StringLo lee el proxy al entrar; lo escribe ExyliaStaff.
<prefix>:punish:ipban:<sha256>StringLo lee el proxy al entrar; lo escribe ExyliaStaff.

Ver Protocolo para el formato de los mensajes.

¿Falta algo en esta página? Dínoslo en Discord