MAIN Realm

Decentraland tem tantos realms quanto existem Catalyst com serviços de comunicação, mas há um realm distinto conhecido como MAIN que existe fora da rede de Catalysts. O realm MAIN foi especificamente projetado para simplificar o processo de conexão do usuário, tornando mais fácil para os usuários interagir e se encontrar. Ele é construído com um conjunto de serviços capazes de substituir o serviço de comunicação de um nó Catalyst. Esse realm serve como destino padrão para os usuários ao fazer login no Decentraland.

O provedor de realmarrow-up-right serviços expõem um /aboutarrow-up-right endpoint com uma descrição de realm de acordo com o ADR-110: Realm descriptionarrow-up-right. Isso fornece as informações para estabelecer uma conexão com a rede de gerenciamento de conteúdo, conhecida como um dos serviços do nó Catalyst, e também fornece os detalhes de conexão para os serviços de comunicação do realm MAIN.

O serviço de comunicações do MAIN é acessado através do Conector WebSocketarrow-up-right. Este componente leve permite a interação com o restante dos componentes de backend e pode ser facilmente escalado com instâncias adicionais para acomodar uma carga de usuários em expansão, gerenciando de forma eficiente um número maior de conexões ativas. Via a conexão WebSocket, o cliente adquire os dados necessários para estabelecer uma conexão com o LiveKit Cloud, juntamente com o islandId atribuído pelo Archipelago Service. O Archipelago Service tem responsabilidades idênticas tanto no realm MAIN quanto no serviço de comunicações dos nós Catalyst. Ele gerencia efetivamente o processamento das posições dos usuários e sua subsequente alocação em ilhas distintas, cada uma correspondendo a uma sala Livekit, organizando assim de forma eficiente agrupamentos de usuários com base em suas localizações espaciais dentro do mundo virtual. Para maiores detalhes sobre o Archipelago Service, você pode consultar a Archipelagoarrow-up-right página.

NATSarrow-up-right funciona como um sistema de broadcast que facilita a comunicação contínua entre vários serviços. Ele pode suportar múltiplas instâncias do WebSocket Connector se comunicando com o mesmo Archipelago Service. Além disso, permite que o serviço de Stats colete estatísticas de usuários do Archipelago, como posições e agrupamentos por ilha, tornando esses dados acessíveis para utilização externa.

O serviço de estatísticas do Archipelago compartilha a mesma implementação de API que o serviço Archipelago no nó Catalyst. Você pode explorar a API neste link: Catalyst API Specsarrow-up-right. O serviço é acessível através da seguinte URL https://archipelago-stats.decentraland.org/ e os endpoints disponíveis estão sob o /comms/ conforme descrito na API Spec, por exemplo: https://archipelago-stats.decentraland.org/comms/peers.

O LiveKitarrow-up-right A plataforma Cloud gerencia a tarefa complexa de trocar informações dos usuários via WebRTC e é a principal plataforma de cloud compartilhada pela maioria dos nós Catalyst para o mesmo propósito.

O conceito fundamental derivado do realm MAIN é que diferentes usuários têm a flexibilidade de se conectar a qualquer nó Catalyst para fins de gerenciamento de conteúdo (baixar scenes, wearables, emotes ou enviar atualizações de perfil) mas apesar da seleção de um nó específico de gerenciamento de conteúdo, a conexão ao serviço de comunicação pode ser a mesma. Como resultado, mesmo que os usuários estejam utilizando diferentes nós Catalyst como servidores de conteúdo, se eles se encontrarem em coordenadas de scene próximas, terão a capacidade de interagir entre si.

Atualizado