Descripción general
Decentraland es una plataforma de mundo virtual descentralizada construida sobre una arquitectura híbrida que combina la propiedad en blockchain, la entrega de contenido descentralizada y servicios centralizados para una mejor experiencia de usuario.
Principios arquitectónicos
Descentralización donde importa
Propiedad - LAND, wearables y NAMEs son NFTs en Ethereum
Gobernanza - DAO controla contratos inteligentes críticos y la tesorería
Contenido - Distribuido a través de nodos Catalyst
Identidad - Autenticación basada en wallet (sin contraseñas)
Centralización para rendimiento
Servicios en tiempo real - Comunicaciones WebSocket, chat de voz
Descubrimiento - Búsqueda, eventos, contenido destacado
Funciones sociales - Amigos, comunidades, notificaciones
Optimización - Procesamiento de assets, generación de imágenes
Capas del sistema
Clientes
Los jugadores interactúan a través de varios clientes:
Unity Explorer - Cliente de escritorio principal (Windows, Mac, Linux)
Web Explorer - Cliente basado en navegador
CLI - Herramientas para desarrolladores para la creación y despliegue de escenas
Clientes de la comunidad (móvil, VR, etc) - Implementaciones alternativas para el cliente de referencia usando diferentes tecnologías de renderizado.
Todos los clientes se autentican vía wallets criptográficas y siguen los mismos protocolos.
Descubrimiento (Realm Provider)
Punto de entrada único que proporciona a los clientes una descripción del realm:
Nodos Catalyst disponibles (ubicación, capacidad, estado)
Endpoints de servicios backend
Permite la selección inteligente de servidores basada en geografía y carga.
Contenido descentralizado (Catalyst Network)
Red permissionless de nodos Catalyst que almacenan y sirven:
Definiciones de escena y assets
Perfiles de avatar y wearables
Cada nodo valida y almacena el contenido de forma independiente. Los nodos sincronizan los despliegues pero operan de forma autónoma. Ver Catalyst Network para más detalles.
Servidores de funciones centralizados
Microservicios backend proporcionan funcionalidad mejorada:
Descubrimiento de servicios - Selección de realm y monitoreo de salud
Comunicaciones - Clustering de WebSocket, control de acceso de voz/video
Características de contenido - Worlds, eventos, lugares, datos de atlas
Funciones sociales - Amigos, comunidades, notificaciones
Características de la plataforma - Logros, recompensas, créditos virtuales
Procesamiento de assets - Optimización, miniaturas, traducciones
Ver Servicios backend para documentación completa del servicio.
Infraestructura
Sistemas de soporte y servicios de terceros:
Message Broker - NATS para comunicación entre servicios
Media Server - LiveKit para voz y video
Indexadores de blockchain - Consultas rápidas para datos de NFT
Servicio de email - SendGrid para notificaciones
Ver Infraestructura para más detalles.
Blockchain
Contratos inteligentes en Ethereum y Polygon gestionan:
Propiedad - LAND, wearables, NAMEs, estates
Marketplace - Comercio y regalías
DAO - Gobernanza y tesorería
Moneda - Token MANA
Modelo de seguridad
Identidad y autenticación
Firmas de wallet - Sin contraseñas, autenticación mediante firmas de Ethereum
Auth Server - Emite tokens JWT tras la verificación de la firma
Signed Fetch - Las APIs autentican las solicitudes usando firmas de wallet
Validación de contenido
Verificación de firmas - Todos los despliegues firmados por wallet
Propiedad del puntero - Solo el propietario del LAND puede desplegar en coordenadas
Límites de tamaño - El tamaño del contenido está restringido por el recuento de parcelas
Control de acceso
Tokens con tiempo limitado - Tokens JWT y LiveKit expiran
Limitación de tasa - Límites de tasa de API por IP/usuario
Protección DDoS - Red distribuida de Catalyst
Enfoque de escalabilidad
Escalado horizontal
Nodos Catalyst - Añadir nodos a medida que crece el contenido
Servicios backend - Microservicios stateless escalan de forma independiente
Islas - Las comunicaciones se dividen en grupos basados en proximidad
Optimización
Paquetes de assets - Assets optimizados para la plataforma (Unity bundles)
CDN - Assets estáticos servidos vía CDN
Caché - Caché agresiva en todas las capas
Indexadores - Datos de blockchain almacenados en caché en bases de datos rápidas
Siguientes pasos
Profundiza en áreas arquitectónicas específicas:
Servicios backend - Especificaciones detalladas de servicios e integraciones
Catalyst Network - Entrega y despliegue de contenido
Infraestructura - Sistemas de soporte y servicios de terceros
Recursos adicionales
Referencia de API - Documentación completa de la API
Guías para contribuidores - Estándares de desarrollo
Organización en GitHub - Repositorios de código fuente
Última actualización