MAIN Realm
Decentraland tiene tantos realms como Catalyst con servicios de comunicaciones, pero existe un realm distintivo conocido como MAIN que existe fuera de la red de Catalysts. El realm MAIN fue diseñado específicamente para simplificar el proceso de conexión del usuario, facilitando que los usuarios interactúen y se encuentren. Está construido con un conjunto de servicios capaces de sustituir el servicio de comunicación de un nodo Catalyst. Este realm sirve como el destino predeterminado para los usuarios al iniciar sesión en Decentraland.

El proveedor del realm servicios expone un /about endpoint con una descripción del realm según el ADR-110: Descripción del realm. Esto proporciona la información para establecer una conexión con la red de gestión de contenido, conocida como uno de los servicios de un nodo Catalyst, y también suministra los detalles de conexión para los servicios de comunicación del realm MAIN.
El servicio de comunicaciones MAIN se accede a través del Conector WebSocket. Este componente ligero permite la interacción con el resto de los componentes del backend y puede escalarse fácilmente con instancias adicionales para acomodar una carga de usuarios en expansión, gestionando de manera eficiente un mayor número de conexiones activas. A través de la conexión WebSocket, el cliente adquiere los datos necesarios para establecer una conexión con LiveKit Cloud, junto con el islandId asignado por el Archipelago Service. El Archipelago Service tiene responsabilidades idénticas tanto en el realm MAIN como en el servicio de comunicaciones de los nodos Catalyst. Gestiona eficazmente el procesamiento de las posiciones de los usuarios y su posterior asignación a islas distintas, cada una de las cuales corresponde a una sala de LiveKit, organizando así de forma eficiente los grupos de usuarios según sus ubicaciones espaciales dentro del mundo virtual. Para más detalles sobre el Archipelago Service, puedes consultar la Archipelago página.
NATS funciona como un sistema de difusión que facilita la comunicación fluida entre varios servicios. Puede soportar múltiples instancias de WebSocket Connector comunicándose con el mismo Archipelago Service. Además, permite que el servicio de Stats recopile estadísticas de usuarios desde Archipelago, como posiciones y agrupaciones por isla, haciendo estos datos accesibles para su uso externo.
El servicio de estadísticas de Archipelago comparte la misma implementación de API que el servicio Archipelago en el nodo Catalyst. Puedes explorar la API en este enlace: Especificaciones de la API de Catalyst. El servicio es accesible a través de la siguiente URL https://archipelago-stats.decentraland.org/ y los endpoints disponibles están bajo el /comms/ como se describe en la Especificación de la API, por ejemplo: https://archipelago-stats.decentraland.org/comms/peers.
El LiveKit La plataforma Cloud gestiona la compleja tarea de intercambiar la información de los usuarios mediante WebRTC y es la plataforma cloud principal compartida por la mayoría de los nodos Catalyst con el mismo propósito.
El concepto fundamental derivado del realm MAIN es que diferentes usuarios tienen la flexibilidad de conectarse a cualquier nodo Catalyst para propósitos de gestión de contenido (descargar escenas, wearables, emotes o enviar actualizaciones de perfil) pero a pesar de la selección de un nodo específico de gestión de contenido, la conexión al servicio de comunicación puede ser la misma. Como resultado, incluso si los usuarios están utilizando diferentes nodos Catalyst como servidores de contenido pero se encuentran en coordenadas cercanas de la escena, tendrán la capacidad de interactuar entre sí.
Última actualización