Selección de Realm

A Catalystarrow-up-right es un servidor que agrupa diferentes servicios requeridos por el Decentraland World. Algunas de las principales responsabilidades del servidor son la gestión del almacenamiento descentralizado para la mayor parte del contenido que necesita el cliente y la orquestación de las comunicaciones entre pares.

Al entrar en un Cliente de Decentraland, necesitas conectarte a un Catalyst específico para el soporte de servicios backend Content, Lambdas y Comms. Debe usarse uno de los Catalysts del DAO; podría seleccionarse aleatoriamente pero eso podría llevar a que el usuario acceda a un servicio backend con gran latencia o a un realm con una baja cantidad de usuarios mientras está conectado a otro.

Para mitigar esto, se implementa un algoritmo de selección de realm en Kernel como se describe en ADR-86arrow-up-right.

Es un algoritmo configurable que usa diferentes criterios en una lista ordenada; si una de las condiciones es lo suficientemente fuerte para tomar una decisión, entonces elige un realm; si no, delega la decisión al criterio siguiente. Si ninguna condición fue lo suficientemente fuerte, entonces se toma una decisión por defecto (aleatoria).

La configuración por defecto es:

  1. Prioriza los nodos Catalyst con la mayor cantidad de usuarios

  2. Prioriza los nodos Catalyst con más usuarios en la ubicación visitada

Otros criterios que pueden usarse son:

  • Latencia alta: Prioriza los Catalysts con menor latencia

  • Balanceo de carga: Es un mecanismo Round Robin para distribuir todos los pares entre todos los Catalysts.

Última actualización